跳转至

消息

Hive 聊天功能支持 频道消息发送,可以向用户参与的频道发送消息,以及 1:1 消息发送,可以直接向特定个人发送消息。

频道消息发送

要向用户参与的频道发送消息,请创建一个 ChannelSendMessageParams 对象,然后将其作为参数传递给 Chat 类的 sendMessage() 方法以调用它。

通道发送消息参数

字段名称 描述 类型 必需
channelId 发送频道消息的频道 ID 字符串
message 发送到频道的消息
(最多 200 个字符)
字符串

这是一个示例代码,用于向用户参与的频道发送消息。

using hive;

ChannelSendMessageParams channelSendMessageParams = new ChannelSendMessageParams();
channelSendMessageParams.channelId = "CHANNEL_ID";
channelSendMessageParams.message = "你好 Hive";

Chat.sendMessage(channelSendMessageParams);
#include <HIVE_SDK_Plugin/HIVE_CPP.h>
using namespace hive;

ChannelSendMessageParams params;
params.channelId = "CHANNEL_ID";
params.message = "你好 Hive";

Chat::sendMessageWithChannelSendMessageParams(params, [=](ResultAPI const & result) {
    if (result.isSuccess()) {
        // API Call Success
    }
});
import com.hive.Chat;
import com.hive.ResultAPI;

val params = Chat.ChannelSendMessageParams(
    channelId = "CHANNEL_ID",
    message = "你好 Hive"
)
Chat.sendMessage(params)
import com.hive.Chat;

Chat.ChannelSendMessageParams params = new Chat.ChannelSendMessageParams(
    "CHANNEL_ID",
    "Hello Hive"
);

Chat.sendMessage(params);
import HIVEService

let params = HiveChatParams.ChannelSendMessageParams(
    channelId = "CHANNEL_ID",
    message = "Hello Hive"
)
ChatInterface.sendMessage(params)
#import "HIVEService.h"

HiveChatChannelSendMessageParams* sendMessageParams = [[HiveChatChannelSendMessageParams alloc] init];
sendMessageParams.channelId = "CHANNEL_ID";
sendMessageParams.message = "你好 Hive";

[HiveChat sendMessageWithChannelSendMessageParams:sendMessageParams handler:nil];

渠道消息事件管理

发送的消息可以通过addChannelListener事件的onChannelMessage事件处理程序接收。有关事件处理的更多详细信息,请参阅事件管理 > 通道事件文档。

1:1 消息发送

要向特定收件人发送直接消息,用户创建一个 DirectSendMessageParams 对象,然后将其作为参数传递给 Chat 类的 sendMessage() 方法。

直接发送消息参数

字段名称 描述 类型 必需
toPlayerId 目标用户的Hive玩家ID long Y
message 要发送到频道的消息
(最多200个字符)
string Y

以下是一个示例代码,用于用户向特定收件人发送直接消息。

using hive;

DirectSendMessageParams directSendMessageParams = new DirectSendMessageParams();
directSendMessageParams.toPlayerId = 12345678;
directSendMessageParams.message = "你好 Hive";

Chat.sendMessage(directSendMessageParams);
import com.hive.Chat;
import com.hive.ResultAPI;

val params = Chat.DirectSendMessageParams(
    toPlayerId = 12345678,
    message = message
)

Chat.sendMessage(params)
#include <HIVE_SDK_Plugin/HIVE_CPP.h>
using namespace hive;

DirectSendMessageParams params;
params.toPlayerId = 12345678;
params.message = "Hello Hive";

Chat::sendMessageWithDirectSendMessageParams(params);
import com.hive.Chat;

Chat.DirectSendMessageParams params = new Chat.DirectSendMessageParams(
        12345678,
        "Hello Hive"
);

Chat.sendMessage(params);
import HIVEService

let params = HiveChatParams.DirectSendMessageParams(toPlayerId: Int64(12345678), message: "Hello Hive")

ChatInterface.sendMessage(sendMessageParams: params)
#import "HIVEService.h"

HiveChatDirectSendMessageParams* sendMessageParams = [[HiveChatDirectSendMessageParams alloc] init];
sendMessageParams.toPlayerId = 12345678;
sendMessageParams.message = "你好 Hive";

[HiveChat sendDirectMessageWithSendMessageParams:sendMessageParams handler:nil];

1:1 消息事件管理

通过1:1消息传输发送的消息可以通过addDirectMessageListener事件处理程序onDirectMessage事件接收。有关详细的事件处理方法,请参阅事件管理 > 1:1消息事件文档。