TextChannel

Veraltete anzeigen

*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.

Repräsentiert einen Text-Chat-Kanal. Enthält TextSources als Nachkommen.

Um eine Chat-Nachricht an die TextChannel zu senden, rufe TextChannel:SendAsync() von einem LocalScript an.Das entsprechende TextSource des Benutzers mit TextSource.CanSend = true muss in diesem Kanal sein.

Nachrichten aus verschiedenen Textkanälen können in verschiedenen Tabs im Chat-Fenster mit ChannelTabsConfiguration getrennt werden.

Um mehr zu erfahren, siehe In-Experience-Text-Chat.

Zusammenfassung

Eigenschaften

  • Schreibgeschützt
    Nicht repliziert
    Parallel lesen

    Die TextChannel wird nur Nachrichten an Benutzer senden, die direkte Nachrichten an die DirectChatRequester senden können.

Methoden

Ereignisse

Callbacks

Eigenschaften

DirectChatRequester

Schreibgeschützt
Nicht repliziert
Parallel lesen

Die TextChannel wird nur Nachrichten an Benutzer senden, die direkte Nachrichten an die DirectChatRequester senden können. Diese Eigenschaft kann nur mit SetDirectChatRequester() festgelegt werden.

Methoden

DisplaySystemMessage

Zeigt eine Systemnachricht an den Benutzer an.Kann nur in einem LocalScript verwendet werden oder in einem Script mit RunContext von Enum.RunContext.Client.Nachrichten sind nur für diesen Benutzer sichtbar und werden nicht automatisch gefiltert oder lokalisiert.

Parameter

systemMessage: string

Die Systemnachricht, die an die TextChannel gesendet wurde.

Standardwert: ""
metadata: string

Verwenden, um Systemnachrichtentypen zu identifizieren, wie die Standard-Systemnachrichten.

Standardwert: ""

Rückgaben

Ein TextChatMessage mit der Eigenschaft TextChatMessage.Status, die die Bedingung der Nachricht anzeigt.

SetDirectChatRequester

()

Legt das DirectChatRequester für die TextChannel fest. Diese Methode ist nur für die Verwendung in Server-Skripts verfügbar.

Verwende diese API, wenn du mit TextChatService arbeitest und eine benutzerdefinierte Implementierung von Direktchat außerhalb der Standardtextkanäle hast.

Wenn auf ein TextChannel aufgerufen wird, das einem TextChatService zugewiesen ist und keine vorhandenen TextSources hat, fügt SetDirectChatRequester die angeforderten Benutzer als TextSource hinzu und legt die Eigenschaft DirectChatRequester für den Kanal fest.

Wenn DirectChatRequester festlegenist, werden nur Nachrichten zwischen Benutzern geliefert, die den Chat mit dem DirectChatRequester leiten können.


local function createWhisperChannel(fromPlayer, toPlayer)
local whisperChannel = Instance.new("TextChannel")
whisperChannel:SetDirectChatRequester(fromPlayer)
whisperChannel:AddUserAsync(toPlayer.UserId)
-- Die TextChannel-Instanz hat jetzt zwei TextSource-Instanzen.
return whisperChannel
end

Parameter

requester: Player
Standardwert: ""

Rückgaben

()

AddUserAsync

Angehalten

Fügt einem TextSource dem gegebenen Benutzer-ID (mit TextChannel) einen Player.UserId hinzu. Kann nur in einem Script verwendet werden.

Wenn ein TextSource repräsentiert den Benutzer nicht existiert, fügt dies ein TextSource hinzu.

Wenn ein TextSource der den Benutzer darstellt existiert, gibt dies die TextSource zurück.

Wenn der Benutzer keinen Chat hat oder nicht auf dem Server ist, gibt dies eine Tuplizität nil zurück, false.

Parameter

userId: number

Die ID des Player .

Standardwert: ""

Rückgaben

Gibt TextSource und true zurück, wenn für den Benutzer ein neuer TextSource erstellt wird, TextSource und false wenn es einen bestehenden TextSource gibt, oder nil und false wenn der Benutzer Chat deaktiviert hat oder nicht auf diesem Server ist.

