消息¶
Hive 聊天功能支持 频道消息发送,以向用户参与的频道发送消息,以及 1:1 消息发送,以直接向特定个人发送消息。
频道消息发送¶
要向用户参与的频道发送消息,请创建一个 ChannelSendMessageParams
对象,然后将其作为参数传递给 Chat 类的 sendMessage()
方法以调用它。
通道发送消息参数¶
字段名称 | 描述 | 类型 | 必需 |
---|---|---|---|
channelId | 发送频道消息的频道 ID | 字符串 | 是 |
message | 发送到频道的消息 (最多 200 个字符) | 字符串 | 是 |
这是一个示例代码,用于向用户参与的频道发送消息。
#include "HiveChat.h"
FHiveChatChannelSendMessageParams ChannelSendMessageParams;
ChannelSendMessageParams.ChannelId = TEXT("CHANNEL_ID");
ChannelSendMessageParams.Message = TEXT("你好 Hive");
FHiveChat::SendMessageWithChannelSendMessageParams(ChannelSendMessageParams, FHiveChatOnResultDelegate::CreateLambda([this](const FHiveResultAPI& Result) {
if (Result.IsSuccess) {
// API Call Success
}
}));
渠道消息事件管理¶
发送的消息可以被onChannelMessage
事件处理程序接收,该程序属于addChannelListener
事件。有关事件处理的更多详细信息,请参阅事件管理 > 通道事件文档。
1:1 消息发送¶
要向特定收件人发送直接消息,用户创建一个 DirectSendMessageParams
对象,然后将其作为参数传递给 Chat 类的 sendMessage()
方法。
直接发送消息参数¶
字段名称 | 描述 | 类型 | 必需 |
---|---|---|---|
toPlayerId | 目标用户的Hive玩家ID | long | Y |
message | 要发送到频道的消息 (最多200个字符) | string | Y |
以下是一个示例代码,用于用户向特定收件人发送直接消息。
#include "HiveChat.h"
FHiveChatDirectSendMessageParams DirectSendMessageParams = FHiveChatDirectSendMessageParams();
DirectSendMessageParams.ToPlayerId = 12345678l;
DirectSendMessageParams.Message = TEXT("你好 Hive");
FHiveChat::SendMessageWithDirectSendMessageParams(DirectSendMessageParams, FHiveChatOnResultDelegate::CreateLambda([this](const FHiveResultAPI& Result) {
if (Result.IsSuccess) {
// API调用成功
}
}));
1:1 消息事件管理¶
通过1:1消息传输发送的消息可以通过addDirectMessageListener
事件处理程序onDirectMessage
事件接收。有关详细的事件处理方法,请参阅事件管理 > 1:1消息事件文档。