"TextChatService is not enabled" error occurs when calling AddUserAsync even though ChatVersion is set to TextChatService

I’m working on a recreation of the legacy chat system interface that uses TextChatService. In the process of trying to create a TextChannel for a whisper, I found that the AddUserAsync call always fails in this scenario with the following error:

System Information: AMD Ryzeb 7 3600X 8-Core Processor, 32 GB, AMD Radeon RX 6700 XT
Enabled Beta Features: Dragger QoL Improvements, Face Capture, Live Animation Creator, Updated Roblox Controls
Legacy chat rewrite.rbxl (118.3 KB)

Expected behavior

I expect AddUserAsync to add a TextSource to the TextChannel as described in the API documentation.

3 Likes

Update: Immediately found the cause of this error after posting; creating a TextChannel and calling AddUserAsync before parenting it to TextChannels will cause this error. Still leaving the post up as the error message is inaccurate.

3 Likes

This is just an acknowledgment announcement!

We’ve filed a ticket into our internal database for this issue, and we will update you when we have further information!

Thanks for the report!

1 Like

This is occurring again.

We (THA) wrote and open-sourced Custom Chat UI on top of TextChatService to bypass all issues with the ROBLOX Default that have yet to be patched.

The open-source module is 95% of the code, but now we aren’t even able to use it sometimes. That of which is entirely due to this same error.

Here is the function that is being called:

This is where it’s being called:

Please can you check to see if this bug has been fixed @focia19 - It’s disheartening that even with what was proven to be a working open-source solution, we still can’t escape ROBLOX’s issues.


Context: We found this can happen regardless of when the channel is parented if the calling ModuleScript and called ModuleScript are loaded too closely together. We had to change the loading process of our ModuleScript AssetService to be in the list of Core services, instead of regular services for our game systems.

It seems to be reliant on when things load in for us.