Angehalten

Sendet eine TextChatMessage an den Server. Kann nur in einem LocalScript verwendet werden oder in einem Script mit RunContext von Enum.RunContext.Client.

Parameter

message: string

Die Nachricht, die an die TextChannel gesendet werden soll.

Standardwert: ""
metadata: string

Benutzerdefinierte Metadaten, die an die Nachricht angehängt werden.

Standardwert: ""

Rückgaben

Ein TextChatMessage mit der Eigenschaft TextChatMessage.Status, die die Bedingung der Nachricht anzeigt.

Ereignisse

MessageReceived

Wie TextChatService.MessageReceived, feuert, wenn TextChannel:DisplaySystemMessage() auf dem Client aufgerufen wird, oder wenn der Client eine gültige TextChannel:SendAsync()-Antwort vom Server erhält.Dieses Ereignis wird nur auf dem Client ausgelöst.

Wenn die Eigenschaft des Servers TextChannel.ShouldDeliverCallback gebunden ist und false zurückgibt, feuert der Client nicht TextChannel.MessageReceived ab.

Verwende den TextChatMessage-Parameter, um die TextSource- und den Text der Nachricht zu erhalten (mit TextChatMessage.Text).

Der -Parameter ist das endgültige Ergebnis jeder Funktionen, die an oder gebunden sind.

Parameter

incomingMessage: TextChatMessage

Die empfangene TextChatMessage .


Callbacks

OnIncomingMessage

Aufgerufen, wenn TextChannel eine eingehende Nachricht empfängt. Kann nur auf dem Client implementiert werden.

Verwende dies, um TextChatMessages zu dekorieren.Wenn dieser Rückruf eine TextChatMessageProperties zurückgibt, werden diese Eigenschaften mit dem TextChatMessage -Parameter zusammengeführt, um eine neue TextChatMessage zu erstellen.

Wenn es mit dem Client verbunden ist, der eine Nachricht sendet, wird dieser Rückruf zweimal ausgeführt; zuerst, wenn die Nachricht ursprünglich lokal gesendet und empfangen wird, und wieder, wenn der Client das Ergebnis der gefilterten Nachricht vom Server erhält.

TextChannel.OnIncomingMessage rückrufe laufen immer nach dem TextChatService.OnIncomingMessage callback.

Dies sollte nur einmal pro TextChannel im Codesdefiniert werden.Mehrere Bindungen an denselben Kanal werden sich gegenseitig in einer nicht deterministischen Weise überschreiben.

Wenn wahr ist, werden diese Standard---Callbacks intern zugewiesen, um ein spezielles Standardverhalten zu zeigen.

Parameter

Die eingehende TextChatMessage .


Rückgaben

Wenn ein TextChatMessageProperties zurückgegeben wird, werden diese Eigenschaften mit dem TextChatMessage -Parameter zusammengeführt, um ein neues TextChatMessage mit diesen Eigenschaften zu erstellen.

ShouldDeliverCallback

Für jeden Client aufgerufen, wenn TextChannel eine eingehende Nachricht empfängt, um zu bestimmen, ob sie an diesen Client übermittelt werden soll oder nicht.Kann nur auf dem Server definiert werden.

Sobald definiert, muss dieser Rückruf einen wahren Wert wie true, 1 oder "hello" zurückgeben, um die Nachricht an den angegebenen Client zu liefern.Wenn der Rückruf etwas anderes zurückgibt (einschließlich nil ), wird die Nachricht an diesen Client nicht geliefert, obwohl der Sender die Nachricht trotzdem sieht.

Der Absender kann durch TextChatMessage.TextSource referenziert werden, während der Empfänger das textSource Argument ist.Beachten Sie, dass der Absender und der Empfänger dasselbe sein können, da der Rückruf durch alle möglichen Empfänger iteriert.In Roblox Studio bist du der einzige Absender und Empfänger einer Nachricht im Solo- Spiel -Modus.

Parameter

Die Nachricht, die gesendet wird, die auch den Absender der Nachricht enthält.

textSource: TextSource

Das TextSource des Benutzers, der die Nachricht empfangen wird.


Rückgaben