NIM PC Cross Platform SDK
nim_cpp_msglog.h
Go to the documentation of this file.
1
7#ifndef _NIM_SDK_CPP_MSGLOG_H_
8#define _NIM_SDK_CPP_MSGLOG_H_
9
10#include <functional>
11#include <string>
19namespace nim {
20
24class NIM_SDK_CPPWRAPPER_DLL_API MsgLog {
25public:
26 typedef std::function<void(NIMResCode res_code, const std::string& id, nim::NIMSessionType to_type, const QueryMsglogResult& result)>
29 typedef std::function<void(NIMResCode res_code, const std::string& msg_id, const IMMessage& msg)>
32 typedef std::function<void(NIMResCode res_code, const std::string& uid, nim::NIMSessionType to_type)>
42 typedef std::function<void(NIMResCode res_code, const std::string& msg_id)> ModifySingleMsglogCallback;
55
57 typedef std::function<void(NIMResCode res_code)> DBFunctionCallback;
59 typedef std::function<void(NIMResCode res_code)> DeleteMsglogSelfCallback;
60
63
66
68 typedef std::function<void(int64_t imported_count, int64_t total_count)> ImportDbPrgCallback;
69
71 typedef std::function<void(const MessageStatusChangedResult&)> MessageStatusChangedCallback;
72
73 typedef std::function<void(const NIMResCode, const std::string&)>
76 typedef std::function<void(const NIMResCode, const std::string&, nim::NIMSessionType, uint64_t, const std::string&)>
79 typedef std::function<void(const std::list<NIMDeleteSessionHistoryMessagesNotifyInfo>& info_list)>
82 typedef std::function<void(const NIMResCode res_code, const std::string& client_id, bool is_root, int reply_count)>
85 typedef std::function<void(const NIMResCode res_code, const std::string& client_id, const IMMessage& msg)>
88 typedef std::function<
89 void(const NIMResCode res_code, const IMMessage& root_msg, int total, uint64_t last_msg_time, const std::list<IMMessage>& msg_list)>
92
93 using FullTextSearchOnlineAsyncCallback =
95 std::function<void(nim::NIMResCode res_code, const QueryMsglogResult& message_list)>;
96
97 class NIM_SDK_CPPWRAPPER_DLL_API AllMessageTypeList {
98 public:
100 std::vector<nim::NIMMessageType> ExclusionType(const std::vector<nim::NIMMessageType>& exclusion_type_list) const;
101
102 private: // judge
103 std::vector<nim::NIMMessageType> list_;
104 };
108 class NIM_SDK_CPPWRAPPER_DLL_API QueryMsgOnlineAsyncParam {
109 friend class MsgLog;
110
111 public:
114 std::string id_;
120 int64_t from_time_;
122 int64_t end_time_;
124 int64_t end_msg_id_;
132 std::vector<nim::NIMMessageType> msg_type_list_;
135
136 private:
137 bool FormatParam();
138
139 private:
140 const static AllMessageTypeList AllMsgTypeList;
141 std::string json_extension_;
142 };
143
147 class NIM_SDK_CPPWRAPPER_DLL_API QueryMsgByKeywordOnlineParam {
148 friend class MsgLog;
149
150 public:
153 std::string id_;
155 std::string keyword_;
161 int64_t from_time_;
163 int64_t end_time_;
166
167 private:
168 bool FormatParam() { return true; };
169
170 private:
171 std::string json_extension_;
172 };
176 class NIM_SDK_CPPWRAPPER_DLL_API QueryMsgAsyncParam {
177 public:
181 std::string from_account;
183 std::string to_account;
185 int64_t server_id;
187 std::string client_id;
189 int64_t time;
190 };
191
195 class NIM_SDK_CPPWRAPPER_DLL_API QueryThreadHistoryMsgAsyncParam {
196 public:
198 int64_t from_time;
200 int64_t to_time;
204 int32_t limit;
206 int32_t reverse;
207 };
211 class NIM_SDK_CPPWRAPPER_DLL_API QueryMsgByOptionsAsyncParam {
212 public:
214 : limit_count_(100)
215 , reverse_(false) {}
219 std::list<std::string> ids_;
223 int64_t from_time_;
225 int64_t end_time_;
235 std::string search_content_;
236
237 public:
238 std::string ToJsonString() const;
239 };
240
241 class NIM_SDK_CPPWRAPPER_DLL_API FullTextSearchOnlineAsyncParam {
242 public:
244 std::string keyword_;
246 uint64_t from_time_;
248 uint64_t to_time_;
254 uint32_t search_rule_;
256 std::list<std::string> p2p_filter_list_;
258 std::list<std::string> team_filter_list_;
260 std::list<std::string> sender_filter_list_;
262 std::list<nim::NIMMessageType> msg_type_filter_list_;
264 std::list<uint32_t> msg_sub_type_filter_list_;
266 : from_time_(0)
267 , to_time_(0)
268 , session_limit_(20)
269 , msglog_limit_(20)
270 , search_rule_(0) {}
271 };
272
277 static void UnregMsglogCb();
283 static void RegDeleteMsglogSelfNotify(const DeleteMsglogSelfNotifyCallback& cb);
284
290 static void RegDeleteHistoryMessagesNotify(const DeleteHistoryOnLineNotifyCallback& cb);
291
301 static bool QueryMsgByIDAysnc(const std::string& client_msg_id, const QuerySingleMsgCallback& cb, const std::string& json_extension = "");
302
320 static bool QueryMsgAsync(const std::string& account_id,
321 nim::NIMSessionType to_type,
322 int limit_count,
323 int64_t anchor_msg_time,
324 const QueryMsgCallback& cb,
325 const std::string& json_extension = "");
326
336 static bool QueryMsgOnlineAsync(const QueryMsgOnlineAsyncParam& param, const QueryMsgCallback& cb);
355 static bool QueryMsgOnlineAsync(const std::string& id,
356 nim::NIMSessionType to_type,
357 int limit_count,
358 int64_t from_time,
359 int64_t end_time,
360 int64_t end_msg_id,
361 bool reverse,
362 bool need_save_to_local,
363 const QueryMsgCallback& cb,
364 const std::string& json_extension = "");
365
375 static bool QueryMsgByKeywordOnlineAsync(const MsgLog::QueryMsgByKeywordOnlineParam& param, const QueryMsgCallback& cb);
376
401 static bool QueryMsgOfSpecifiedTypeInASessionAsync(nim::NIMSessionType to_type,
402 const std::string& id,
403 int limit_count,
404 int64_t from_time,
405 int64_t end_time,
406 const std::string& end_client_msg_id,
407 bool reverse,
408 std::list<NIMMessageType> msg_type,
409 const QueryMsgCallback& cb,
410 const std::string& json_extension = "");
411
440 static bool QueryMsgByOptionsAsync(NIMMsgLogQueryRange query_range,
441 const std::list<std::string>& ids,
442 int limit_count,
443 int64_t from_time,
444 int64_t end_time,
445 const std::string& end_client_msg_id,
446 bool reverse,
447 NIMMessageType msg_type,
448 const std::string& search_content,
449 const QueryMsgCallback& cb,
450 const std::string& json_extension = "");
451
460 static bool QueryMsgByOptionsAsyncEx(const QueryMsgByOptionsAsyncParam& param, const QueryMsgCallback& cb);
461
475 static bool BatchStatusReadAsync(const std::string& account_id,
476 nim::NIMSessionType to_type,
477 const BatchStatusReadCallback& cb,
478 const std::string& json_extension = "");
479
491 static bool BatchStatusDeleteAsync(const std::string& account_id,
492 nim::NIMSessionType to_type,
493 const BatchStatusDeleteCallback& cb,
494 const std::string& json_extension = "");
495
508 static bool BatchStatusDeleteAsyncEx(const std::string& account_id,
509 nim::NIMSessionType to_type,
510 bool revert_by_query_online,
511 const BatchStatusDeleteCallback& cb,
512 const std::string& json_extension = "");
513
525 static bool SetStatusAsync(const std::string& msg_id,
526 nim::NIMMsgLogStatus msglog_status,
527 const SetStatusCallback& cb,
528 const std::string& json_extension = "");
529
541 static bool SetSubStatusAsync(const std::string& msg_id,
542 nim::NIMMsgLogSubStatus msglog_sub_status,
543 const SetSubStatusCallback& cb,
544 const std::string& json_extension = "");
545
558 static bool WriteMsglogToLocalAsync(const std::string& talk_id,
559 const IMMessage& msg,
560 bool need_update_session,
561 const WriteMsglogCallback& cb,
562 const std::string& json_extension = "");
563
582 static bool WriteMsglogToLocalAsyncEx(const std::string& talk_id,
583 const IMMessage& msg,
584 bool need_update_session,
585 bool compose_last_msg,
586 const std::list<NIMMessageType>& exclude_msg_type,
587 const WriteMsglogCallback& cb);
588
601 static bool DeleteBySessionTypeAsync(bool delete_sessions,
602 NIMSessionType to_type,
603 const DeleteBySessionTypeCallback& cb,
604 const std::string& json_extension = "");
605
619 static bool DeleteBySessionTypeAsyncEx(bool delete_sessions,
620 NIMSessionType to_type,
621 bool revert_by_query_online,
622 const DeleteBySessionTypeCallback& cb,
623 const std::string& json_extension = "");
624
637 static bool DeleteAsync(const std::string& session_id,
638 NIMSessionType to_type,
639 const std::string& msg_id,
640 const DeleteCallback& cb,
641 const std::string& json_extension = "");
642
654 static bool DeleteAllAsync(bool delete_sessions, const DeleteAllCallback& cb, const std::string& json_extension = "");
655
669 static bool DeleteAllAsyncEx(bool delete_sessions,
670 bool revert_by_query_online,
671 const DeleteAllCallback& cb,
672 const std::string& json_extension = "");
673
687 static bool DeleteMsgByTimeAsync(const std::string& session_id,
688 NIMSessionType to_type,
689 uint64_t timestamp1,
690 uint64_t timestamp2,
691 const DeleteMsgByTimeCallback& cb,
692 const std::string& json_extension = "");
693
708 static bool DeleteMsgByTimeAsyncEx(const std::string& session_id,
709 NIMSessionType to_type,
710 bool revert_by_query_online,
711 uint64_t timestamp1,
712 uint64_t timestamp2,
713 const DeleteMsgByTimeCallback& cb,
714 const std::string& json_extension = "");
715
725 static bool ExportDbAsync(const std::string& dst_path, const DBFunctionCallback& cb, const std::string& json_extension = "");
726
739 static bool ImportDbAsync(const std::string& src_path,
740 const DBFunctionCallback& cb,
741 const ImportDbPrgCallback& prg_cb,
742 const std::string& json_extension = "");
743
754 static void SendReceiptAsync(const std::string& json_msg, const MessageStatusChangedCallback& cb);
755
761 static bool QuerySentMessageBeReaded(const IMMessage& msg);
762
768 static bool QueryReceivedMsgReceiptSent(const IMMessage& msg);
769
777 static void RegMessageStatusChangedCb(const MessageStatusChangedCallback& cb, const std::string& json_extension = "");
778
790 static bool UpdateLocalExtAsync(const std::string& msg_id,
791 const std::string& local_ext,
792 const UpdateLocalExtCallback& cb,
793 const std::string& json_extension = "");
798 static void UnregMsgologCb();
799
808 static bool ReadAllAsync(const DBFunctionCallback& cb, const std::string& json_extension = "");
809
815 static bool ExportBackupToRemote(const LogsBackupExportInfo& export_info);
816
822 static bool ImportBackupFromRemote(const LogsBackupImportInfo& import_info);
823
828 static void CancelImportBackupFromRemote();
829
834 static void CancelExportBackupToRemote();
835
846 static void DeleteHistoryOnlineAsync(const std::string& accid,
847 bool delete_roaming,
848 const std::string& json_extension,
849 const DeleteHistoryOnLineAsyncCallback& cb);
850
865 static void DeleteHistoryOnlineAsync(const std::string& accid,
866 nim::NIMSessionType to_type,
867 bool notify_self,
868 const std::string& ext,
869 const DeleteHistoryOnLineAsyncExCallback& cb);
870
879 static void DeleteMessageSelfAsync(const IMMessage& msg, const std::string ext, const DeleteMsglogSelfCallback& cb);
880
888 static void DeleteMessageSelfAsync(const std::list<std::tuple<IMMessage, std::string>>& msgs, const DeleteMsglogSelfCallback& cb);
889
897 static void QueryMessageIsThreadRoot(const std::string msg_client_id, const QueryMessageIsThreadRootAsyncCallback& cb);
898
906 static void QueryMessageOnline(const QueryMsgAsyncParam& param, const QueryMessageOnlineCallback& cb);
907
915 static void QueryThreadHistoryMsg(const IMMessage& msg, const QueryThreadHistoryMsgAsyncParam& param, const QueryThreadHistoryMsgCallback& cb);
916
924 static void FullTextSearchOnlineAsync(const FullTextSearchOnlineAsyncParam& param, const FullTextSearchOnlineAsyncCallback& cb);
925};
926} // namespace nim
927
928#endif //_NIM_SDK_CPP_MSGLOG_H_
导出消息记录到云端参数定义
Definition: nim_msglog_helper.h:92
从云端导入消息记录参数定义
Definition: nim_msglog_helper.h:171
Definition: nim_cpp_msglog.h:97
Definition: nim_cpp_msglog.h:241
std::list< std::string > sender_filter_list_
发送者过滤列表
Definition: nim_cpp_msglog.h:260
std::list< std::string > team_filter_list_
Team 群租会话过滤列表
Definition: nim_cpp_msglog.h:258
uint32_t search_rule_
设置查找规则, 例如升序不分组: kNIMFullTextSearchOrderByAsc | kNIMFullTextSearchNoGroupBySession
Definition: nim_cpp_msglog.h:254
uint32_t msglog_limit_
限制每个会话返回的消息数量
Definition: nim_cpp_msglog.h:252
std::string keyword_
要搜索的关键字
Definition: nim_cpp_msglog.h:244
std::list< std::string > p2p_filter_list_
P2P 会话过滤列表
Definition: nim_cpp_msglog.h:256
uint64_t to_time_
查询的结束时间
Definition: nim_cpp_msglog.h:248
std::list< uint32_t > msg_sub_type_filter_list_
消息子类型过滤
Definition: nim_cpp_msglog.h:264
std::list< nim::NIMMessageType > msg_type_filter_list_
消息类型过滤
Definition: nim_cpp_msglog.h:262
uint32_t session_limit_
限制会话的返回数量
Definition: nim_cpp_msglog.h:250
uint64_t from_time_
查询的起始时间,0 为从最开始查询
Definition: nim_cpp_msglog.h:246
Definition: nim_cpp_msglog.h:176
NIMSessionType to_type_
enum 会话类型,双人0,群组1,超大群5 (nim_msglog_def.h)
Definition: nim_cpp_msglog.h:179
std::string client_id
string 消息的客户端id
Definition: nim_cpp_msglog.h:187
int64_t server_id
int64_t 消息的服务端id
Definition: nim_cpp_msglog.h:185
int64_t time
int64_t 消息时间戳
Definition: nim_cpp_msglog.h:189
std::string to_account
string 消息的接收方
Definition: nim_cpp_msglog.h:183
std::string from_account
string 消息的发送方
Definition: nim_cpp_msglog.h:181
Definition: nim_cpp_msglog.h:147
int64_t end_time_
int64_t 结束时间点,单位:毫秒
Definition: nim_cpp_msglog.h:163
nim::NIMSessionType to_type_
enum 会话类型,双人0,群组1 (nim_msglog_def.h)
Definition: nim_cpp_msglog.h:157
std::string id_
查询id,对方的account id或者群组tid
Definition: nim_cpp_msglog.h:153
bool reverse_
bool true:反向查询(按时间正序起查,正序排列),false:按时间逆序起查,逆序排列(建议默认为false)
Definition: nim_cpp_msglog.h:165
int limit_count_
int 本次查询的消息条数上限(最多100条)
Definition: nim_cpp_msglog.h:159
int64_t from_time_
int64_t 起始时间点,单位:毫秒
Definition: nim_cpp_msglog.h:161
std::string keyword_
要查询的关键字
Definition: nim_cpp_msglog.h:155
Definition: nim_cpp_msglog.h:211
std::string search_content_
检索文本(目前只支持kNIMMessageTypeText和kNIMMessageTypeFile这两种类型消息的文本关键字检索,即支持文字消息和文件名的检索
Definition: nim_cpp_msglog.h:235
std::string end_client_msg_id_
结束查询的最后一条消息的end_client_msg_id(不包含在查询结果中)
Definition: nim_cpp_msglog.h:227
std::list< std::string > ids_
会话id(对方的account id或者群组tid)的集合,目前暂不支持多个的组合检索,详见NIMMsgLogQueryRange说明
Definition: nim_cpp_msglog.h:219
NIMMessageType msg_type_
检索的消息类型(目前只支持kNIMMessageTypeText、kNIMMessageTypeImage和kNIMMessageTypeFile这三种类型消息)
Definition: nim_cpp_msglog.h:231
int32_t msg_sub_type_
消息的子类型
Definition: nim_cpp_msglog.h:233
bool reverse_
true:反向查询(按时间正序起查,正序排列),false:按时间逆序起查,逆序排列(建议默认为false)
Definition: nim_cpp_msglog.h:229
int limit_count_
本次查询的消息条数上限(最多100条)
Definition: nim_cpp_msglog.h:221
NIMMsgLogQueryRange query_range_
消息历史的检索范围(目前暂不支持某些范围的组合检索,详见NIMMsgLogQueryRange说明)
Definition: nim_cpp_msglog.h:217
int64_t end_time_
结束时间点,单位:毫秒
Definition: nim_cpp_msglog.h:225
int64_t from_time_
起始时间点,单位:毫秒
Definition: nim_cpp_msglog.h:223
Definition: nim_cpp_msglog.h:108
bool need_save_to_local_
bool 将在线查询结果保存到本地,false: 不保存
Definition: nim_cpp_msglog.h:128
int64_t end_time_
int64_t 结束时间点,单位:毫秒
Definition: nim_cpp_msglog.h:122
bool reverse_
bool true:反向查询(按时间正序起查,正序排列),false:按时间逆序起查,逆序排列(建议默认为false)
Definition: nim_cpp_msglog.h:126
int limit_count_
int 本次查询的消息条数上限(最多100条)
Definition: nim_cpp_msglog.h:118
std::vector< nim::NIMMessageType > msg_type_list_
vector 要获取或排除掉的消息类型 由 is_exclusion_type_ 参数决定
Definition: nim_cpp_msglog.h:132
std::string id_
查询id,对方的account id或者群组tid
Definition: nim_cpp_msglog.h:114
int64_t end_msg_id_
int64_t 结束查询的最后一条消息的server_msg_id(不包含在查询结果中)
Definition: nim_cpp_msglog.h:124
int64_t from_time_
int64_t 起始时间点,单位:毫秒
Definition: nim_cpp_msglog.h:120
nim::NIMSessionType to_type_
enum 会话类型,双人0,群组1 (nim_msglog_def.h)
Definition: nim_cpp_msglog.h:116
bool is_exclusion_type_
bool true : 获取除msg_type_list_中指定的所有类型消息 ,false :只获取 msg_type_list_ 中指定的类型的消息
Definition: nim_cpp_msglog.h:134
bool auto_download_attachment_
bool 查询结果回来后,是否需要sdk自动下载消息附件。true:需要,false:不需要
Definition: nim_cpp_msglog.h:130
Definition: nim_cpp_msglog.h:195
int64_t exclude_msg_id
int64_t 截至消息的服务端id,不包含在查询结果中 缺省0
Definition: nim_cpp_msglog.h:202
int64_t from_time
int64_t 起始时间 缺省0
Definition: nim_cpp_msglog.h:198
int32_t limit
int32_t 查询条数限制 缺省100
Definition: nim_cpp_msglog.h:204
int32_t reverse
int64_t 排序 缺省0 false
Definition: nim_cpp_msglog.h:206
int64_t to_time
int64_t 结束时间 缺省0
Definition: nim_cpp_msglog.h:200
NIM SDK提供的消息历史接口
Definition: nim_cpp_msglog.h:24
DBFunctionCallback DeleteAllCallback
删除全部消息历史回调模板
Definition: nim_cpp_msglog.h:62
std::function< void(const NIMResCode, const std::string &)> DeleteHistoryOnLineAsyncCallback
删除与某账号(p2p)的所有云端历史记录与漫游消息的回调模板
Definition: nim_cpp_msglog.h:75
ModifyMultipleMsglogCallback BatchStatusDeleteCallback
批量删除消息历史回调模板
Definition: nim_cpp_msglog.h:38
std::function< void(NIMResCode res_code, const std::string &msg_id, const IMMessage &msg)> QuerySingleMsgCallback
查询单条消息历史回调模板
Definition: nim_cpp_msglog.h:31
std::function< void(const std::list< NIMDeleteSessionHistoryMessagesNotifyInfo > &info_list)> DeleteHistoryOnLineNotifyCallback
删除会话的云端的历史记录推送的回调模板
Definition: nim_cpp_msglog.h:81
std::function< void(const NIMResCode, const std::string &, nim::NIMSessionType, uint64_t, const std::string &)> DeleteHistoryOnLineAsyncExCallback
删除某一会话的云端的历史记录的回调模板
Definition: nim_cpp_msglog.h:78
std::function< void(const NIMResCode res_code, const std::string &client_id, const IMMessage &msg)> QueryMessageOnlineCallback
查询某条消息的具体内容回调模板
Definition: nim_cpp_msglog.h:87
std::function< void(const DeleteMsglogSelfNotifyParam &)> DeleteMsglogSelfNotifyCallback
单向删除消息记录通知回调
Definition: nim_cpp_msglog.h:54
std::function< void(NIMResCode res_code)> DBFunctionCallback
消息历史变更回调模板
Definition: nim_cpp_msglog.h:57
ModifyMultipleMsglogCallback DeleteBySessionTypeCallback
批量删除消息历史回调模板
Definition: nim_cpp_msglog.h:40
ModifyMultipleMsglogCallback BatchStatusReadCallback
批量设置消息历史已读状态回调模板
Definition: nim_cpp_msglog.h:36
std::function< void(const NIMResCode res_code, const std::string &client_id, bool is_root, int reply_count)> QueryMessageIsThreadRootAsyncCallback
查询消息是否是thread聊天的根消息回调模板
Definition: nim_cpp_msglog.h:84
ModifySingleMsglogCallback SetStatusCallback
修改消息历史状态回调模板
Definition: nim_cpp_msglog.h:44
std::function< void(const NIMResCode res_code, const IMMessage &root_msg, int total, uint64_t last_msg_time, const std::list< IMMessage > &msg_list)> QueryThreadHistoryMsgCallback
分页查询thread talk消息历史回调模板
Definition: nim_cpp_msglog.h:91
ModifySingleMsglogCallback SetSubStatusCallback
修改消息历史子状态回调模板
Definition: nim_cpp_msglog.h:46
std::function< void(NIMResCode res_code, const std::string &msg_id)> ModifySingleMsglogCallback
修改(单条)消息历史回调模板
Definition: nim_cpp_msglog.h:42
ModifySingleMsglogCallback WriteMsglogCallback
保存消息历史回调模板
Definition: nim_cpp_msglog.h:50
DBFunctionCallback DeleteMsgByTimeCallback
根据时间段删除部分消息历史回调模板
Definition: nim_cpp_msglog.h:65
std::function< void(NIMResCode res_code)> DeleteMsglogSelfCallback
单向删除消息记录回调
Definition: nim_cpp_msglog.h:59
std::function< void(NIMResCode res_code, const std::string &id, nim::NIMSessionType to_type, const QueryMsglogResult &result)> QueryMsgCallback
查询消息历史回调模板
Definition: nim_cpp_msglog.h:28
std::function< void(NIMResCode res_code, const std::string &uid, nim::NIMSessionType to_type)> ModifyMultipleMsglogCallback
修改(多条)消息历史回调模板
Definition: nim_cpp_msglog.h:34
ModifySingleMsglogCallback DeleteCallback
删除消息历史回调模板
Definition: nim_cpp_msglog.h:52
std::function< void(const MessageStatusChangedResult &)> MessageStatusChangedCallback
发送消息已读回执通知回调模板
Definition: nim_cpp_msglog.h:71
std::function< void(int64_t imported_count, int64_t total_count)> ImportDbPrgCallback
导入消息历史回调模板
Definition: nim_cpp_msglog.h:68
ModifySingleMsglogCallback UpdateLocalExtCallback
修改消息历史本地扩展字段内容回调模板
Definition: nim_cpp_msglog.h:48
namespace nim
NIMResCode
Definition: nim_chatroom_res_code_def.h:15
NIMMsgLogStatus
Definition: nim_msglog_def.h:312
NIMMessageType
Definition: nim_msglog_def.h:269
NIMMsgLogSubStatus
Definition: nim_msglog_def.h:434
NIMMsgLogQueryRange
Definition: nim_msglog_def.h:618
msglog 辅助方法和数据结构定义
定义导出宏
NIMSessionType
Definition: nim_session_def.h:16
Talk 辅助方法和数据结构定义
单向删除消息记录回调参数
Definition: nim_msglog_helper.h:51
Definition: nim_talk_helper.h:281
发送消息已读回执
Definition: nim_msglog_helper.h:70
查询到消息历史结果
Definition: nim_msglog_helper.h:22