콘텐츠로 이동

메시지

Hive 채팅 기능은 사용자가 참여한 채널에 메시지를 전송하는 채널 메시지 전송과, 특정 상대방에게 직접 메시지를 전송하는 1:1 메시지 전송 기능을 지원합니다.

채널 메시지 전송

사용자가 참여한 채널에 메시지를 전송하려면 ChannelSendMessageParams객체를 생성한 뒤, 이를 Chat 클래스 sendMessage() 메서드 인자로 전달해 호출합니다.

ChannelSendMessageParams

필드명 설명 타입 필수 여부
channelId 채널 메시지 전송할 채널 ID string Y
message 채널에 전송할 메시지
(최대 200자)
string Y

다음은 사용자가 참여한 채널에 메시지를 전송하는 예제 코드입니다.

using hive;

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

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

ChannelSendMessageParams params;
params.channelId = "CHANNEL_ID";
params.message = "Hello 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 = "Hello 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 = "Hello Hive";

[HiveChat sendMessageWithChannelSendMessageParams:sendMessageParams handler:nil];

채널 메시지 이벤트 관리

전송한 메시지는 addChannelListener 이벤트 핸들러 onChannelMessage이벤트로 수신할 수 있습니다. 자세한 이벤트 처리 방법은 이벤트 관리 > 채널 이벤트 문서를 참고하세요.

1:1 메시지 전송

사용자가 특정 상대방에게 직접 메시지를 전송하려면 DirectSendMessageParams객체를 생성한 뒤, 이를 Chat 클래스 sendMessage() 메서드 인자로 전달해 호출합니다.

DirectSendMessageParams

필드명 설명 타입 필수 여부
toPlayerId 대상 사용자의 Hive 플레이어 ID long Y
message 채널에 전송할 메시지
(최대 200자)
string Y

다음은 사용자가 특정 상대방에게 직접 메시지를 전송하는 예제 코드입니다.

using hive;

DirectSendMessageParams directSendMessageParams = new DirectSendMessageParams();
directSendMessageParams.toPlayerId = 12345678;
directSendMessageParams.message = "Hello 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 = "Hello Hive";

[HiveChat sendDirectMessageWithSendMessageParams:sendMessageParams handler:nil];

1:1 메시지 이벤트 관리

1:1 메시지 전송을 통해 전달된 메시지는 addDirectMessageListener 이벤트 핸들러 onDirectMessage이벤트를 통해 수신할 수 있습니다. 자세한 이벤트 처리 방법은 이벤트 관리 > 1:1 메시지 이벤트 문서를 참고하세요.