Hey! I’m currently in process of building a trello ban system. I want my staff members to be able to enter the reason that they were banned.
So far, i’ve planned out to where when they write in the reason on the GUI, i use FilterStringAsync to filter the message that the staff member sent, and then GetChatForUserAsync to filter it further for the person being banned. But there’s a catch.
I want my staff members to also be able to view the trello, see reasons, and add trello cards with reasons manually. How would I filter this message for the moderator and target without violation TOS, and be able to have all my staff view the reason? I’ve been thinking about using FilterStringForBroadcast, but am not sure and do not want to risk anything.
I also would like to know if there is a way to create timed bans. (Ex: 6 hours, it adds the card, waits 6 hours, and removes the card. I know this isn’t related to the title but I wasn’t sure if I should create an entire new topic.)
If the cards sent from Roblox have been filtered, then you should be fine for the staff to view it on Trello. If you are adding a card on Trello that will show information to the game, you should filter it on retrieval. Perhaps add some sort of label or tag to manual bans to make sure that the game filters them?
I’m not well versed at how comprehensive Roblox’s HttpService is, but you might want to see if you can put something together with Butler. For example, set the due date as to when the person is unbanned, then archive the card whenever the due date has passed.
Alright, thanks for the speedy response.
But regarding the cards on trello, should i need to filter with FilterStringForBroadcast? Or the other way I mentioned? I’m kind of confused since if I need to filter the other way I need to log the person that banned them and etc?
Assuming you aren’t pushing tons (and by tons I mean tons) of cards at once, you should be fine. Trello limits you to 300 requests per 10 seconds per API key. Roblox limits you to 500 requests on HttpService per minute. There is no feasible way I see you having this many bans in one minute.
Ok thanks, I was actually planning on doing logging on trello as well so, good to know. Do you believe there would be any moderation taken against me if I did go over that rate? (Ex. Ban, Warning, etc?) Sorry if im repetitive im just worried I might accidentally do something wrong and risk my account.
Worst case scenario, I believe you’d just get rate-limited, and unable to send requests while the limit was in place. They’d effectively just prevent you from sending requests till the rate-limit expired (not sure how long they last). However, I am not super familiar with sending requests, and have never actually worked with anyone who’s exceeded the limit, so I might ask around and at least make sure what I’m telling you is 100% correct.
For red, you should probably use FilterStringForBroadcast, since it is going out to an undetermined number of non-developer people.
For purple, assuming that you keep track of who bans who, you should ideally use GetChatForUserAsync to make the filtering consistent with the rules for each person.
Blue doesn’t require filtering, because it doesn’t necessarily leave Trello. If it does go to Roblox, it will be filtered in purple.
EDIT: Note that these are just my personal interpretations of the rules and do not guarantee that you are immune from moderation action.