How to filter text without a player?

I’m trying to write a bug report system
but when retrieving the reports I can’t filter them because the player who reported it isn’t in game.

TextService:FilterStringAsync() of course won’t let me filter it without a player / the player being on the server

I could filter it before storing it, and simply not filter it after retrieving it.

But Roblox did say:


I’m not sure if that means “recommended” or “required” and I’d rather not find out the hard way

Consider using GetNonChatStringForBroadcastAsync. It does not need a target user ID.

the problem isn’t the target UserId, (wouldn’t that just be the player who views the report?)
the problem is the sender ID, which TextService:FilterStringAsync() still requires

1 Like

My bad. Maybe using an external tool for filtering text just like the Roblox chat might work but the issue might be the fact that it might be illegal.

Filter the strings on people’s clients after taking them out of the data stores

When adding the message to the datastore, also add the player’s id to it.

but then that wouldn’t be the player who sent it?
Is that allowed?

Ideally, you need to filter the text BEFORE inserting it into a DataStore.

Afterwards, you can later filter it (this is still required) by using a random player in the server for FilterStringAsync(string, RandomPlayer, Enum.TextFilterContext.PublicChat); Afterwards, use the GetNonChatStringForBroadcastAsync() method to get the compliant string (It returns the version of the string that is safe for ALL users.)