TextChannel
*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.
Representa um canal de chat de texto. Contém TextSources como descendentes.
Para enviar uma mensagem de bate-papo para o TextChannel , chame TextChannel:SendAsync() de um LocalScript .O correspondente TextSource do usuário com TextSource.CanSend = true deve estar nesse canal.
Mensagens de diferentes Canais de Texto podem ser separadas em diferentes abas na janela de chat usando ChannelTabsConfiguration .
Para saber mais, veja Chat de Texto na Experiência.
Resumo
Propriedades
O TextChannel apenas entregará mensagens a usuários que possam enviar mensagens diretas para o DirectChatRequester.
Métodos
Exibe uma mensagem do sistema para o usuário.
Define o DirectChatRequester para o TextChannel. O TextChannel só entregará mensagens a usuários que possam enviar mensagens diretas para o DirectChatRequester.
Adiciona um TextSource ao TextChannel dado ID de um Player .
Envia um TextChatMessage para o servidor.
Eventos
Dispara quando é invocado no cliente ou quando o cliente recebe uma resposta válida de do servidor.
Callbacks
Chamado quando TextChannel estiver recebendo uma mensagem recebida.
Chamado para cada cliente quando TextChannel estiver recebendo uma mensagem recebida para determinar se deve ou não ser entregue a esse cliente.
Propriedades
DirectChatRequester
O TextChannel apenas entregará mensagens a usuários que possam enviar mensagens diretas para o DirectChatRequester. Esta propriedade só pode ser definida usando SetDirectChatRequester().
Métodos
DisplaySystemMessage
Exibe uma mensagem do sistema para o usuário.Só pode ser usado em um LocalScript , ou em um Script com RunContext de Enum.RunContext.Client .Mensagens são visíveis apenas para esse usuário e não são automaticamente filtradas ou localizadas.
Parâmetros
A mensagem do sistema enviada para o TextChannel.
Use para identificar tipos de mensagem do sistema, como as mensagens padrão do sistema.
Devolução
Um TextChatMessage com propriedade TextChatMessage.Status que indica a condição da mensagem.
SetDirectChatRequester
Define o DirectChatRequester para o TextChannel. Este método está disponível apenas para uso em scripts de servidor.
Use esta API se você estiver trabalhando com TextChatService e tiver uma implementação personalizada de chat direto fora dos canais de texto padrão.
Quando chamado em um TextChannel que é pai de TextChatService e não tem nenhum TextSources existente, SetDirectChatRequester adiciona os usuários solicitados como um TextSource e define a propriedade DirectChatRequester para o canal.
Quando DirectChatRequester é configurar, apenas mensagens entre usuários que podem direcionar o bate-papo com o DirectChatRequester são entregues.
local function createWhisperChannel(fromPlayer, toPlayer)
local whisperChannel = Instance.new("TextChannel")
whisperChannel:SetDirectChatRequester(fromPlayer)
whisperChannel:AddUserAsync(toPlayer.UserId)
-- A instância do TextChannel agora tem duas instâncias de TextSource.
return whisperChannel
end
Parâmetros
Devolução
AddUserAsync
Adiciona um TextSource ao TextChannel dado ID do usuário (com Player.UserId ). Só pode ser usado em um Script .
Se um TextSource representando o usuário não existe, isso adiciona um TextSource .
Se um TextSource representando o usuário existe, isso retorna o TextSource.
Se o usuário estiver com o bate-papo desligado ou não estiver no servidor, isso retorna um tuple nil, false.
Parâmetros
Devolução
Retorna TextSource e true se um novo TextSource for criado para o usuário, TextSource e false se houver um existente TextSource ou nil e false se o usuário tiver o chat desligado ou não estiver neste servidor.
SendAsync
Envia um TextChatMessage para o servidor. Só pode ser usado em um LocalScript ou em um Script com RunContext de Enum.RunContext.Client .
Parâmetros
A mensagem para enviar ao TextChannel .
Metadados personalizados para anexar à mensagem.
Devolução
Um TextChatMessage com propriedade TextChatMessage.Status que indica a condição da mensagem.
Eventos
MessageReceived
Como TextChatService.MessageReceived , dispara quando TextChannel:DisplaySystemMessage() é invocado no cliente ou quando o cliente recebe uma resposta válida de TextChannel:SendAsync() do servidor.Este evento só é disparado no cliente.
Se a propriedade do servidor TextChannel.ShouldDeliverCallback estiver vinculada e retornar false, o cliente não disparará TextChannel.MessageReceived.
Use o parâmetro TextChatMessage para obter o TextSource e o texto da mensagem (com TextChatMessage.Text).
O parâmetro TextChatMessage é o resultado final de qualquer função vinculada a TextChatService.OnIncomingMessage ou TextChannel.OnIncomingMessage.
Parâmetros
O recebido TextChatMessage .
Callbacks
OnIncomingMessage
Chamado quando TextChannel estiver recebendo uma mensagem recebida. Só pode ser implementado no cliente.
Use isso para decorar TextChatMessages .Se este retorno de chamada retornar um TextChatMessageProperties, essas propriedades são mescladas com o parâmetro TextChatMessage para criar um novo TextChatMessage.
Quando vinculado ao cliente que envia uma mensagem, este retorno de chamada é executado duas vezes; primeiro quando a mensagem é inicialmente enviada e recebida localmente e novamente quando o cliente recebe o resultado da mensagem filtrada do servidor.
TextChannel.OnIncomingMessage chamadas de retorno sempre executam após a chamada de retorno TextChatService.OnIncomingMessage.
Isso deve ser definido apenas uma vez a cada TextChannel no código de origem.Múltiplas vinculações ao mesmo canal substituirão umas às outras de maneira não determinista.
Quando TextChatService:CreateDefaultTextChannels() é verdadeiro, esses padrões padrão TextChannels têm seus TextChannel.OnIncomingMessage retornos de chamada atribuídos internamente para exibir comportamento padrão especial.
Parâmetros
O recebido TextChatMessage .
Devolução
Se um TextChatMessageProperties for retornado, essas propriedades são mescladas com o parâmetro TextChatMessage para criar um novo TextChatMessage com essas propriedades.
ShouldDeliverCallback
Chamado para cada cliente quando TextChannel estiver recebendo uma mensagem recebida para determinar se deve ou não ser entregue a esse cliente.Só pode ser definido no servidor.
Uma vez definido, este retorno de chamada precisa retornar um valor verdadeiro, como true , 1 ou "hello" para entregar a mensagem ao cliente dito.Se o retorno de chamada retornar qualquer outra coisa (incluindo nil ), a mensagem não será entregue a esse cliente, embora o remetente veja a mensagem independentemente.
O remetente pode ser referenciado por TextChatMessage.TextSource , enquanto o receptor é o argumento textSource.Observe que o remetente e o receptor podem ser os mesmos, pois o retorno de chamada itera por todos os receptores possíveis.No Roblox Studio, você será o único remetente e receptor de uma mensagem enquanto estiver no modo solo Jogar .
Parâmetros
A mensagem sendo enviada, que também contém o remetente da mensagem.
O TextSource do usuário que receberá a mensagem.