NERoom SDK V1.40.0
载入中...
搜索中...
未找到
chat_ctrl_interface.h
浏览该文件的文档.
1// Copyright (c) 2022 NetEase, Inc. All rights reserved.
2// Use of this source code is governed by a MIT license that can be
3// found in the LICENSE file.
4
11#ifndef CHAT_CTRL_INTERFACE_H
12#define CHAT_CTRL_INTERFACE_H
13
14#include "base_ctrl_interface.h"
15#include "base_type_defines.h"
16#include "error_code_defines.h"
17
18namespace neroom {
19
29
34public:
51
52public:
56 virtual ~INERoomChatController() = default;
57
62 virtual NEChatroomType getChatroomType() const = 0;
63
69 virtual void joinChatroom(const NERoomChatCallback& callback) = 0;
70
76 virtual void leaveChatroom(const NERoomChatCallback& callback) = 0;
77
84 ROOMKIT_DEPRECATED("use sendBroadcastTextMessage with new callback instead")
85 virtual void sendBroadcastTextMessage(const std::string& message, const NERoomChatCallback& callback) = 0;
86
92 virtual void sendBroadcastTextMessage(const std::string& message, const NERoomChatRoomSendMessageCallback& callback) = 0;
93
101 ROOMKIT_DEPRECATED("use sendDirectTextMessage with new callback instead")
102 virtual void sendDirectTextMessage(const std::string& userUuid, const std::string& message, const NERoomChatCallback& callback) = 0;
103
110 virtual void sendDirectTextMessage(const std::string& userUuid,
111 const std::string& message,
112 const NERoomChatRoomSendMessageCallback& callback) = 0;
113
121 ROOMKIT_DEPRECATED("use sendGroupTextMessage with new callback instead")
122 virtual void sendGroupTextMessage(const std::list<std::string>& userUuids, const std::string& message, const NERoomChatCallback& callback) = 0;
123
130 virtual void sendGroupTextMessage(const std::list<std::string>& userUuids,
131 const std::string& message,
132 const NERoomChatRoomSendMessageCallback& callback) = 0;
133
141 virtual void fetchChatRoomMembers(NEChatRoomMemberQueryType type, int limit, const NERoomChatRoomMemberCallback& callback) = 0;
142
151 virtual void sendTextMessage(const std::string& messageUuid,
152 const std::string& message,
153 const std::list<std::string>& userUuids,
154 const NERoomChatCallback& callback) = 0;
155
163 virtual void sendTextMessage(const std::string& messageUuid,
164 const std::string& message,
165 const std::list<std::string>& userUuids,
166 const NERoomChatRoomSendMessageCallback& callback) = 0;
167
176 virtual void sendFileMessage(const std::string& messageUuid,
177 const std::string& filePath,
178 const std::list<std::string>& userUuids,
179 const NERoomChatCallback& callback) = 0;
180
188 virtual void sendFileMessage(const std::string& messageUuid,
189 const std::string& filePath,
190 const std::list<std::string>& userUuids,
191 const NERoomChatRoomSendMessageCallback& callback) = 0;
192
203 virtual void sendImageMessage(const std::string& messageUuid,
204 const std::string& imagePath,
205 int width,
206 int height,
207 const std::list<std::string>& userUuids,
208 const NERoomChatCallback& callback) = 0;
209
219 virtual void sendImageMessage(const std::string& messageUuid,
220 const std::string& imagePath,
221 int width,
222 int height,
223 const std::list<std::string>& userUuids,
224 const NERoomChatRoomSendMessageCallback& callback) = 0;
225
232 virtual void cancelSendFileMessage(const std::string& messageUuid, const NERoomChatCallback& callback) = 0;
233
242 virtual void downloadAttachment(const std::string& messageUuid,
243 const std::string& fileUrl,
244 const std::string& filePath,
245 const NERoomChatCallback& callback) = 0;
246
253 virtual void cancelDownloadAttachment(const std::string& messageUuid, const NERoomChatCallback& callback) = 0;
254
263
270 virtual void recallChatroomMessage(const std::string& messageUUID, time_t messageTime, const NERoomChatCallback& callback) = 0;
271
278 const NERoomFetchChatRoomMessageCallback& callback) = 0;
285 virtual void sendBroadcastCustomMessage(const std::string& message, const NERoomChatRoomSendMessageCallback& callback) = 0;
286};
287
288} // namespace neroom
289
290#endif // CHAT_CTRL_INTERFACE_H
基础控制器头文件
基本类型定义头文件
virtual void cancelDownloadAttachment(const std::string &messageUuid, const NERoomChatCallback &callback)=0
取消下载文件消息附件
NECallback< SharedChatMessagePtr > NERoomChatRoomSendMessageCallback
聊天室消息发送结果回调
virtual void joinChatroom(const NERoomChatCallback &callback)=0
加入聊天室
virtual void sendTextMessage(const std::string &messageUuid, const std::string &message, const std::list< std::string > &userUuids, const NERoomChatCallback &callback)=0
发送文本消息
virtual void sendDirectTextMessage(const std::string &userUuid, const std::string &message, const NERoomChatCallback &callback)=0
发送定向消息
virtual void leaveChatroom(const NERoomChatCallback &callback)=0
离开聊天室
virtual void cancelSendFileMessage(const std::string &messageUuid, const NERoomChatCallback &callback)=0
取消发送文件消息
virtual void sendBroadcastTextMessage(const std::string &message, const NERoomChatCallback &callback)=0
发送广播消息
virtual void sendBroadcastCustomMessage(const std::string &message, const NERoomChatRoomSendMessageCallback &callback)=0
发送自定义广播消息
NECallback<> NERoomChatCallback
聊天室操作结果回调
NECallback< std::list< SharedChatMessagePtr > > NERoomFetchChatRoomMessageCallback
检索聊天室消息回调
virtual void fetchChatroomHistoryMessages(NEHistoryMessageSearchOption option, const NERoomFetchChatRoomMessageCallback &callback)=0
获取聊天室历史消息
virtual void sendGroupTextMessage(const std::list< std::string > &userUuids, const std::string &message, const NERoomChatCallback &callback)=0
发送多人消息
virtual void recallChatroomMessage(const std::string &messageUUID, time_t messageTime, const NERoomChatCallback &callback)=0
撤回聊天室消息
virtual NEChatroomType getChatroomType() const =0
获取聊天室类型
virtual void sendImageMessage(const std::string &messageUuid, const std::string &imagePath, int width, int height, const std::list< std::string > &userUuids, const NERoomChatCallback &callback)=0
发送图片消息
virtual void sendFileMessage(const std::string &messageUuid, const std::string &filePath, const std::list< std::string > &userUuids, const NERoomChatCallback &callback)=0
发送文件消息
virtual void fetchChatroomHistoryMessagesByTags(const NEHistoryMessageSearchOptionByTags &option, const NERoomFetchChatRoomMessageCallback &callback)=0
按照标签检索聊天室历史消息
virtual void downloadAttachment(const std::string &messageUuid, const std::string &fileUrl, const std::string &filePath, const NERoomChatCallback &callback)=0
下载文件消息附件
virtual ~INERoomChatController()=default
析构函数
virtual void fetchChatRoomMembers(NEChatRoomMemberQueryType type, int limit, const NERoomChatRoomMemberCallback &callback)=0
聊天室成员信息
NECallback< std::vector< NEChatRoomMember > > NERoomChatRoomMemberCallback
聊天室成员回调
错误码定义头文件
#define ROOMKIT_DEPRECATED(message)
enum neroom::tagNEChatRoomMemberQueryType NEChatRoomMemberQueryType
聊天室成员类型
std::function< void(int, const std::string &, const TResultParam &...)> NECallback
通用回调
tagNEChatRoomMemberQueryType
聊天室成员类型