NIMChatManager Protocol Reference

Conforms to NSObject
Declared in NIMChatManagerProtocol.h

Overview

聊天协议

– sendMessage:toSession:error: required method

发送消息

- (BOOL)sendMessage:(NIMMessage *)message toSession:(NIMSession *)session error:(NSError *__nullable *)error

Parameters

message

消息

session

接受方

error

错误 如果在准备发送消息阶段发生错误,这个error会被填充相应的信息

Return Value

是否调用成功,这里返回的 result 只是表示当前这个函数调用是否成功,需要后续的回调才能够判断消息是否已经发送至服务器

Discussion

发送消息

Declared In

NIMChatManagerProtocol.h

– sendMessage:toSession:completion: required method

异步发送消息

- (void)sendMessage:(NIMMessage *)message toSession:(NIMSession *)session completion:(__nullable NIMChatManagerBlock)completion

Parameters

message

消息

session

接收方

completion

发送完成后的回调,这里的回调完成只表示当前这个函数调用完成,需要后续的回调才能判断消息是否已经发送至服务器

Discussion

异步发送消息

Declared In

NIMChatManagerProtocol.h

– cancelSendingMessage: required method

取消正在发送的消息

- (BOOL)cancelSendingMessage:(NIMMessage *)message

Parameters

message

目标消息

Return Value

是否调用成功

Discussion

取消正在发送的消息

Declared In

NIMChatManagerProtocol.h

– resendMessage:error: required method

重发消息

- (BOOL)resendMessage:(NIMMessage *)message error:(NSError *__nullable *)error

Parameters

message

重发消息

error

错误 如果在准备发送消息阶段发生错误,这个error会被填充相应的信息

Return Value

是否调用成功,这里返回的 result 只是表示当前这个函数调用是否成功,需要后续的回调才能够判断消息是否已经发送至服务器

Discussion

重发消息

Declared In

NIMChatManagerProtocol.h

– forwardMessage:toSession:error: required method

转发消息

- (BOOL)forwardMessage:(NIMMessage *)message toSession:(NIMSession *)session error:(NSError *__nullable *)error

Parameters

message

消息

session

接收方

error

错误 如果在准备发送消息阶段发生错误,这个error会被填充相应的信息

Return Value

是否调用成功,这里返回的 result 只是表示当前这个函数调用是否成功,需要后续的回调才能够判断消息是否已经发送至服务器

Discussion

转发消息

Declared In

NIMChatManagerProtocol.h

– sendMessageReceipt:completion: required method

发送已读回执 (P2P)

- (void)sendMessageReceipt:(NIMMessageReceipt *)receipt completion:(nullable NIMSendMessageReceiptBlock)completion

Parameters

receipt

已读回执

completion

完成回调

Discussion

发送已读回执 (P2P)

此接口仅适用于 P2P 消息,群消息已读回执使用 sendTeamMessageReceipts:completion 如果已有比当前已读回执时间戳更大的已读回执已确认,则接口返回成功。

Declared In

NIMChatManagerProtocol.h

– sendTeamMessageReceipts:completion: required method

发送已读回执 (Team 批量接口)

- (void)sendTeamMessageReceipts:(NSArray<NIMMessageReceipt*> *)receipts completion:(nullable NIMSendTeamMessageReceiptsBlock)completion

Parameters

receipts

已读回执

completion

完成回调

Discussion

发送已读回执 (Team 批量接口)

此接口仅适用于 Team 消息。

Declared In

NIMChatManagerProtocol.h

– refreshTeamMessageReceipts: required method

刷新群组消息已读、未读数量

- (void)refreshTeamMessageReceipts:(NSArray<NIMMessage*> *)messages

Parameters

messages

要查询的消息集合

Discussion

刷新群组消息已读、未读数量

消息已读变化后,会通过 NIMChatManager 的代理 onRecvMessageReceipts: 回调给上层 刷新的消息必须为群组消息

Declared In

NIMChatManagerProtocol.h

– queryMessageReceiptDetail:completion: required method

查询群组消息回执详情

- (void)queryMessageReceiptDetail:(NIMMessage *)message completion:(NIMQueryReceiptDetailBlock)completion

Parameters

message

要查询的消息

completion

完成后的回调

Discussion

查询群组消息回执详情

详情包括已读人数的 id 列表和未读人数的 id 列表 查询详情对象不会跟着回执人数变化而变化,如果要获取最新的详情,必须再次调用此接口

Declared In

NIMChatManagerProtocol.h

– queryMessageReceiptDetail:accountSet:completion: required method

查询群组消息指定用户的回执详情

- (void)queryMessageReceiptDetail:(NIMMessage *)message accountSet:(NSSet *)accountSet completion:(NIMQueryReceiptDetailBlock)completion

Parameters

message

待查询的消息

accountSet

指定的用户的账号组成的NSSet

Return Value

该消息的已读、未读账号列表

Discussion

查询群组消息指定用户的回执详情

Declared In

NIMChatManagerProtocol.h

