Custom chat systems must use the TextChatService API’s to send and receive messages. Forms of legacy chat are no longer allowed, as they do not use these new APIS’s. I’ve released a custom chat system myself OpenTextChatService - Open-Source Implementation of TextChatService. It’s fine to create a custom chat system so long as you use the new API’s. They filter messages appropriately but it is not up to you what is deemed a chat message. Chat messages can only be created via SendAsync.
That is not a chat message so it is fine to use the text filtering API for that. It is not ok to use the text filtering API for chat messages anymore.
Yeah, I know, I’m also very, very sure there is a specific method given by Roblox to also do the text service stuff, just giving a theoretical what if there wasn’t, and that it would still be allowed to filter messages with whatever filters Roblox does give.
And create an appropriate TextChannel to facilitate that messaging. Where the users use SendAsync (TextChatService filters the messages) and where both users must be present in the server. The same reason you can’t have message history is the same reason you can’t have offline messaging.
Wouldn’t it then only be against TOS if you did it incorrectly then? Just because you could do a horrible job at implementing it, doesn’t mean it’s not allowed to correctly implement it.
There is no way to correctly implement message history with the tools we currently have.
Why would we need a separate chat channel for this? This is simply recreating the message history feature that the legacy chat system offered, where when a player joins the game, any messages previously sent in chat (where those players are still in the game) will be visible to them.
I dunno how you came to that conclusion, but you worked insanely closely with chat systems, so you’d know more than me, so I won’t argue.
It’s fine to argue, discourse is good. To be fair, the information around TextChatService isn’t super easy to understand. It’s difficult to know what is ok and what is not and they haven’t been super helpful with addressing most of the communities questions. A lot of us are still waiting for them to add a offline messaging feature but there’s been little done to acknowledge that. I’m even starting to question what is and isn’t allowed, but based on what other people have said on this topic and the attached resource on this thread being moderated, I think it’s clear the stance that Roblox has taken on chat history. I was considering a way to implement chat history if the users who sent those messages are still in the server and you use the CanUsersChatAsync API. That solves one aspect of it, but you’d still run into the text filtering issue. I don’t think there is any correct way to implement chat history with TextChatService but I’d be glad to be proven wrong as I want this just as much as the next person.