HIVE SDK for C++

HIVE_Chat.h
이 파일의 문서화 페이지로 가기
1
17#ifndef __HIVE_CHAT_H__
18#define __HIVE_CHAT_H__
19
20#include "HIVE_ResultAPI.h"
21#include <cstdint> // int64_t
22#include <functional> // std::function
23#include <map> // std::map
24#include <string> // std::string
25#include <vector> // std::vector
26#include <mutex>
27
28
29NS_HIVE_BEGIN
30
31class ResultAPI;
32enum class ChannelType;
33enum class SortType;
34class Channel;
35class ChannelPage;
36class Member;
37class BlockMember;
43class TranslateParams;
44class ChannelListener;
46class UserListener;
48class ChannelMessage;
50class DirectMessage;
51class EnteredMember;
52class ExitedMember;
53class DeletedChannel;
57class TranslationData;
58
72class HIVESDK_DLLEXPORT Chat {
73public:
74 // Callback types
75 typedef std::function<void(ResultAPI const & result)> onResult;
76 typedef std::function<void(ResultAPI const & result)> onCreateChannel;
77 typedef std::function<void(ResultAPI const & result)> onDeleteChannel;
78 typedef std::function<void(ResultAPI const & result)> onEnterChannel;
79 typedef std::function<void(ResultAPI const & result)> onExitChannel;
80 typedef std::function<void(ResultAPI const & result)> onBlockMember;
81 typedef std::function<void(ResultAPI const & result)> onUnblockMember;
82 typedef std::function<void(ResultAPI const & result)> onChannelTranslationSetting;
83 typedef std::function<void(ResultAPI const & result)> onConnect;
84 typedef std::function<void(ResultAPI const & result)> onDisconnect;
85 typedef std::function<void(ResultAPI const & result, std::vector<std::string> const & channelIds, std::vector<std::string> const & failChannelIds)> onReconnect;
86 typedef std::function<void(ResultAPI const & result, std::vector<Channel> const & channels, ChannelPage const & channelPage)> onGetChannels;
87 typedef std::function<void(ResultAPI const & result, Channel const & channel, std::vector<Member> const & members)> onGetChannelInfo;
88 typedef std::function<void(ResultAPI const & result, std::vector<Member> const & members)> onGetChannelMembers;
89 typedef std::function<void(ResultAPI const & result, std::vector<Channel> const & channels)> onGetChannelsByUser;
90 typedef std::function<void(ResultAPI const & result, std::vector<BlockMember> const & blockMembers)> onGetBlockMembers;
91 typedef std::function<void(ResultAPI const & result, ChannelSendMessageParams const & params)> onChannelSendMessage;
92 typedef std::function<void(ResultAPI const & result, DirectSendMessageParams const & params)> onDirectSendMessage;
93 typedef std::function<void(ResultAPI const & result, ChannelMessageListQueryResponse const & response)> onGetChannelMessageHistory;
94 typedef std::function<void(ResultAPI const & result, TranslationData const & translationData)> onTranslate;
95
96 // MARK: Channel APIs
114 static void createChannel(CreateChannelParams const & params, onCreateChannel listener);
115
133 static void getChannels(GetChannelsParams const * params, onGetChannels listener);
134
150 static void getChannelInfo(const char * channelId, onGetChannelInfo listener);
151
167 static void getChannelMembers(const char * channelId, onGetChannelMembers listener);
168
184 static void deleteChannel(const char * channelId, onDeleteChannel listener);
185
203 static void enterChannel(EnterChannelParams const & params, onEnterChannel listener);
204
220 static void exitChannel(const char * channelId, onExitChannel listener);
221
222 // MARK: User APIs
238 static void getChannelsByUser(onGetChannelsByUser listener);
239
257 static void getBlockMembers(onGetBlockMembers listener);
258
274 static void blockMember(int64_t blockPlayerId, onBlockMember listener);
275
291 static void unblockMember(int64_t blockPlayerId, onUnblockMember listener);
292
308 static void translate(TranslateParams const & params, onTranslate listener);
309
310 // MARK: Connection APIs
328 static void connect(const char * extraData, onResult listener);
329
345 static void connect(onConnect listener);
346
366 static void reconnect(onReconnect listener);
367
383 static void disconnect(onDisconnect listener);
384
385 // MARK: Message APIs
402
403 // MARK: Message APIs
419 static void sendMessageWithChannelSendMessageParams(ChannelSendMessageParams const & params, onChannelSendMessage listener);
420
437
453 static void sendMessageWithDirectSendMessageParams(DirectSendMessageParams const & params, onDirectSendMessage listener);
454
455 // MARK: Listener APIs
471 static void addChannelListener(const char * uniqueKey, ChannelListener* listener);
472
488 static void addDirectMessageListener(const char * uniqueKey, DirectMessageListener* listener);
489
505 static void addUserListener(const char * uniqueKey, UserListener* listener);
506
522 static void addConnectionListener(const char * uniqueKey, ConnectionListener* listener);
523
535 static void addCustomDataListener(const char * uniqueKey, CustomDataListener* listener);
536
550 static void removeChannelListener(const char * uniqueKey);
551
565 static void removeDirectMessageListener(const char * uniqueKey);
566
580 static void removeUserListener(const char * uniqueKey);
581
595 static void removeConnectionListener(const char * uniqueKey);
596
608 static void removeCustomDataListener(const char * uniqueKey);
609
610 // MARK: Socket Connected APIs
624 static bool isConnected();
625
626 static void executeEngine(picojson::value jsonParam);
627};
628
629// MARK: Common
635enum class ChannelType {
636 UNKNOWN,
637 PRIVATE,
638 PUBLIC,
639 GROUP
640};
641
647enum class SortType {
648 Unknown,
649 ChannelId,
650 ChannelName,
651 RegTime
652};
653
659class HIVESDK_DLLEXPORT Channel {
660public:
661 // 채널 ID / Channel ID
662 std::string channelId;
663 // 채널 타입 / Channel Type
664 ChannelType type;
665 // 채널 소유자 / Channel Owner
666 std::string owner;
667 // 채널명 / Channel Name
668 std::string channelName;
669 // 현재 채널 인원수 / Current Number of People in the Channel
670 int memberCount;
671 // 채널 최대 인원수 / Maximum Number of People in the Channel
672 int maxMemberCount;
673 // 채널 생성 시간 / Channel Creation Time
674 std::string regTime;
675 // 채널 생성 시간 UnixTime / Channel Creation UnixTime
676 int64_t regTimeMillis;
677 // 채널 메시지 조회 가능 여부 / Channel Message Query Availability
678 bool chatHistoryAllowed;
679
680 Channel();
681 bool parse(picojson::value const & json);
682 picojson::object toJson() const;
683 std::string toString() const;
684
685 void query(ChannelMessageListQueryParams const & params, Chat::onGetChannelMessageHistory listener) const;
686 void setTranslationEnabled(bool enabled, Chat::onChannelTranslationSetting listener) const;
687};
688
694class HIVESDK_DLLEXPORT ChannelPage {
695public:
696 // 페이지 크기 / Page Size
697 int size;
698 // 현재 페이지 / Current Page
699 int currentPage;
700 // 전체 채널 수 / Total Number of Channels
701 int totalElements;
702 // 전체 페이지 수 / Total Number of Pages
703 int totalPages;
704
705 ChannelPage();
706 bool parse(picojson::value const & json);
707 picojson::object toJson() const;
708};
709
715class HIVESDK_DLLEXPORT Member {
716public:
717 // 플레이어 ID / Player ID
718 int64_t playerId;
719 // 접속 시간 / Connection Time
720 std::string connectedTime;
721 // 접속 시간 UnixTime / Connection UnixTime
722 int64_t connectedTimeMillis;
723
724 Member();
725 bool parse(picojson::value const & json);
726 picojson::object toJson() const;
727};
728
734class HIVESDK_DLLEXPORT BlockMember {
735public:
736 // 차단된 사용자 ID / Blocked User ID
737 int64_t playerId;
738 // 차단 시간 / Blocked Time
739 std::string blockedTime;
740 // 차단 시간 UnixTime / Blocked UnixTime
741 int64_t blockedTimeMillis;
742
743 BlockMember();
744 bool parse(picojson::value const & json);
745 picojson::object toJson() const;
746};
747
748// MARK: Params
754class HIVESDK_DLLEXPORT CreateChannelParams {
755public:
756 // 채널 ID / Channel ID
757 std::string channelId;
758 // 비밀번호 / Password
759 std::string password;
760 // 채널명 / Channel Name
761 std::string channelName;
762 // 최대 인원수 / Maximum Number of People
763 int maxMemberCount;
764 // 채널 타입 / Channel Type
765 ChannelType type;
766 // 채널 메시지 조회 가능 여부 / Channel Message Query Availability
767 bool chatHistoryAllowed;
768
770 picojson::object toJson() const;
771 std::string toString() const;
772};
773
779class HIVESDK_DLLEXPORT GetChannelsParams {
780public:
781 // 채널 타입 / Channel Type
782 ChannelType type;
783 // 채널 ID / Channel ID
784 std::string channelId;
785 // 채널명 / Channel Name
786 std::string channelName;
787 // 정렬 타입 / Sort Type
788 SortType sort;
789 // 페이지 순서 (ASC, DESC) / Page Order (ASC, DESC)
790 std::string pageOrder;
791 // 페이지 크기 / Page Size
792 int pageSize;
793 // 페이지 번호 / Page Number
794 int pageNumber;
795
797 picojson::object toJson() const;
798 std::string toString() const;
799};
800
806class HIVESDK_DLLEXPORT EnterChannelParams {
807public:
808 // 채널 ID / Channel ID
809 std::string channelId;
810 // 비밀번호 / Password
811 std::string password;
812
814 picojson::object toJson() const;
815 std::string toString() const;
816};
817
823class HIVESDK_DLLEXPORT ChannelSendMessageParams {
824public:
825 // 채널 ID / Channel ID
826 std::string channelId;
827 // 메시지 / Message
828 std::string message;
829 // extraData
830 std::string extraData;
831
833 picojson::object toJson() const;
834 std::string toString() const;
835 bool parse(picojson::value const & json);
836};
837
843class HIVESDK_DLLEXPORT DirectSendMessageParams {
844public:
845 // 수신자 플레이어 ID / Receiver Player ID
846 int64_t toPlayerId;
847 // 메시지 / Message
848 std::string message;
849 // extraData
850 std::string extraData;
851
853 picojson::object toJson() const;
854 std::string toString() const;
855 bool parse(picojson::value const & json);
856};
857
863class HIVESDK_DLLEXPORT ChannelMessageListQueryParams {
864public:
865 // 페이지 당 항목 개수 / Number of Items per Page
866 int size;
867 // 메시지 index (없을 경우 가장 최신 메시지 조회) / Message Index (If not available, retrieve the most recent message)
868 std::string index;
869
871 picojson::object toJson() const;
872 std::string toString() const;
873};
874
875class HIVESDK_DLLEXPORT TranslateParams {
876public:
877 std::string message;
878 std::string sourceLanguage;
879 std::vector<std::string> targetLanguage;
880
881 TranslateParams();
882 picojson::object toJson() const;
883 std::string toString() const;
884};
885
886// MARK: Listener Message Classes
892class HIVESDK_DLLEXPORT EnteredMember {
893public:
894 // 채널 ID / Channel ID
895 std::string channelId;
896 // 플레이어 ID / Player ID
897 int64_t playerId;
898 // 입장 시간 / Join Time
899 std::string timestamp;
900 // 입장 시간 UnixTime / Join UnixTime
901 int64_t timestampMillis;
902
904 bool parse(picojson::value const & json);
905};
906
912class HIVESDK_DLLEXPORT ExitedMember {
913public:
914 // 채널 ID / Channel ID
915 std::string channelId;
916 // 플레이어 ID / Player ID
917 int64_t playerId;
918 // 퇴장 시간 / Exit Time
919 std::string timestamp;
920 // 입장 시간 UnixTime / Join UnixTime
921 int64_t timestampMillis;
922
923 ExitedMember();
924 bool parse(picojson::value const & json);
925};
926
932class HIVESDK_DLLEXPORT DeletedChannel {
933public:
934 // 채널 ID / Channel ID
935 std::string channelId;
936 // 삭제 시간 / Deletion Time
937 std::string timestamp;
938 // 입장 시간 UnixTime / Join UnixTime
939 int64_t timestampMillis;
940
942 bool parse(picojson::value const & json);
943};
944
945
951class HIVESDK_DLLEXPORT ChannelNoticeMessage {
952public:
953 // 채널 ID / Channel ID
954 std::string channelId;
955 // 발신자 / Sender
956 std::string from;
957 // 메시지 / Message
958 std::string message;
959 // 메시지 전송 시간 / Message Send Time
960 std::string timestamp;
961 // 입장 시간 UnixTime / Join UnixTime
962 int64_t timestampMillis;
963
965 bool parse(picojson::value const & json);
966};
967
973class HIVESDK_DLLEXPORT ChannelMessage {
974public:
975 // 발신자 / Sender
976 int64_t from;
977 // 발신자 추가 데이터 (닉네임 등) / Sender Additional Data (Nickname, etc
978 std::string extraData;
979 // 수신받은 채널 / Received Channel
980 std::string to;
981 // 메시지 / Message
982 std::string message;
983 // 메시지 전송 시간 / Message Send Time
984 std::string timestamp;
985 // 입장 시간 UnixTime / Join UnixTime
986 int64_t timestampMillis;
987 // 번역여부 / is Translated
988 bool translated;
989 // 번역 메시지 / Translated Message
990 std::string translatedMessage;
991
992
994 bool parse(picojson::value const & json);
995};
996
1002class HIVESDK_DLLEXPORT DirectMessage {
1003public:
1004 // 발신자 / Sender
1005 int64_t from;
1006 // 발신자 추가 데이터 (닉네임 등) / Sender Additional Data (Nickname, etc.)
1007 std::string extraData;
1008 // 수신자 / Receiver
1009 int64_t to;
1010 // 메시지
1011 std::string message;
1012 // 메시지 전송 시간 / Message Send Time
1013 std::string timestamp;
1014 // 입장 시간 UnixTime / Join UnixTime
1015 int64_t timestampMillis;
1016
1017 DirectMessage();
1018 bool parse(picojson::value const & json);
1019};
1020
1026class HIVESDK_DLLEXPORT NoticeMessage {
1027public:
1028 // 발신자 / Sender
1029 std::string from;
1030 // 메시지
1031 std::string message;
1032 // 메시지 전송 시간 / Message Send Time
1033 std::string timestamp;
1034 // 메시지 전송 시간 / Message Send Time (unix time)
1035 int64_t timestampMillis;
1036
1037 NoticeMessage();
1038 bool parse(picojson::value const & json);
1039};
1040
1046class HIVESDK_DLLEXPORT ChannelMessageListQueryResponse {
1047public:
1048 bool hasNext;
1049 std::string nextIndex;
1050 std::vector<ChannelMessage> messages;
1051
1053 bool parse(picojson::value const & json);
1054};
1055
1061class HIVESDK_DLLEXPORT TranslationData {
1062public:
1063 map<std::string, std::string> translations;
1064
1066 bool parse(picojson::value const & json);
1067};
1068
1069// MARK: Listener Classes
1075class HIVESDK_DLLEXPORT ChannelListener {
1076public:
1077 // 채널 입장시 호출 / Called when a member enters the channel
1078 virtual void onEnteredMember(EnteredMember const & member) = 0;
1079 // 채널 퇴장시 호출 / Called when a member exits the channel
1080 virtual void onExitedMember(ExitedMember const & member) = 0;
1081 // 채널 삭제시 호출 / Called when a channel is deleted
1082 virtual void onDeletedChannel(DeletedChannel const & channel) = 0;
1083 // 채널 공지 메시지 수신시 호출 / Called when a channel notice message is received
1084 virtual void onNoticeMessage(ChannelNoticeMessage const & message) = 0;
1085 // 채널 메시지 수신시 호출 / Called when a channel message is received
1086 virtual void onChannelMessage(ChannelMessage const & message) = 0;
1087
1088 virtual ~ChannelListener() = default;
1089};
1090
1097class HIVESDK_DLLEXPORT DirectMessageListener {
1098public:
1099 // 1:1 메시지 수신시 호출 / Called when a 1:1 message is received
1100 virtual void onDirectMessage(DirectMessage const & message) = 0;
1101};
1102
1108class HIVESDK_DLLEXPORT UserListener {
1109public:
1110 // 1:1 메시지 수신시 호출 / Called when a 1:1 message is received
1111 virtual void onDirectMessage(DirectMessage const & message) = 0;
1112 // 개인 공지 메시지 수신 시 호출 / Called when a personal notice message is received
1113 virtual void onNoticeMessage(NoticeMessage const & message) = 0;
1114
1115 virtual ~UserListener() = default;
1116};
1117
1123class HIVESDK_DLLEXPORT ConnectionListener {
1124public:
1125 // 채팅서버 연결시 호출 / Called when connected to the Chat Server
1126 virtual void onConnected() = 0;
1127 // 채팅서버 재연결 시작 시 호출 / Called when reconnection to the Chat Server starts
1128 virtual void onReconnectStarted() = 0;
1129 // 채팅서버 재연결시 호출 / Called when reconnected to the Chat Server
1130 virtual void onReconnected(ResultAPI const & result, std::vector<std::string> const & channelIds, std::vector<std::string> const & failChannelIds) = 0;
1131 // 채팅서버 연결 해제시 호출 / Called when disconnected from the Chat Server
1132 virtual void onDisconnected() = 0;
1133
1134 virtual ~ConnectionListener() = default;
1135};
1136
1142class HIVESDK_DLLEXPORT CustomDataListener {
1143public:
1144 // 커스텀 데이터 수신시 호출 / Called when a custom data is received
1145 virtual void onCustomData(std::string const & data) = 0;
1146
1147 virtual ~CustomDataListener() = default;
1148};
1149
1150class HIVESDK_DLLEXPORT Unique64 {
1151public:
1152
1153 static Unique64& getInstance();
1154 std::string generateKey();
1155private:
1156 std::mutex mutex_;
1157 uint64_t last_timestamp_ms_;
1158 uint16_t sequence_;
1159
1160 static const uint16_t MAX_SEQUENCE = 0xFFFF;
1161
1162 Unique64();
1163 uint64_t getCurrentTimestampMs();
1164 uint64_t waitUntilNextMillisecond(uint64_t current_ts_ms_ref);
1165};
1166
1167template<typename Key, typename Value>
1168class ThreadSafeMap {
1169private:
1170 std::map<Key, Value> map_;
1171 mutable std::mutex mutex_;
1172
1173public:
1174 ThreadSafeMap() = default;
1175 ThreadSafeMap(const ThreadSafeMap&) = delete;
1176 ThreadSafeMap& operator=(const ThreadSafeMap&) = delete;
1177 void insert(const Key& key, const Value& value);
1178 Value get(const Key& key) const;
1179 bool contains(const Key& key) const;
1180 size_t erase(const Key& key);
1181};
1182
1183NS_HIVE_END
1184
1185#endif // __HIVE_CHAT_H__
차단된 사용자 정보
Definition: HIVE_Chat.h:734
채팅 채널 정보
Definition: HIVE_Chat.h:659
채널 이벤트 리스너
Definition: HIVE_Chat.h:1075
채널 메시지 정보
Definition: HIVE_Chat.h:973
채널 대화 이력 조회 파라미터
Definition: HIVE_Chat.h:863
채널 대화 이력 정보
Definition: HIVE_Chat.h:1046
채널 공지 메시지 정보
Definition: HIVE_Chat.h:951
채널 조회 페이지 정보
Definition: HIVE_Chat.h:694
채널 메시지 전송 파라미터
Definition: HIVE_Chat.h:823
HiveChat은 실시간, 그룹, 1:1 채팅, 유저 간 차단 기능 등 게임에서 원활한 채팅을 할 수 있도록 필요한 핵심 기능을 제공하기 때문에 유저 간 협력을 증가시켜 게임 플레이...
Definition: HIVE_Chat.h:72
연결 리스너
Definition: HIVE_Chat.h:1123
채널 생성 파라미터
Definition: HIVE_Chat.h:754
커스텀 데이터 리스너
Definition: HIVE_Chat.h:1142
삭제된 채널 정보
Definition: HIVE_Chat.h:932
1:1 메시지 정보
Definition: HIVE_Chat.h:1002
1:1 메시지 리스너
Definition: HIVE_Chat.h:1097
1:1 메시지 전송 파라미터
Definition: HIVE_Chat.h:843
채널 입장 파라미터
Definition: HIVE_Chat.h:806
입장 멤버 정보
Definition: HIVE_Chat.h:892
퇴장 멤버 정보
Definition: HIVE_Chat.h:912
채널 목록 조회 파라미터
Definition: HIVE_Chat.h:779
채널 멤버 정보
Definition: HIVE_Chat.h:715
유저 대상 공지 메시지 정보
Definition: HIVE_Chat.h:1026
Definition: HIVE_ResultAPI.h:64
메시지 번역 결과
Definition: HIVE_Chat.h:1061
유저 이벤트 리스너
Definition: HIVE_Chat.h:1108
static void removeCustomDataListener(const char *uniqueKey)
커스텀 데이터 리스너 제거
static void removeChannelListener(const char *uniqueKey)
채널 리스너 제거 등록된 채널 리스너를 제거합니다.
static void addConnectionListener(const char *uniqueKey, ConnectionListener *listener)
연결 리스너 등록 채팅서버 연결 상태를 수신하기 위한 리스너를 등록합니다.
static void sendMessageWithDirectSendMessageParams(DirectSendMessageParams const &params)
1:1 메시지 전송 수신자 ID와 메시지를 입력받아, 해당 사용자에게 메시지를 전송합니다.
ChannelType
채팅 채널 타입 정보
Definition: HIVE_Chat.h:635
static void addChannelListener(const char *uniqueKey, ChannelListener *listener)
채널 리스너 등록 채널 이벤트를 수신하기 위한 리스너를 등록합니다.
static void addUserListener(const char *uniqueKey, UserListener *listener)
유저 리스너 등록 유저 이벤트를 수신하기 위한 리스너를 등록합니다.
static void disconnect(onDisconnect listener)
채팅서버 연결 해제 채팅서버와의 연결을 해제합니다.
static void getChannelMembers(const char *channelId, onGetChannelMembers listener)
채널 멤버 조회 채널 ID를 입력받아, 해당 채널의 멤버 목록을 조회합니다.
static void getChannelsByUser(onGetChannelsByUser listener)
참여중인 채널 목록 조회 참여중인 채널 목록을 조회합니다.
static void unblockMember(int64_t blockPlayerId, onUnblockMember listener)
사용자 차단 해제 사용자 ID를 입력받아, 해당 사용자의 차단을 해제합니다.
static void connect(const char *extraData, onResult listener)
채팅서버에 연결 (더 이상 사용되지 않음) 이 메서드는 더 이상 사용을 권장하지 않으며, 향후 버전에서 제거될 예정입니다.
static void translate(TranslateParams const &params, onTranslate listener)
메시지 번역 요청 targetLanguage와 번역할 메시지를 입력받아, 해당 메시지를 번역합니다.
static void connect(onConnect listener)
채팅서버에 연결 채팅서버에 연결을 시도합니다.
static void deleteChannel(const char *channelId, onDeleteChannel listener)
채널 삭제 채널 ID를 입력받아, 해당 채널을 삭제합니다.
static bool isConnected()
소켓 연결 상태 확인 현재 소켓이 연결되어 있는지 확인합니다.
static void getBlockMembers(onGetBlockMembers listener)
차단된 사용자 목록 조회 차단된 사용자 목록을 조회합니다.
static void addDirectMessageListener(const char *uniqueKey, DirectMessageListener *listener)
1:1 메시지 리스너 등록 1:1 메시지를 수신하기 위한 리스너를 등록합니다.
static void getChannels(GetChannelsParams const *params, onGetChannels listener)
채널 목록 조회 접근 가능한 채널 목록을 조회합니다.
static void enterChannel(EnterChannelParams const &params, onEnterChannel listener)
채널 입장 채널 ID를 입력받아, 채널에 접속합니다.
static void removeUserListener(const char *uniqueKey)
유저 리스너 제거 등록된 유저 이벤트 리스너를 제거합니다.
static void exitChannel(const char *channelId, onExitChannel listener)
채널 퇴장 채널 ID를 입력받아, 해당 채널에서 퇴장합니다.
static void removeConnectionListener(const char *uniqueKey)
연결 리스너 제거 등록된 연결 리스너를 제거합니다.
static void blockMember(int64_t blockPlayerId, onBlockMember listener)
사용자 차단 사용자 ID를 입력받아, 해당 사용자를 차단합니다.
static void sendMessageWithDirectSendMessageParams(DirectSendMessageParams const &params, onDirectSendMessage listener)
1:1 메시지 전송 수신자 ID와 메시지를 입력받아, 해당 사용자에게 메시지를 전송합니다.
static void reconnect(onReconnect listener)
채팅 서버 재 연결 Hive 채팅 서버와 재연결 합니다.
static void sendMessageWithChannelSendMessageParams(ChannelSendMessageParams const &params, onChannelSendMessage listener)
채널 메시지 전송 채널 ID와 메시지를 입력받아, 해당 채널에 메시지를 전송합니다.
SortType
채널 정렬 타입 정보
Definition: HIVE_Chat.h:647
static void addCustomDataListener(const char *uniqueKey, CustomDataListener *listener)
커스텀 데이터 리스너 등록
static void sendMessageWithChannelSendMessageParams(ChannelSendMessageParams const &params)
채널 메시지 전송 채널 ID와 메시지를 입력받아, 해당 채널에 메시지를 전송합니다.
static void createChannel(CreateChannelParams const &params, onCreateChannel listener)
채널 생성
static void getChannelInfo(const char *channelId, onGetChannelInfo listener)
채널 정보 조회 채널 ID를 입력받아, 해당 채널의 정보를 조회합니다.
static void removeDirectMessageListener(const char *uniqueKey)
1:1 메시지 리스너 제거 등록된 1:1 메시지 리스너를 제거합니다.
Copyright © Com2uS Platform Corporation. All Right Reserved. 이용약관 개인정보 처리방침