メッセージ¶
Hive チャット機能は、ユーザーが参加しているチャンネルにメッセージを送信するためのチャンネルメッセージ送信と、特定の個人に直接メッセージを送信するための1:1メッセージ送信をサポートしています。
チャンネルメッセージ送信¶
ユーザーが参加しているチャンネルにメッセージを送信するには、ChannelSendMessageParamsオブジェクトを作成し、それをChatクラスのsendMessage()メソッドに引数として渡して呼び出します。
チャンネル送信メッセージパラメータ¶
| フィールド名 | 説明 | タイプ | 必須 | 
|---|---|---|---|
| channelId | チャンネルメッセージを送信するためのチャンネルID | string | Y | 
| message | チャンネルに送信するメッセージ (最大200文字) | string | Y | 
これは、ユーザーが参加しているチャンネルにメッセージを送信する例のコードです。
#include "HiveChat.h"
FHiveChatChannelSendMessageParams ChannelSendMessageParams;
ChannelSendMessageParams.ChannelId = TEXT("CHANNEL_ID");
ChannelSendMessageParams.Message = TEXT("こんにちはハイブ");
    ChannelSendMessageParams.ExtraData = TEXT("EXTRA_DATA");
FHiveChat::SendMessageWithChannelSendMessageParams(ChannelSendMessageParams, FHiveChatOnResultDelegate::CreateLambda([this](const FHiveResultAPI& Result) {
    if (Result.IsSuccess) {
        // API Call Success
    }
}));
#include <HIVE_SDK_Plugin/HIVE_CPP.h>
  using namespace hive;
ChannelSendMessageParams params;
params.channelId = "CHANNEL_ID";
params.message = "こんにちはハイブ";
    params.extraData = "EXTRA_DATA";
Chat::sendMessageWithChannelSendMessageParams(params, [=](ResultAPI const & result) {
    if (result.isSuccess()) {
        // API Call Success
    }
});
#import "HIVEService.h"
HiveChatChannelSendMessageParams* sendMessageParams = [[HiveChatChannelSendMessageParams alloc] init];
sendMessageParams.channelId = "CHANNEL_ID";
sendMessageParams.message = "こんにちはハイブ";
    sendMessageParams.extraData = "EXTRA_DATA";
[HiveChat sendMessageWithChannelSendMessageParams:sendMessageParams handler:nil];
チャンネルメッセージイベント管理¶
送信されたメッセージは、addChannelListenerイベントのonChannelMessageイベントハンドラーによって受信されることができます。イベント処理の詳細については、イベント管理 > チャンネルイベントドキュメントを参照してください。
1:1 メッセージ送信¶
特定の受信者にダイレクトメッセージを送信するには、ユーザーはDirectSendMessageParamsオブジェクトを作成し、それをChatクラスのsendMessage()メソッドに引数として渡します。
ダイレクト送信メッセージパラメータ¶
| フィールド名 | 説明 | タイプ | 必須 | 
|---|---|---|---|
| toPlayerId | 対象ユーザーのHiveプレイヤーID | long | Y | 
| message | 対象ユーザーに送信されるメッセージ (最大200文字) | string | Y | 
| extraData | 1:1メッセージ追加情報 最大256Bバイト(UTF-8に基づく) | string | N | 
以下は、ユーザーが特定の受取人にダイレクトメッセージを送信するためのサンプルコードです。
#include "HiveChat.h"
FHiveChatDirectSendMessageParams DirectSendMessageParams = FHiveChatDirectSendMessageParams();
DirectSendMessageParams.ToPlayerId = 12345678l;
DirectSendMessageParams.Message = TEXT("こんにちはハイブ");
    DirectSendMessageParams.ExtraData = TEXT("EXTRA_DATA");
FHiveChat::SendMessageWithDirectSendMessageParams(DirectSendMessageParams, FHiveChatOnResultDelegate::CreateLambda([this](const FHiveResultAPI& Result) {
    if (Result.IsSuccess) {
        // API Call Success
    }
}));
#import "HIVEService.h"
HiveChatDirectSendMessageParams* sendMessageParams = [[HiveChatDirectSendMessageParams alloc] init];
sendMessageParams.toPlayerId = 12345678;
sendMessageParams.message = "こんにちはハイブ";
    sendMessageParams.extraData = "EXTRA_DATA";
[HiveChat sendDirectMessageWithSendMessageParams:sendMessageParams handler:nil];
1:1 メッセージイベント管理¶
1:1メッセージ送信を通じて送信されたメッセージは、addDirectMessageListenerイベントハンドラーのonDirectMessageイベントを介して受信できます。詳細なイベント処理方法については、イベント管理 > 1:1メッセージイベントドキュメントを参照してください。