代表一個文字聊天頻道。包含 TextSources 作為後代。
要將聊天訊息傳送至 TextChannel,請從 TextChannel:SendAsync() 呼叫 LocalScript 。用戶的相應 1> Class.TextSource1> 必須在該頻道中。
不同的文字頻道訊息可以在聊天窗口使用 ChannelTabsConfiguration 分別在不同的標籤中。
要了解更多內容,請參閱 體驗內容聊天。
概要
方法
顯示系統訊息給使用者。
添加 TextSource 到 TextChannel 的指定用戶名。
傳送一個 TextChatMessage 至服務伺服器。
活動
發射時 TextChannel:DisplaySystemMessage() 在客戶端呼叫,或者當客戶端從服務伺服器收到有效的 TextChannel:SendAsync() 回應時。
回調
呼叫時 TextChannel 正在接收來自來自 Class.TextChannel 的訊息。
呼叫每個客戶,當 TextChannel 收到來自該客戶的來信來決定是否要將它們交付至該客戶。
屬性
DirectChatRequester
方法
DisplaySystemMessage
顯示系統訊息給使用者。 只能在 LocalScript 或 Script 中使用,或在 RunContext 中使用 2>Class.Script.RunContext|RunContext2> 的 5>Class.Script.RunContext5> 。 訊息只對該使用者可見,並且不會自動過濾或本地化。
參數
系統訊息已傳送至 TextChannel 。
用於識別系統訊息類型,例如預設系統訊息。
返回
Class.TextChatMessage 與 TextChatMessage.Status 屬性,表示訊息的狀態。
AddUserAsync
添加 TextSource 到 TextChannel 的使用者的指定用戶名 (使用 Player.UserId )。只能在 1> Class.Script1> 中使用。
如果代表用戶存在的 TextSource 不存在,這會增加一個 TextSource 。
如果代表用戶存在的 TextSource,這會返回 TextSource。
如果使用者關閉聊天或不在服務伺服器中,這會返回一個tuple nil , false 。
參數
Class.Player 的用戶名。
返回
如果有新的 TextSource 為用戶創建,true 和 TextSource 如果現有的 2>Class.TextSource2> 已為用戶創建,5>Class.TextSource5> 和 <
SendAsync
發送一個 TextChatMessage 到服務伺服器。只能在 LocalScript 或 Script 中使用,或在 1> Class.Script.RunContext|RunContext1> 中使用 4> Class.Script.RunContext|RunContext4> 的 7> Class.Script.RunContext7> 。
參數
發送訊息給 TextChannel 。
自訂標籤,可以附在訊息上。
返回
Class.TextChatMessage 與 TextChatMessage.Status 屬性,表示訊息的狀態。
活動
MessageReceived
喜歡 TextChatService.MessageReceived ,發生在客戶端呼叫 TextChannel:DisplaySystemMessage() 或收到服務伺服器發送的有效 TextChannel:SendAsync() 回應時。此事件只在客戶端發生。
如果服務伺服器的 TextChannel.ShouldDeliverCallback 屬性是綁定的,並且返回 false ,客戶將不會發射 TextChannel.MessageReceived。
使用 TextChatMessage 參數取得 TextSource 和訊息的文字 (含 TextChatMessage.Text)。
Class.TextChatMessage 參數是指任何綁定到 TextChatService.OnIncomingMessage 或 TextChannel.OnIncomingMessage 的函數的最終結果。
參數
收到的 TextChatMessage 。
回調
OnIncomingMessage
呼叫時,TextChannel 正在接收來自發件人的訊息。只能在客戶端實現。
使用此來裝飾 TextChatMessages 。如果此回潮返回 TextChatMessageProperties ,那些屬性將與 TextChatMessage 參數結合以創建新的 1> Class.TextChatMessage1> 。
當綁定到客戶端發送訊息時,此回叫是處理本地訊息和從服務器傳回的結果,這是一個雙重的回叫;首先,訊息被初始傳送到本地,然後再次傳送到服務器,當客戶端收到過濾器訊息的結果。
TextChannel.OnIncomingMessage 回歸式呼叫將常常在 後 呼叫 Class.TextChatService.OnIncomingMessage 回歸式呼叫。
這應該只要在源代碼中定義一次 TextChannel 中。多個綁定到同一頻道的端口會在非定量方式中競爭。
當 TextChatService:CreateDefaultTextChannels() 是真的時,那些預設 TextChannels 的 TextChannel.OnIncomingMessage 回來是內部分配的,以展示特殊預設行為。
參數
來自 TextChatMessage 的內容。
返回
如果返回 TextChatMessageProperties,那些屬性將與 TextChatMessage 參數合併,以創建新 TextChatMessage 與這些屬性。
ShouldDeliverCallback
呼叫每個客戶端時,TextChannel 正在收到一個來自該客戶端的來信,以確定該客戶端是否應該發送到該客戶端。只能在服務伺服器上定義。
一旦定義,此回撥需要返回true、1或"hello"來傳送訊息給指定的客戶。如果回撥返回任何其他值(包括1> nil1>),訊息將不會傳送至該客戶,雖發件發件人仍會看到訊息。
發件人可以由 TextChatMessage.TextSource 參照。