– localMessageReceiptDetail: required method

从本地数据库查询单条群组消息已读、未读账号列表 注意!!!:这里获取的数据通常比离线前的列表信息更陈旧

- (nullable NIMTeamMessageReceiptDetail *)localMessageReceiptDetail:(NIMMessage *)message

Parameters

message

待查询的消息

Return Value

该消息的已读、未读账号列表

Discussion

从本地数据库查询单条群组消息已读、未读账号列表 注意!!!:这里获取的数据通常比离线前的列表信息更陈旧

Declared In

NIMChatManagerProtocol.h

– localMessageReceiptDetail:accountSet: required method

从本地数据库查询单条群组消息在指定用户中的已读、未读账号列表(同步接口) 注意!!!:这里获取的数据通常比离线前的列表信息更陈旧

- (nullable NIMTeamMessageReceiptDetail *)localMessageReceiptDetail:(NIMMessage *)message accountSet:(NSSet *)accountSet

Parameters

message

待查询的消息

accountSet

指定的用户的账号组成的NSSet

Return Value

该消息的已读、未读账号列表

Discussion

从本地数据库查询单条群组消息在指定用户中的已读、未读账号列表(同步接口) 注意!!!:这里获取的数据通常比离线前的列表信息更陈旧

Declared In

NIMChatManagerProtocol.h

– revokeMessage:completion: required method

撤回消息,不含推送信息

- (void)revokeMessage:(NIMMessage *)message completion:(nullable NIMRevokeMessageBlock)completion

Parameters

message

需要被撤回的消息

completion

完成回调

Discussion

撤回消息,不含推送信息

消息计入未读数

Declared In

NIMChatManagerProtocol.h

– revokeMessage:apnsContent:apnsPayload:shouldBeCounted:completion: required method

撤回消息

- (void)revokeMessage:(NIMMessage *)message apnsContent:(nullable NSString *)apnsContent apnsPayload:(nullable NSDictionary *)apnsPayload shouldBeCounted:(BOOL)should completion:(nullable NIMRevokeMessageBlock)completion

Parameters

message

需要被撤回的消息

apnsContent

云信推送内容,长度限制500字

apnsPayload

云信推送payload信息,长度限制 2K

should

是否计入未读数

completion

完成回调

Discussion

撤回消息

Declared In

NIMChatManagerProtocol.h

– revokeMessage:option:completion: required method

撤回消息

- (void)revokeMessage:(NIMMessage *)message option:(NIMRevokeMessageOption *)option completion:(nullable NIMRevokeMessageBlock)completion

Parameters

message

需要被撤回的消息

option

撤回的配置选项

completion

完成回调

Discussion

撤回消息

消息计入未读数

Declared In

NIMChatManagerProtocol.h

– fetchMessageAttachment:error: required method

收取消息附件

- (BOOL)fetchMessageAttachment:(NIMMessage *)message error:(NSError *__nullable *)error

Parameters

message

需要收取附件的消息

error

错误

Return Value

是否调用成功

Discussion

收取消息附件

附件包括:图片消息的图片缩略图,视频消息的视频缩略图,音频消息的音频文件,文件消息的文件以及自定义消息中的自定义文件 个人和群组消息 SDK 会在收到该消息时自动调用本接口,自动下载除 “文件消息的文件” 外的所有附件内容

Declared In

NIMChatManagerProtocol.h

– cancelFetchingMessageAttachment: required method

取消收取消息附件

- (void)cancelFetchingMessageAttachment:(NIMMessage *)message

Parameters

message

需要取消收取附件的消息

Discussion

取消收取消息附件

附件包括:图片消息的图片缩略图,视频消息的视频缩略图,音频消息的音频文件,文件消息的文件以及自定义消息中的自定义文件 个人和群组消息。SDK 不会触发任何下载回调

Declared In

NIMChatManagerProtocol.h

– messageInTransport: required method

消息是否正在传输 (发送/接受附件)

- (BOOL)messageInTransport:(NIMMessage *)message

Parameters

message

消息

Return Value

是否正在传输

Discussion

消息是否正在传输 (发送/接受附件)

Declared In

NIMChatManagerProtocol.h

– messageTransportProgress: required method

传输消息的进度 (发送/接受附件)

- (float)messageTransportProgress:(NIMMessage *)message

Parameters

message

消息

Return Value

正在传输的消息进度,如果消息不在传输,则返回0

Discussion

传输消息的进度 (发送/接受附件)

Declared In

NIMChatManagerProtocol.h

– addDelegate: required method

添加聊天委托

- (void)addDelegate:(id<NIMChatManagerDelegate>)delegate

Parameters

delegate

聊天委托

Discussion

添加聊天委托

Declared In

NIMChatManagerProtocol.h

– removeDelegate: required method

移除聊天委托

- (void)removeDelegate:(id<NIMChatManagerDelegate>)delegate

Parameters

delegate

聊天委托

Discussion

移除聊天委托

Declared In

NIMChatManagerProtocol.h