NIM 跨平台 C++ SDK
|
NIM SDK提供的消息历史接口 更多...
#include <nim_cpp_msglog.h>
类 | |
class | AllMessageTypeList |
class | FullTextSearchOnlineAsyncParam |
class | QueryMsgAsyncParam |
class | QueryMsgByKeywordOnlineParam |
class | QueryMsgByKeywordParam |
class | QueryMsgByOptionsAsyncParam |
class | QueryMsgOnlineAsyncParam |
class | QueryThreadHistoryMsgAsyncParam |
Public 类型 | |
typedef std::function< void(NIMResCode res_code, const std::string &id, nim::NIMSessionType to_type, const QueryMsglogResult &result)> | QueryMsgCallback |
查询消息历史回调模板 | |
typedef std::function< void(const GetMessagesResult &result)> | GetMessagesDynamicallyCallback |
typedef std::function< void(NIMResCode res_code, const std::string &msg_id, const IMMessage &msg)> | QuerySingleMsgCallback |
查询单条消息历史回调模板 | |
typedef std::function< void(NIMResCode res_code, const std::string &uid, nim::NIMSessionType to_type)> | ModifyMultipleMsglogCallback |
修改(多条)消息历史回调模板 | |
typedef ModifyMultipleMsglogCallback | BatchStatusReadCallback |
批量设置消息历史已读状态回调模板 | |
typedef ModifyMultipleMsglogCallback | BatchStatusDeleteCallback |
批量删除消息历史回调模板 | |
typedef ModifyMultipleMsglogCallback | DeleteBySessionTypeCallback |
批量删除消息历史回调模板 | |
typedef std::function< void(NIMResCode res_code, const std::string &msg_id)> | ModifySingleMsglogCallback |
修改(单条)消息历史回调模板 | |
typedef ModifySingleMsglogCallback | SetStatusCallback |
修改消息历史状态回调模板 | |
typedef ModifySingleMsglogCallback | SetSubStatusCallback |
修改消息历史子状态回调模板 | |
typedef ModifySingleMsglogCallback | UpdateLocalExtCallback |
修改消息历史本地扩展字段内容回调模板 | |
typedef ModifySingleMsglogCallback | WriteMsglogCallback |
保存消息历史回调模板 | |
typedef ModifySingleMsglogCallback | DeleteCallback |
删除消息历史回调模板 | |
typedef std::function< void(const DeleteMsglogSelfNotifyParam &)> | DeleteMsglogSelfNotifyCallback |
单向删除消息记录通知回调 | |
typedef std::function< void(NIMResCode res_code)> | DBFunctionCallback |
消息历史变更回调模板 | |
typedef std::function< void(NIMResCode res_code)> | DeleteMsglogSelfCallback |
单向删除消息记录回调 | |
typedef DBFunctionCallback | DeleteAllCallback |
删除全部消息历史回调模板 | |
typedef DBFunctionCallback | DeleteMsgByTimeCallback |
根据时间段删除部分消息历史回调模板 | |
typedef std::function< void(int64_t imported_count, int64_t total_count)> | ImportDbPrgCallback |
导入消息历史回调模板 | |
typedef std::function< void(const MessageStatusChangedResult &)> | MessageStatusChangedCallback |
发送消息已读回执通知回调模板 | |
typedef std::function< void(const NIMResCode, const std::string &)> | DeleteHistoryOnLineAsyncCallback |
删除与某账号(p2p)的所有云端历史记录与漫游消息的回调模板 | |
typedef std::function< void(const NIMResCode, const std::string &, nim::NIMSessionType, uint64_t, const std::string &)> | DeleteHistoryOnLineAsyncExCallback |
删除某一会话的云端的历史记录的回调模板 | |
typedef std::function< void(const std::list< NIMDeleteSessionHistoryMessagesNotifyInfo > &info_list)> | DeleteHistoryOnLineNotifyCallback |
删除会话的云端的历史记录推送的回调模板 | |
typedef std::function< void(const NIMResCode res_code, const std::string &client_id, bool is_root, int reply_count)> | QueryMessageIsThreadRootAsyncCallback |
查询消息是否是thread聊天的根消息回调模板 | |
typedef std::function< void(const NIMResCode res_code, const std::string &client_id, const IMMessage &msg)> | QueryMessageOnlineCallback |
查询某条消息的具体内容回调模板 | |
typedef 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消息历史回调模板 | |
using | FullTextSearchOnlineAsyncCallback = std::function< void(NIMResCode res_code, const QueryMsglogResult &message_list)> |
using | IsMessageIndexEstablishedCallback = std::function< void(bool is_built)> |
判断消息索引表是否已经构建完成 | |
using | BuildMsglogIndexesProgress = std::function< void(uint32_t total, uint32_t built_count)> |
构建消息索引表进度回调 | |
using | BuildMsglogIndexesComplete = std::function< void(NIMBuildingMsglogIndexesCompleteReason reason, const std::string &message)> |
构建消息索引表完成回调 | |
静态 Public 成员函数 | |
static void | UnregMsglogCb () |
static void | RegDeleteMsglogSelfNotify (const DeleteMsglogSelfNotifyCallback &cb) |
static void | RegDeleteHistoryMessagesNotify (const DeleteHistoryOnLineNotifyCallback &cb) |
static bool | QueryMsgByIDAysnc (const std::string &client_msg_id, const QuerySingleMsgCallback &cb, const std::string &json_extension="") |
static bool | QueryMsgAsync (const std::string &account_id, nim::NIMSessionType to_type, int limit_count, int64_t anchor_msg_time, const QueryMsgCallback &cb, const std::string &json_extension="") |
static void | GetMessagesDynamically (const std::string &session_id, nim::NIMSessionType to_type, uint64_t from_time, uint64_t to_time, uint32_t limit_count, const std::string &anchor_client_msg_id, uint64_t anchor_server_msg_id, NIMMsglogSearchDirection direction, const GetMessagesDynamicallyCallback &cb, const std::string &json_extension="") |
static bool | QueryMsgOnlineAsync (const QueryMsgOnlineAsyncParam ¶m, const QueryMsgCallback &cb) |
static bool | QueryMsgOnlineAsync (const std::string &id, nim::NIMSessionType to_type, int limit_count, int64_t from_time, int64_t end_time, int64_t end_msg_id, bool reverse, bool need_save_to_local, const QueryMsgCallback &cb, const std::string &json_extension="") |
static void | QueryMessagesByKeywordAsync (const QueryMsgByKeywordParam ¶m, const QueryMsgCallback &cb) |
根据关键字在本地查询关联消息的内容,与其他关键字查询接口不同,本接口使用全文检索引擎进行查询 如果您有历史数据,请先调用 IsMessageIndexEstablished 判断是否已经同步完成所有旧消息索引 如果尚未同步完成,可使用 BuildMsglogIndexes 来构建历史消息索引,以提供全文检索接口快速查询内容 | |
static void | IsMessageIndexEstablished (const IsMessageIndexEstablishedCallback &cb) |
判断消息索引是否已经建立完成,如果已经建立完成,则可以使用 QueryMessagesByKeywordAsync 接口通过关键字全文检索 | |
static void | BuildMsglogIndexes (uint32_t page_size, const BuildMsglogIndexesProgress &progress, const BuildMsglogIndexesComplete &completion) |
对旧的历史消息构建消息索引表 | |
static void | CancelMsglogIndexesBuilding () |
取消构建消息索引表 | |
static bool | QueryMsgByKeywordOnlineAsync (const MsgLog::QueryMsgByKeywordOnlineParam ¶m, const QueryMsgCallback &cb) |
static bool | QueryMsgOfSpecifiedTypeInASessionAsync (nim::NIMSessionType to_type, const std::string &id, int limit_count, int64_t from_time, int64_t end_time, const std::string &end_client_msg_id, bool reverse, std::list< NIMMessageType > msg_type, const QueryMsgCallback &cb, const std::string &json_extension="") |
static bool | QueryMsgByOptionsAsync (NIMMsgLogQueryRange query_range, const std::list< std::string > &ids, int limit_count, int64_t from_time, int64_t end_time, const std::string &end_client_msg_id, bool reverse, NIMMessageType msg_type, const std::string &search_content, const QueryMsgCallback &cb, const std::string &json_extension="") |
static bool | QueryMsgByOptionsAsyncEx (const QueryMsgByOptionsAsyncParam ¶m, const QueryMsgCallback &cb) |
static bool | BatchStatusReadAsync (const std::string &account_id, nim::NIMSessionType to_type, const BatchStatusReadCallback &cb, const std::string &json_extension="") |
static bool | BatchStatusDeleteAsync (const std::string &account_id, nim::NIMSessionType to_type, const BatchStatusDeleteCallback &cb, const std::string &json_extension="") |
static bool | BatchStatusDeleteAsyncEx (const std::string &account_id, nim::NIMSessionType to_type, bool revert_by_query_online, const BatchStatusDeleteCallback &cb, const std::string &json_extension="") |
static bool | SetStatusAsync (const std::string &msg_id, nim::NIMMsgLogStatus msglog_status, const SetStatusCallback &cb, const std::string &json_extension="") |
static bool | SetSubStatusAsync (const std::string &msg_id, nim::NIMMsgLogSubStatus msglog_sub_status, const SetSubStatusCallback &cb, const std::string &json_extension="") |
static bool | WriteMsglogToLocalAsync (const std::string &talk_id, const IMMessage &msg, bool need_update_session, const WriteMsglogCallback &cb, const std::string &json_extension="") |
static bool | WriteMsglogToLocalAsyncEx (const std::string &talk_id, const IMMessage &msg, bool need_update_session, bool compose_last_msg, const std::list< NIMMessageType > &exclude_msg_type, const WriteMsglogCallback &cb) |
static bool WriteMsglogToLocalAsyncEx(const std::string& talk_id,
const IMMessage& msg,
bool need_update_session,
bool compose_last_msg,
const std::list<NIMMessageType>& exclude_msg_type,
const WriteMsglogCallback& cb) 只往本地消息历史数据库里写入一条消息(如果已存在这条消息,则更新。通常是APP的本地自定义消息,并不会发给服务器) | |
static bool | DeleteBySessionTypeAsync (bool delete_sessions, NIMSessionType to_type, const DeleteBySessionTypeCallback &cb, const std::string &json_extension="") |
static bool | DeleteBySessionTypeAsyncEx (bool delete_sessions, NIMSessionType to_type, bool revert_by_query_online, const DeleteBySessionTypeCallback &cb, const std::string &json_extension="") |
static bool | DeleteAsync (const std::string &session_id, NIMSessionType to_type, const std::string &msg_id, const DeleteCallback &cb, const std::string &json_extension="") |
static bool | DeleteAllAsync (bool delete_sessions, const DeleteAllCallback &cb, const std::string &json_extension="") |
static bool | DeleteAllAsyncEx (bool delete_sessions, bool revert_by_query_online, const DeleteAllCallback &cb, const std::string &json_extension="") |
static bool | DeleteMsgByTimeAsync (const std::string &session_id, NIMSessionType to_type, uint64_t timestamp1, uint64_t timestamp2, const DeleteMsgByTimeCallback &cb, const std::string &json_extension="") |
static bool | DeleteMsgByTimeAsyncEx (const std::string &session_id, NIMSessionType to_type, bool revert_by_query_online, uint64_t timestamp1, uint64_t timestamp2, const DeleteMsgByTimeCallback &cb, const std::string &json_extension="") |
static bool | ExportDbAsync (const std::string &dst_path, const DBFunctionCallback &cb, const std::string &json_extension="") |
static bool | ImportDbAsync (const std::string &src_path, const DBFunctionCallback &cb, const ImportDbPrgCallback &prg_cb, const std::string &json_extension="") |
static void | SendReceiptAsync (const std::string &json_msg, const MessageStatusChangedCallback &cb) |
static void | SendReceiptAsync (const IMMessage &msg, const MessageStatusChangedCallback &cb) |
static bool | QuerySentMessageBeReaded (const IMMessage &msg) |
static bool | QueryReceivedMsgReceiptSent (const IMMessage &msg) |
static void | RegMessageStatusChangedCb (const MessageStatusChangedCallback &cb, const std::string &json_extension="") |
static bool | UpdateLocalExtAsync (const std::string &msg_id, const std::string &local_ext, const UpdateLocalExtCallback &cb, const std::string &json_extension="") |
static void | UnregMsgologCb () |
static bool | ReadAllAsync (const DBFunctionCallback &cb, const std::string &json_extension="") |
static bool | ExportBackupToRemote (const LogsBackupExportInfo &export_info) |
static bool | ImportBackupFromRemote (const LogsBackupImportInfo &import_info) |
static void | CancelImportBackupFromRemote () |
static void | CancelExportBackupToRemote () |
static void | DeleteHistoryOnlineAsync (const std::string &accid, bool delete_roaming, const std::string &json_extension, const DeleteHistoryOnLineAsyncCallback &cb) |
static void | DeleteHistoryOnlineAsync (const std::string &accid, nim::NIMSessionType to_type, bool notify_self, const std::string &ext, const DeleteHistoryOnLineAsyncExCallback &cb) |
static void | DeleteMessageSelfAsync (const IMMessage &msg, const std::string ext, const DeleteMsglogSelfCallback &cb) |
static void | DeleteMessageSelfAsync (const std::list< std::tuple< IMMessage, std::string > > &msgs, const DeleteMsglogSelfCallback &cb) |
static void | QueryMessageIsThreadRoot (const std::string msg_client_id, const QueryMessageIsThreadRootAsyncCallback &cb) |
static void | QueryMessageOnline (const QueryMsgAsyncParam ¶m, const QueryMessageOnlineCallback &cb) |
static void | QueryThreadHistoryMsg (const IMMessage &msg, const QueryThreadHistoryMsgAsyncParam ¶m, const QueryThreadHistoryMsgCallback &cb) |
static void | QueryLocalThreadHistoryMsg (const IMMessage &msg, const QueryMsgCallback &cb) |
查询本地 thread talk 消息历史 | |
static void | FullTextSearchOnlineAsync (const FullTextSearchOnlineAsyncParam ¶m, const FullTextSearchOnlineAsyncCallback &cb) |
static void | QueryUnreadMessages (const std::string &session_id, NIMSessionType to_type, const QueryMsgCallback &cb, const std::string &json_extension="") |
查询某会话下所有未读消息 | |
NIM SDK提供的消息历史接口
批量删除消息历史回调模板
批量设置消息历史已读状态回调模板
using nim::MsgLog::BuildMsglogIndexesComplete = std::function<void(NIMBuildingMsglogIndexesCompleteReason reason, const std::string& message)> |
using nim::MsgLog::BuildMsglogIndexesProgress = std::function<void(uint32_t total, uint32_t built_count)> |
构建消息索引表进度回调
[in] | total | 总消息数 |
[in] | built_count | 已构建消息数 |
typedef std::function<void(NIMResCode res_code)> nim::MsgLog::DBFunctionCallback |
消息历史变更回调模板
删除全部消息历史回调模板
批量删除消息历史回调模板
删除消息历史回调模板
typedef std::function<void(const NIMResCode, const std::string&)> nim::MsgLog::DeleteHistoryOnLineAsyncCallback |
删除与某账号(p2p)的所有云端历史记录与漫游消息的回调模板
typedef std::function<void(const NIMResCode, const std::string&, nim::NIMSessionType, uint64_t, const std::string&)> nim::MsgLog::DeleteHistoryOnLineAsyncExCallback |
删除某一会话的云端的历史记录的回调模板
typedef std::function<void(const std::list<NIMDeleteSessionHistoryMessagesNotifyInfo>& info_list)> nim::MsgLog::DeleteHistoryOnLineNotifyCallback |
删除会话的云端的历史记录推送的回调模板
根据时间段删除部分消息历史回调模板
typedef std::function<void(NIMResCode res_code)> nim::MsgLog::DeleteMsglogSelfCallback |
单向删除消息记录回调
typedef std::function<void(const DeleteMsglogSelfNotifyParam&)> nim::MsgLog::DeleteMsglogSelfNotifyCallback |
单向删除消息记录通知回调
using nim::MsgLog::FullTextSearchOnlineAsyncCallback = std::function<void(NIMResCode res_code, const QueryMsglogResult& message_list)> |
typedef std::function<void(const GetMessagesResult& result)> nim::MsgLog::GetMessagesDynamicallyCallback |
typedef std::function<void(int64_t imported_count, int64_t total_count)> nim::MsgLog::ImportDbPrgCallback |
导入消息历史回调模板
using nim::MsgLog::IsMessageIndexEstablishedCallback = std::function<void(bool is_built)> |
判断消息索引表是否已经构建完成
[in] | is_built | 是否已构建完成,返回 true 时表示已经构建完成可以通过全文检索 API 进行检索,为 false 时表示还未构建完成,建议使用历史搜索 API |
typedef std::function<void(const MessageStatusChangedResult&)> nim::MsgLog::MessageStatusChangedCallback |
发送消息已读回执通知回调模板
typedef std::function<void(NIMResCode res_code, const std::string& uid, nim::NIMSessionType to_type)> nim::MsgLog::ModifyMultipleMsglogCallback |
修改(多条)消息历史回调模板
typedef std::function<void(NIMResCode res_code, const std::string& msg_id)> nim::MsgLog::ModifySingleMsglogCallback |
修改(单条)消息历史回调模板
typedef std::function<void(const NIMResCode res_code, const std::string& client_id, bool is_root, int reply_count)> nim::MsgLog::QueryMessageIsThreadRootAsyncCallback |
查询消息是否是thread聊天的根消息回调模板
typedef std::function<void(const NIMResCode res_code, const std::string& client_id, const IMMessage& msg)> nim::MsgLog::QueryMessageOnlineCallback |
查询某条消息的具体内容回调模板
typedef std::function<void(NIMResCode res_code, const std::string& id, nim::NIMSessionType to_type, const QueryMsglogResult& result)> nim::MsgLog::QueryMsgCallback |
查询消息历史回调模板
typedef std::function<void(NIMResCode res_code, const std::string& msg_id, const IMMessage& msg)> nim::MsgLog::QuerySingleMsgCallback |
查询单条消息历史回调模板
typedef std::function< void(const NIMResCode res_code, const IMMessage& root_msg, int total, uint64_t last_msg_time, const std::list<IMMessage>& msg_list)> nim::MsgLog::QueryThreadHistoryMsgCallback |
分页查询thread talk消息历史回调模板
修改消息历史状态回调模板
修改消息历史子状态回调模板
修改消息历史本地扩展字段内容回调模板
保存消息历史回调模板
|
static |
删除某个会话的全部聊天记录
[in] | account_id | 要删除会话的id,account_id/uid或者tid |
[in] | to_type | 会话类型,双人0,群组1 (见nim_msglog_def.h) |
[in] | cb | 操作结果的回调函数 |
[in] | json_extension | json扩展参数(备用,目前不需要) |
|
static |
删除某个会话的全部聊天记录
[in] | account_id | 要删除会话的id,account_id/uid或者tid |
[in] | to_type | 会话类型,双人0,群组1 (见nim_msglog_def.h) |
[in] | revert_by_online_query | 是否可以通过服务端查询消息记录(含入库选项)进行恢复,true:是,false:否 |
[in] | cb | 操作结果的回调函数 |
[in] | json_extension | json扩展参数(备用,目前不需要) |
|
static |
批量设置已读状态
[in] | account_id | 查询id,account_id/uid或者tid |
[in] | to_type | 会话类型,双人0,群组1 (见nim_msglog_def.h) |
[in] | json_extension | json扩展参数(备用,目前不需要) |
[in] | cb | 操作结果的回调函数 |
|
static |
对旧的历史消息构建消息索引表
page_size | 每页同步多少条消息,建议最小不低于 1000,最大不超过 5000 |
progress | 构建消息索引表进度回调 |
completion | 构建消息索引表完成回调 |
|
static |
取消导出本地消息记录到云端
|
static |
取消导入已备份在云端的消息记录
|
static |
取消构建消息索引表
|
static |
删除全部消息历史
[in] | delete_sessions | 是否删除所有会话列表项(即全部最近联系人)。 ture则删除,并通过nim_session_reg_change_cb注册的回调通知上层kNIMSessionCommandRemoveAll事件(不会触发每个会话项的kNIMSessionCommandRemove事件); false则不删除,并将所有会话项的最后一条消息的状态kNIMSessionMsgStatus设置为已删除状态,并通过nim_session_reg_change_cb注册的回调通知上层kNIMSessionCommandAllMsgDeleted事件(不会触发每个会话项的kNIMSessionCommandUpdate事件,避免频繁通知上层)。 |
[in] | json_extension | json扩展参数(备用,目前不需要) |
[in] | cb | 操作结果的回调函数 |
|
static |
删除全部消息历史
[in] | delete_sessions | 是否删除所有会话列表项(即全部最近联系人)。 ture则删除,并通过nim_session_reg_change_cb注册的回调通知上层kNIMSessionCommandRemoveAll事件(不会触发每个会话项的kNIMSessionCommandRemove事件); false则不删除,并将所有会话项的最后一条消息的状态kNIMSessionMsgStatus设置为已删除状态,并通过nim_session_reg_change_cb注册的回调通知上层kNIMSessionCommandAllMsgDeleted事件(不会触发每个会话项的kNIMSessionCommandUpdate事件,避免频繁通知上层)。 |
[in] | revert_by_online_query | 是否可以通过服务端查询消息记录(含入库选项)进行恢复,true:是,false:否 |
[in] | json_extension | json扩展参数(备用,目前不需要) |
[in] | cb | 操作结果的回调函数 |
|
static |
删除指定一条消息
[in] | session_id | 会话id,对方的account id或者群组tid |
[in] | to_type | 会话类型 |
[in] | msg_id | 消息id |
[in] | json_extension | json扩展参数(备用,目前不需要) |
[in] | cb | 操作结果的回调函数 |
|
static |
删除指定会话类型的所有消息
[in] | delete_sessions | 是否删除会话 |
[in] | to_type | 会话类型 |
[in] | json_extension | json扩展参数(备用,目前不需要) |
[in] | cb | 操作结果的回调函数 |
[in] | json_extension | json扩展参数(备用,目前不需要) |
|
static |
删除指定会话类型的所有消息
[in] | delete_sessions | 是否删除会话 |
[in] | to_type | 会话类型 |
[in] | revert_by_online_query | 是否可以通过服务端查询消息记录(含入库选项)进行恢复,true:是,false:否 |
[in] | json_extension | json扩展参数(备用,目前不需要) |
[in] | cb | 操作结果的回调函数 |
[in] | json_extension | json扩展参数(备用,目前不需要) |
|
static |
删除与某账号的所有云端历史记录与漫游消息(p2p), 不删除本地消息
[in] | accid | 对方的accid |
[in] | delete_roaming | 是否同时删除所有的漫游消息 true : 是 false : 否 |
[in] | json_extension | json扩展参数(备用,目前不需要) |
[in] | cb | 操作结果的回调函数 |
|
static |
删除某一会话的云端的历史记录[v8.0.0], 删除本地消息
[in] | accid | 对方的accid(p2p:accid team:tid) |
[in] | to_type | 会话类型,双人0,群组1 (见nim_msglog_def.h) |
[in] | notify_self | 是否通知其它终端 |
[in] | ext | 扩展字段 |
[in] | cb | 操作结果的回调函数 |
|
static |
单向删除某条消息记录(同时删除本地与云端)
[in] | msg | 要删除的消息 |
[in] | ext | 用户自定义扩展字段 |
[in] | cb | 操作结果的回调函数 |
|
static |
单向删除多条消息记录(同时删除本地与云端)
[in] | msg | 要删除的消息及自定义扩展字段 |
[in] | cb | 操作结果的回调函数 |
|
static |
根据时间段删除部分会话的历史消息
[in] | session_id | 要删除消息的会话ID |
[in] | to_type | 要删除消息的会话类型 |
[in] | 单位ms | timestamp1 与 timestamp2 组成一个时间段,SDK 内部会判断大小调整入参顺序 |
[in] | 单位ms | timestamp2 与 timestamp1 组成一个时间段,SDK 内部会判断大小调整入参顺序 |
[in] | json_extension | json扩展参数(备用,目前不需要) |
[in] | cb | 操作结果的回调函数 |
|
static |
根据时间段删除部分会话的历史消息
[in] | session_id | 要删除消息的会话ID |
[in] | to_type | 要删除消息的会话类型 |
[in] | revert_by_online_query | 是否可以通过服务端查询消息记录(含入库选项)进行恢复,true:是,false:否 |
[in] | 单位ms | timestamp1 与 timestamp2 组成一个时间段,SDK 内部会判断大小调整入参顺序 |
[in] | 单位ms | timestamp2 与 timestamp1 组成一个时间段,SDK 内部会判断大小调整入参顺序 |
[in] | json_extension | json扩展参数(备用,目前不需要) |
[in] | cb | 操作结果的回调函数 |
|
static |
导出本地消息记录到云端
[in] | export_info | 导出需要的参数参考LogsBackupExportInfo定义 |
|
static |
导出整个消息历史DB文件(不包括系统消息历史)
[in] | dst_path | 导出时保存的目标全路径(UTF-8编码)。 |
[in] | json_extension | json扩展参数(备用,目前不需要) |
[in] | cb | 操作结果的回调函数 |
|
static |
在线全文检索
[in] | param | 全文检索参数 |
[in] | cb | 全文检索结果回调函数 |
|
static |
查询历史消息,基于本地可信时间段信息来动态判断获取消息的途径
[in] | session_id | 会话id |
[in] | to_type | 会话类型, 双人0,群组1, 超大群5 (见nim_msglog_def.h) |
[in] | from_time | 开始时间, 包含 |
[in] | to_time | 结束时间, 大于from_time, 0表示当前时间; 只有在direction为kForward且anchor_client_msg_id不为空时才包含 |
[in] | limit_count | 查询数量 |
[in] | anchor_client_msg_id | 查询起始的客户端消息id, 查询结果不包括这条消息 |
[in] | anchor_server_msg_id | 查询起始的服务器消息id, 查询结果不包括这条消息 |
[in] | direction | 查询方向 |
[in] | cb | 查询消息的回调函数 |
[in] | json_extension | json扩展参数(备用,目前不需要) |
|
static |
导入已备份在云端的消息记录
[in] | import_info | 导入需要的参数参考LogsBackupImportInfo定义 |
|
static |
导入消息历史DB文件(不包括系统消息历史)。先验证是否自己的消息历史文件和DB加密密钥(见nim_client_def.h里的kNIMDataBaseEncryptKey),如果验证不通过,则不导入。
[in] | src_path | 导入源文件的全路径(UTF-8编码)。 |
[in] | json_extension | json扩展参数(备用,目前不需要) |
[in] | cb | 操作结果的回调函数 |
[in] | prg_cb | 导入进度的回调函数 |
|
static |
判断消息索引是否已经建立完成,如果已经建立完成,则可以使用 QueryMessagesByKeywordAsync 接口通过关键字全文检索
cb | 是否已经建立完成的回调函数 |
|
static |
查询本地 thread talk 消息历史
msg | 要查询的 thread 根消息 |
cb | 查询结果的回调函数 |
|
static |
查询某条消息是否为thread聊天的根消息
[in] | msg_client_id | 要查询的消息的客户端ID |
[in] | cb | 操作结果的回调函数 |
|
static |
查询某条消息的具体内容一般用在thread talk 场景中
[in] | param | 要查询的消息的相关参数,可以在msglog.threadinfo中得到 |
[in] | cb | 查询结果的回调函数 |
|
static |
根据关键字在本地查询关联消息的内容,与其他关键字查询接口不同,本接口使用全文检索引擎进行查询 如果您有历史数据,请先调用 IsMessageIndexEstablished 判断是否已经同步完成所有旧消息索引 如果尚未同步完成,可使用 BuildMsglogIndexes 来构建历史消息索引,以提供全文检索接口快速查询内容
param | 查询参数 |
cb | 查询消息的回调函数 |
|
static |
查询本地消息
[in] | account_id | 查询id,account_id/uid或者tid |
[in] | to_type | 会话类型,双人0,群组1 (见nim_msglog_def.h) |
[in] | limit_count | 一次查询数量,建议20 |
[in] | anchor_msg_time | 作为此次查询的定位点的消息历史的消息时间戳(上次查询最后一条消息的时间戳,按指定的时间的顺序起查,默认为逆序,2.4.0之前命名为last_name) |
[in] | json_extension | json扩展参数(备用,目前不需要) |
[in] | cb | 查询本地消息的回调函数 |
|
static |
根据消息ID查询本地(单条)消息
[in] | client_msg_id | 客户端消息ID |
[in] | json_extension | json扩展参数(备用,目前不需要) |
[in] | cb | 查询本地消息的回调函数 |
|
static |
在线查询消息(不包括系统消息)
[in] | param | 查询参数 |
[in] | cb | 在线查询消息的回调函数 |
|
static |
根据指定条件查询本地消息,使用此接口可以完成全局搜索等功能,具体请参阅开发手册 http://dev.netease.im/docs/product/IM%E5%8D%B3%E6%97%B6%E9%80%9A%E8%AE%AF/SDK%E5%BC%80%E5%8F%91%E9%9B%86%E6%88%90/Windows%E5%BC%80%E5%8F%91%E9%9B%86%E6%88%90/%E5%8E%86%E5%8F%B2%E8%AE%B0%E5%BD%95
[in] | query_range | 消息历史的检索范围(目前暂不支持某些范围的组合检索,详见NIMMsgLogQueryRange说明) |
[in] | ids | 会话id(对方的account id或者群组tid)的集合,目前暂不支持多个的组合检索,详见NIMMsgLogQueryRange说明 |
[in] | limit_count | 本次查询的消息条数上限(最多100条) |
[in] | from_time | 起始时间点,单位:毫秒 |
[in] | end_time | 结束时间点,单位:毫秒 |
[in] | end_client_msg_id | 结束查询的最后一条消息的end_client_msg_id(不包含在查询结果中) |
[in] | reverse | true:反向查询(按时间正序起查,正序排列),false:按时间逆序起查,逆序排列(建议默认为false) |
[in] | msg_type | 检索的消息类型(目前只支持kNIMMessageTypeText、kNIMMessageTypeImage和kNIMMessageTypeFile这三种类型消息) |
[in] | search_content | 检索文本(目前只支持kNIMMessageTypeText和kNIMMessageTypeFile这两种类型消息的文本关键字检索,即支持文字消息和文件名的检索。如果合并检索,需使用未知类型消息kNIMMessageTypeUnknown) |
[in] | cb | 在线查询消息的回调函数 |
[in] | json_extension | json扩展参数(备用,目前不需要) |
|
static |
根据指定条件查询本地消息,使用此接口可以完成全局搜索等功能,具体请参阅开发手册 http://dev.netease.im/docs/product/IM%E5%8D%B3%E6%97%B6%E9%80%9A%E8%AE%AF/SDK%E5%BC%80%E5%8F%91%E9%9B%86%E6%88%90/Windows%E5%BC%80%E5%8F%91%E9%9B%86%E6%88%90/%E5%8E%86%E5%8F%B2%E8%AE%B0%E5%BD%95
[in] | param | 查询参数 |
[in] | cb | 在线查询消息的回调函数 |
|
static |
根据指定条件在一个会话中查询指定单个或多个类型的本地消息
[in] | to_type | 会话类型,双人0,群组1 (nim_msglog_def.h) |
[in] | id | 查询id,对方的account id或者群组tid。 |
[in] | limit_count | 本次查询的消息条数上限(最多100条) |
[in] | from_time | 起始时间点,单位:毫秒,当为 0 时将不作为过滤条件 |
[in] | end_time | 结束时间点,单位:毫秒,当为 0 时将不作为过滤条件 |
[in] | end_client_msg_id | 作为查询结果的过滤条件,无论正向、反向查询,当遇到此消息 ID 时均跳过后续的消息,且不将该 ID 对应的消息包含在查询结果中 |
[in] | reverse | 查询方向,为 true 时对时间段内的消息从新到旧查询,查询结果按消息时间降序排列,为 false 时对时间段内的消息从旧到新查询,查询结果按消息时间升序排列 |
[in] | msg_type | 检索的消息类型 |
[in] | json_extension | json 扩展参数(备用,目前不需要) |
[in] | cb | 在线查询消息的回调函数 |
|
static |
在线查询消息(不包括系统消息)
[in] | param | 查询参数 |
[in] | cb | 在线查询消息的回调函数 |
|
static |
在线查询消息(不包括系统消息)
[in] | id | 查询id,对方的account id或者群组tid。 |
[in] | to_type | 会话类型,双人0,群组1 (nim_msglog_def.h) |
[in] | limit_count | 本次查询的消息条数上限(最多100条) |
[in] | from_time | 起始时间点,单位:毫秒 |
[in] | end_time | 结束时间点,单位:毫秒 |
[in] | end_msg_id | 结束查询的最后一条消息的server_msg_id(不包含在查询结果中) |
[in] | reverse | true:反向查询(按时间正序起查,正序排列),false:按时间逆序起查,逆序排列(建议默认为false) |
[in] | need_save_to_local | true: 将在线查询结果保存到本地,false: 不保存 |
[in] | json_extension | json扩展参数(备用,目前不需要) |
[in] | cb | 在线查询消息的回调函数 |
查询收到的消息是否已经发送过已读回执
[in] | msg | 消息。 |
查询自己发送的消息是否被对方已读
[in] | msg | 消息。 |
|
static |
分页查询thread talk消息历史
[in] | param | 要查询的消息的相关参数,可以在msglog.threadinfo中得到 |
[in] | cb | 查询结果的回调函数 |
|
static |
查询某会话下所有未读消息
session_id | 会话 ID |
to_type | 会话类型 |
cb | 查询结果回调函数 |
json_extension | json 扩展参数(备用,目前不需要) |
|
static |
全部未读消息历史标记为已读
[in] | json_extension | json扩展参数(备用,目前不需要) |
[in] | cb | 操作结果的回调函数 |
|
static |
注册删除某一会话的云端的历史记录通知回调[v8.0.0]
[in] | cb | 删除某一会话的云端的历史记录通知回调 |
|
static |
注册单向删除消息记录通知回调
[in] | cb | 单向删除消息记录通知回调 |
|
static |
(全局回调)注册全局的消息状态变更通知(目前只支持已读状态的通知)
[in] | cb | 回调函数 |
[in] | json_extension | json扩展参数(备用,目前不需要) |
|
static |
发送消息已读回执
[in] | msg | 已读消息 |
[in] | cb | 操作结果的回调函数 |
|
static |
发送消息已读回执
[in] | json_msg | 已读消息json string。 |
[in] | cb | 操作结果的回调函数 |
|
static |
设置消息状态
[in] | msg_id | 消息id |
[in] | msglog_status | 消息状态枚举值 |
[in] | json_extension | json扩展参数(备用,目前不需要) |
[in] | cb | 操作结果的回调函数 |
|
static |
设置消息子状态
[in] | msg_id | 消息id |
[in] | msglog_sub_status | 消息子状态枚举值 |
[in] | json_extension | json扩展参数(备用,目前不需要) |
[in] | cb | 操作结果的回调函数 |
|
static |
反注册Msglog提供的所有回调
|
static |
反注册Msglog提供的所有回调
|
static |
更新本地消息扩展字段内容
[in] | msg_id | 消息id |
[in] | local_ext | 本地扩展字段内容 |
[in] | json_extension | json扩展参数(备用,目前不需要) |
[in] | cb | 操作结果的回调函数 |
|
static |
只往本地消息历史数据库里写入一条消息(如果已存在这条消息,则更新。通常是APP的本地自定义消息,并不会发给服务器)
[in] | account_id | 会话id,对方的account id或者群组tid |
[in] | msg | 消息内容 |
[in] | need_update_session | 是否更新会话列表(一般最新一条消息有这个需求) |
[in] | json_extension | json扩展参数(备用,目前不需要) |
[in] | cb | 操作结果的回调函数 |
|
static |
static bool WriteMsglogToLocalAsyncEx(const std::string& talk_id, const IMMessage& msg, bool need_update_session, bool compose_last_msg, const std::list<NIMMessageType>& exclude_msg_type, const WriteMsglogCallback& cb) 只往本地消息历史数据库里写入一条消息(如果已存在这条消息,则更新。通常是APP的本地自定义消息,并不会发给服务器)
talk_id | 会话id,对方的account id或者群组tid |
msg | 消息内容 |
need_update_session | 是否更新会话列表(一般最新一条消息有这个需求) |
compose_last_msg | 如果消息历史中有该会话的消息,是否将该会话最后一条消息随会话变更上报,true 为携带,否则不携带 |
exclude_msg_type | 如果 compose_last_msg = true,则可根据需要排除指定最后一条消息的类型 |
cb | 操作结果的回调函数 |