TextChatService
A service handling in-experience text chat. TextChatService handles various text chat related tasks, such as managing channels, decorating messages, filtering text, creating commands, and developing custom chats interfaces.
To learn more about using TextChatService, see In-Experience Text Chat.
Summary
Properties
Determines whether to fully enable TextChatService or revert to the legacy chat system.
Determines whether TextChatService should create default TextChatCommands.
Determines whether TextChatService should create default TextChannels.
Methods
Displays a chat bubble above the provided part or character.
Events
Fires when TextChatService:DisplayBubble() is called.
Fires when a TextChannel:SendAsync() response is received by the server or TextChannel:DisplaySystemMessage() is invoked.
Fires when TextChannel:SendAsync() is called by the sending client.
Callbacks
Properties
ChatTranslationEnabled
ChatTranslationToggleEnabled
ChatVersion
Determines whether TextChatService should be fully enabled or to allow the legacy chat system. Setting to this property to ChatVersion.LegacyChatService effectively disables TextChatService.
CreateDefaultCommands
Determines whether TextChatService should create default TextChatCommands.
If true, the following TextChatCommands are created and put in a Folder named TextChatCommands inside TextChatService:
Name | PrimaryAlias | SecondaryAlias | Description | Usage Example |
---|---|---|---|---|
RBXConsoleCommand | console | Opens the Developer Console. | \console | |
RBXEmoteCommand | emote | e | Plays avatar emote. | \e dance |
RBXHelpCommand | help | ? | Shows a list of chat commands. | \help |
RBXMuteCommand | mute | m | Mutes a user by user's Player.Name or Player.DisplayName in all TextChannels. | \m Username |
RBXUnmuteCommand | unmute | um | Unmutes a user by user's Player.Name or Player.DisplayName in all TextChannels. | \um Username |
RBXVersionCommand | version | v | Shows the chat version. | \version |
Developers can edit, create, and remove TextChatCommands as even if TextChatService.CreateDefaultCommands is true.
Mute and unmute commands apply to all TextChannels.
CreateDefaultTextChannels
Determines whether TextChatService should create default TextChannels.
If true, Team based TextChannels are automatically created (and removed when Teams are removed), along with the following TextChannels in a Folder named TextChannels inside TextChatService:
Name | Description |
---|---|
RBXGeneral | For all messages. |
RBXSystem | For system messages. |
RBXTeam<BrickColor.Name> | For team messages. Name of the TextChannel is the string "RBXTeam" followed by the name of Team.BrickColor. (Ex: "RBXTeamNavy blue" for a team with "Navy blue" BrickColor) |
If false, Team based TextChannels are not automatically created and destroyed.
Developers can edit, create, and remove TextChannels even if TextChatService.CreateDefaultTextChannels is true.
Methods
DisplayBubble
Displays a chat bubble above the provided partOrCharacter. Can display bubbles for non-player characters (NPCs).
Fires the TextChatService.BubbleDisplayed event with the parameters specified in this method.
Parameters
The part or character that the bubble to be displayed above.
The text to be displayed in the chat bubble.
Returns
Events
MessageReceived
Only fired on the receiving client. when TextChannel:SendAsync() response is received by the server or TextChannel:DisplaySystemMessage() is invoked.
Use TextChatMessage parameter to get the TextSource and the text of the message (with TextChatMessage.Text).
The TextChatMessage parameter is the final result of any functions bound to TextChatMessage.OnIncomingMessage.
Parameters
The received TextChatMessage.
SendingMessage
Only fired on the sending client when TextChannel:SendAsync() is called by the sending client.
Use this to allow placeholder messages to be shown to the user while waiting for server response to TextChannel:SendAsync().
Parameters
The TextChatMessage from the TextChannel:SendAsync() call.