消息发送
介绍如何向频道发送消息。
公开消息发送
调用 ChatManager.Instance.SendPublicMessage() 方法向特定频道发送消息。发送的消息将传递给该频道的所有订阅者。
方法信息
| 项目 | 内容 |
|---|---|
| 方法 | ChatManager.Instance.SendPublicMessage(string channel, string text) |
| 回调 | OnPublicMessage(ChatUserInfo sender, string message) - 接收消息时调用 |
参数
| 参数 | 类型 | 说明 |
|---|---|---|
| channel | string | 发送消息的频道名称 |
| text | string | 要发送的消息内容 |
使用示例
using UnityEngine;
using UnityEngine.UI;
public class ChatExample : MonoBehaviour, IChatListener
{
public InputField _inputChat;
public Text _textView;
private string myChannel = "Default Channel";
public void SendMessage()
{
ChatManager.Instance.SendPublicMessage(myChannel, _inputChat.text);
_inputChat.text = "";
}
public void OnPublicMessage(ChatUserInfo sender, string message)
{
// 수신한 메시지에 금칙어 필터 적용
Debug.Log($"[{sender.visitorName}] {ChatManager.Instance.Filter(message)}");
_textView.text += $"\n[{sender.visitorName}] {ChatManager.Instance.Filter(message)}";
}
// ... 기타 IChatListener 메서드 구현
}
私密消息发送(私信)
调用 ChatManager.Instance.SendPrivateMessage() 方法仅向特定用户发送消息。
方法信息
| 项目 | 内容 |
|---|---|
| 方法 | ChatManager.Instance.SendPrivateMessage(string targetUserId, string text) |
| 回调 | OnPrivateMessage(ChatUserInfo sender, string message) - 接收消息时调用 |
参数
| 参数 | 类型 | 说明 |
|---|---|---|
| targetUserId | string | 接收消息的用户 ID |
| text | string | 要发送的消息内容 |
使用示例
using UnityEngine;
using UnityEngine.UI;
public class ChatExample : MonoBehaviour, IChatListener
{
public InputField _inputChat;
public void SendPrivateMessage()
{
string targetUserId = "string";
ChatManager.Instance.SendPrivateMessage(targetUserId, _inputChat.text);
}
public void OnPrivateMessage(ChatUserInfo sender, string message)
{
// 수신한 귓속말에 금칙어 필터 적용
Debug.Log($"[귓속말 from {sender.visitorName}] {ChatManager.Instance.Filter(message)}");
}
// ... 기타 IChatListener 메서드 구현
}