#import <IEMChatManager.h>
聊天相关操作代理协议。
消息都是从本地数据库中加载,不是从服务端加载。
◆ ackConversationRead:completion:
- (void) ackConversationRead: |
|
(NSString *_Nonnull) |
conversationId |
completion: |
|
(void(^)(EMError *_Nullable aError)) |
aCompletionBlock |
|
|
| |
|
required |
发送会话已读回执。
该方法仅适用于单聊会话。
发送会话已读回执会通知服务器将指定的会话未读消息数置为 0。调用该方法后对方会收到 onConversationRead 回调。
对话方(包含多端多设备)将会在回调方法 EMChatManagerDelegate onConversationRead(String, String) 中接收到回调。
为了减少调用次数,我们建议在进入聊天页面有大量未读消息时调用该方法,在聊天过程中调用 sendMessageReadAck
方法发送消息已读回执。
异步方法。
- 参数
-
conversationId | 会话 ID。 |
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ addDelegate:delegateQueue:
- (void) addDelegate: |
|
(id< EMChatManagerDelegate > _Nullable) |
aDelegate |
delegateQueue: |
|
(dispatch_queue_t _Nullable) |
aQueue |
|
|
| |
|
required |
添加回调代理。
- 参数
-
aDelegate | 实现代理协议的对象。 |
aQueue | 执行代理方法的队列。若在主线程上运行 app,将该参数设置为空。 |
◆ addReaction:toMessage:completion:
- (void) addReaction: |
|
(NSString *) |
reaction |
toMessage: |
|
(NSString *) |
messageId |
completion: |
|
(nullable void(^)(EMError *_Nullable)) |
completion |
|
|
| |
|
required |
添加 Reaction。
- 参数
-
reaction | Reaction 内容。 |
messageId | 消息 ID。 |
completion | 该方法完成的回调。如果有错误会包含错误信息。 |
◆ asyncFetchGroupMessageAcksFromServer:groupId:startGroupAckId:pageSize:completion:
- (void) asyncFetchGroupMessageAcksFromServer: |
|
(NSString *_Nonnull) |
aMessageId |
groupId: |
|
(NSString *_Nonnull) |
aGroupId |
startGroupAckId: |
|
(NSString *_Nonnull) |
aGroupAckId |
pageSize: |
|
(int) |
aPageSize |
completion: |
|
(void(^)(EMCursorResult< EMGroupMessageAck * > *_Nullable aResult, EMError *_Nullable error, int totalCount)) |
aCompletionBlock |
|
|
| |
|
required |
从服务器获取指定群消息的已读回执。
可调用该方法了解有多少群成员阅读了指定的群消息。
异步方法。
- 参数
-
aMessageId | 要获取已读回执的消息 ID。 |
aGroupId | 群组 ID。 |
aGroupAckId | 群消息已读回执 ID。 |
aPageSize | 每页期望获取的回执条数。 |
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ asyncFetchHistoryMessagesFromServer:conversationType:startMessageId:fetchDirection:pageSize:completion:
- (void) asyncFetchHistoryMessagesFromServer: |
|
(NSString *_Nonnull) |
aConversationId |
conversationType: |
|
(EMConversationType) |
aConversationType |
startMessageId: |
|
(NSString *_Nullable) |
aStartMessageId |
fetchDirection: |
|
(EMMessageFetchHistoryDirection) |
direction |
pageSize: |
|
(int) |
aPageSize |
completion: |
|
(void(^)(EMCursorResult< EMChatMessage * > *_Nullable aResult, EMError *_Nullable aError)) |
aCompletionBlock |
|
|
| |
|
required |
从服务器获取指定会话的消息。
异步方法。
- 参数
-
aConversationId | 会话 ID。 |
aConversationType | 会话类型。 |
aStartMessageId | 查询的起始消息 ID。若该参数为空,SDK 从最新一条消息开始获取。 |
direction | 消息搜索方向。详见 EMMessageFetchHistoryDirection 。 |
aPageSize | 每页期望获取的消息条数。取值范围为 [1,50]。 |
aCompletionBlock | 该方法完成调用的回调。 |
◆ asyncFetchHistoryMessagesFromServer:conversationType:startMessageId:pageSize:completion:
- (void) asyncFetchHistoryMessagesFromServer: |
|
(NSString *_Nonnull) |
aConversationId |
conversationType: |
|
(EMConversationType) |
aConversationType |
startMessageId: |
|
(NSString *_Nullable) |
aStartMessageId |
pageSize: |
|
(int) |
aPageSize |
completion: |
|
(void(^)(EMCursorResult< EMChatMessage * > *_Nullable aResult, EMError *_Nullable aError)) |
aCompletionBlock |
|
|
| |
|
required |
从服务器获取指定会话的消息。
异步方法。
- 参数
-
aConversationId | 会话 ID。 |
aConversationType | 会话类型。 |
aStartMessageId | 查询的起始消息 ID。 |
aPageSize | 每页期望获取的消息条数。 |
aCompletionBlock | 该方法完成调用的回调。 |
◆ deleteConversation:isDeleteMessages:completion:
- (void) deleteConversation: |
|
(NSString *_Nonnull) |
aConversationId |
isDeleteMessages: |
|
(BOOL) |
aIsDeleteMessages |
completion: |
|
(void(^)(NSString *_Nullable aConversationId, EMError *_Nullable aError)) |
aCompletionBlock |
|
|
| |
|
required |
从本地数据库中删除一个会话。
- 参数
-
aConversationId | 会话 ID。 |
aIsDeleteMessages | 是否删除会话中的消息。
|
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ deleteConversations:isDeleteMessages:completion:
- (void) deleteConversations: |
|
(NSArray< EMConversation * > *_Nullable) |
aConversations |
isDeleteMessages: |
|
(BOOL) |
aIsDeleteMessages |
completion: |
|
(void(^)(EMError *_Nullable aError)) |
aCompletionBlock |
|
|
| |
|
required |
删除一组会话。
- 参数
-
aConversations | 会话列表。 |
aIsDeleteMessages | 是否删除会话中的消息。
|
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ deleteMessagesBefore:completion:
- (void) deleteMessagesBefore: |
|
(NSUInteger) |
aTimestamp |
completion: |
|
(void(^)(EMError *error)) |
aCompletion |
|
|
| |
|
required |
删除指定时间戳之前的本地历史消息。
异步方法。
- 参数
-
aTimestamp | 指定的消息时间戳,单位为毫秒。时间戳之前的本地消息会被删除。 |
aCompletion | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ deleteServerConversation:conversationType:isDeleteServerMessages:completion:
- (void) deleteServerConversation: |
|
(NSString *_Nonnull) |
aConversationId |
conversationType: |
|
(EMConversationType) |
aConversationType |
isDeleteServerMessages: |
|
(BOOL) |
aIsDeleteServerMessages |
completion: |
|
(void(^)(NSString *_Nullable aConversationId, EMError *_Nullable aError)) |
aCompletionBlock |
|
|
| |
|
required |
删除服务器会话。
- 参数
-
aConversationId | 会话 ID。 |
aConversationType | 会话类型。 |
aIsDeleteMessages | 是否同时删除会话中的消息。
|
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ downloadMessageAttachment:progress:completion:
- (void) downloadMessageAttachment: |
|
(EMChatMessage *_Nonnull) |
aMessage |
progress: |
|
(void(^)(int progress)) |
aProgressBlock |
completion: |
|
(void(^)(EMChatMessage *_Nullable message, EMError *_Nullable error)) |
aCompletionBlock |
|
|
| |
|
required |
下载消息附件(语音、视频、图片原图、文件)。
SDK 会自动下载语音消息。如果自动下载失败,你可以调用该方法。
异步方法。
- 参数
-
aMessage | 消息。 |
aProgressBlock | 附件下载进度回调 block。进度值的范围为 [0,100]。 |
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ downloadMessageThumbnail:progress:completion:
- (void) downloadMessageThumbnail: |
|
(EMChatMessage *_Nonnull) |
aMessage |
progress: |
|
(void(^)(int progress)) |
aProgressBlock |
completion: |
|
(void(^)(EMChatMessage *_Nullable message, EMError *_Nullable error)) |
aCompletionBlock |
|
|
| |
|
required |
下载缩略图(图片消息的缩略图或视频消息的第一帧图片)。
SDK 会自动下载缩略图。如果自动下载失败,你可以调用该方法下载缩略图。
- 参数
-
aMessage | 消息对象。 |
aProgressBlock | 附件下载进度回调 block。进度值的范围为 [0,100]。 |
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ fetchHistoryMessagesFromServer:conversationType:startMessageId:fetchDirection:pageSize:error:
- (EMCursorResult< EMChatMessage * > *_Nullable) fetchHistoryMessagesFromServer: |
|
(NSString *_Nonnull) |
aConversationId |
conversationType: |
|
(EMConversationType) |
aConversationType |
startMessageId: |
|
(NSString *_Nullable) |
aStartMessageId |
fetchDirection: |
|
(EMMessageFetchHistoryDirection) |
direction |
pageSize: |
|
(int) |
aPageSize |
error: |
|
(EMError **_Nullable) |
pError |
|
|
| |
|
required |
从服务器获取指定会话的消息。
- 参数
-
aConversationId | 会话 ID。 |
aConversationType | 会话类型。 |
aStartMessageId | 查询的起始消息 ID。若该参数为空,SDK 从最新一条消息开始获取。 |
direction | 消息搜索方向。详见 EMMessageFetchHistoryDirection 。 |
aPageSize | 每页期望获取的消息条数。 |
pError | 错误信息。 |
- 返回
- 获取的消息内容列表。
◆ fetchHistoryMessagesFromServer:conversationType:startMessageId:pageSize:error:
- (EMCursorResult< EMChatMessage * > *_Nullable) fetchHistoryMessagesFromServer: |
|
(NSString *_Nonnull) |
aConversationId |
conversationType: |
|
(EMConversationType) |
aConversationType |
startMessageId: |
|
(NSString *_Nullable) |
aStartMessageId |
pageSize: |
|
(int) |
aPageSize |
error: |
|
(EMError **_Nullable) |
pError |
|
|
| |
|
required |
从服务器获取指定会话的消息。
- 参数
-
aConversationId | 会话 ID。 |
aConversationType | 会话类型。 |
aStartMessageId | 查询的起始消息 ID。若该参数为空,SDK 从最新一条消息开始获取。 |
aPageSize | 每页期望获取的消息条数。 |
pError | 错误信息。 |
- 返回
- 获取的消息内容列表。
◆ fetchSupportedLanguages:
- (void) fetchSupportedLanguages: |
|
(void(^)(NSArray< EMTranslateLanguage * > *_Nullable languages, EMError *_Nullable error)) |
aCompletionBlock |
|
|
required |
获取翻译服务支持的语言。
- 参数
-
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ getAllConversations
获取所有会话,如果内存中不存在会从本地数据库中加载。
- 返回
- 会话列表。
◆ getConversation:type:createIfNotExist:
- (EMConversation *_Nullable) getConversation: |
|
(NSString *_Nonnull) |
aConversationId |
type: |
|
(EMConversationType) |
aType |
createIfNotExist: |
|
(BOOL) |
aIfCreate |
|
|
| |
|
required |
获取一个会话。
- 参数
-
aConversationId | 会话 ID。 |
aType | 会话类型。 |
aIfCreate | 若该会话不存在是否创建。 |
- 返回
- 会话对象。
◆ getConversation:type:createIfNotExist:isThread:
- (EMConversation *_Nullable) getConversation: |
|
(NSString *_Nonnull) |
aConversationId |
type: |
|
(EMConversationType) |
aType |
createIfNotExist: |
|
(BOOL) |
aIfCreate |
isThread: |
|
(BOOL) |
isThread |
|
|
| |
|
required |
获取一个会话。
- 参数
-
aConversationId | 会话 ID。 |
aType | 会话类型。 |
aIfCreate | 若该会话不存在是否创建。 |
isThread | 是否是子区会话,即是否为 threadChat 类型的会话。
|
- 返回
- 会话对象。
◆ getConversationsFromServer:
- (void) getConversationsFromServer: |
|
(void(^)(NSArray< EMConversation * > *_Nullable aConversations, EMError *_Nullable aError)) |
aCompletionBlock |
|
|
required |
从服务器获取所有会话。
- 参数
-
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ getConversationsFromServerByPage:pageSize:completion:
- (void) getConversationsFromServerByPage: |
|
(NSUInteger) |
pageNumber |
pageSize: |
|
(NSUInteger) |
pageSize |
completion: |
|
(void(^)(NSArray< EMConversation * > *_Nullable aConversations, EMError *_Nullable aError)) |
aCompletionBlock |
|
|
| |
|
required |
从服务器分页获取所有会话。
- 参数
-
pageNumber | 当前页码,从1开始 |
pageSize | 每页的会话个数 |
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ getConversationWithConvId:
- (EMConversation *_Nullable) getConversationWithConvId: |
|
(NSString *_Nullable) |
aConversationId |
|
|
required |
从本地数据库中获取一个已存在的会话。
- 参数
-
- 返回
- 会话对象。
◆ getMessageAttachmentPath:
- (NSString *_Nullable) getMessageAttachmentPath: |
|
(NSString *_Nonnull) |
aConversationId |
|
|
required |
获取一个会话中消息附件的本地路径。
删除会话时,会话中的消息附件也会被删除。
- 参数
-
- 返回
- 附件路径。
◆ getMessageWithMessageId:
- (EMChatMessage *_Nullable) getMessageWithMessageId: |
|
(NSString *_Nonnull) |
aMessageId |
|
|
required |
◆ getReactionDetail:reaction:cursor:pageSize:completion:
- (void) getReactionDetail: |
|
(NSString *) |
messageId |
reaction: |
|
(NSString *) |
reaction |
cursor: |
|
(nullable NSString *) |
cursor |
pageSize: |
|
(uint64_t) |
pageSize |
completion: |
|
(void(^)(EMMessageReaction *, NSString *_Nullable cursor, EMError *_Nullable)) |
completion |
|
|
| |
|
required |
分页获取群聊消息的 Reaction 详细列表。
- 参数
-
messageId | 消息 ID。 |
reaction | Reaction 内容。 |
cursor | 查询的开始位置。首次调用该方法可传 nil 或 @"" 以 Reaction 创建时间的正序获取。 |
pageSize | 每页期望返回的 Reaction 数量。取值范围为 [1,100]。 |
completion | 该方法完成的回调,返回 Reaction 列表和用于继续获取数据的 cursor。当 cursor 为 nil 时表示已获取全部数据。 |
◆ getReactionList:groupId:chatType:completion:
- (void) getReactionList: |
|
(NSArray< NSString * > *) |
messageIds |
groupId: |
|
(nullable NSString *) |
groupId |
chatType: |
|
(EMChatType) |
chatType |
completion: |
|
(void(^)(NSDictionary< NSString *, NSArray< EMMessageReaction * > * > *, EMError *_Nullable)) |
completion |
|
|
| |
|
required |
◆ importConversations:completion:
- (void) importConversations: |
|
(NSArray< EMConversation * > *_Nullable) |
aConversations |
completion: |
|
(void(^)(EMError *_Nullable aError)) |
aCompletionBlock |
|
|
| |
|
required |
导入一组会话到本地数据库。
- 参数
-
aConversations | 会话列表。 |
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ importMessages:completion:
- (void) importMessages: |
|
(NSArray< EMChatMessage * > *_Nonnull) |
aMessages |
completion: |
|
(void(^)(EMError *_Nullable aError)) |
aCompletionBlock |
|
|
| |
|
required |
导入一组消息到本地数据库。
- 参数
-
aMessages | 消息列表。 |
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ loadMessagesWithKeyword:timestamp:count:fromUser:searchDirection:
- (NSArray< EMChatMessage * > *) loadMessagesWithKeyword: |
|
(NSString *) |
aKeywords |
timestamp: |
|
(long long) |
aTimestamp |
count: |
|
(int) |
aCount |
fromUser: |
|
(NSString *) |
aSender |
searchDirection: |
|
(EMMessageSearchDirection) |
aDirection |
|
|
| |
|
required |
通过关键词从数据库获取消息。
该方法返回的消息按时间顺序排列。
同步方法,会阻塞当前线程。
- 参数
-
aKeywords | 搜索关键词。设为 nil 表示忽略该参数。 |
aTimestamp | 参考时间戳。如果该参数设置的时间戳为负数,则从最新消息向前获取。 |
aCount | 获取的消息条数。如果设为小于等于 0,SDK 会获取一条消息。 |
aSender | 消息发送方。设为 nil 表示忽略该参数。 |
aDirection | 消息搜索方向,详见 MessageSearchDirection 。
UP :按消息时间戳的逆序获取。
DOWN :按消息时间戳的顺序获取。
|
- 返回
- 消息列表。返回的消息列表为数组类型,数组中元素详见
EMChatMessage
。
◆ loadMessagesWithKeyword:timestamp:count:fromUser:searchDirection:completion:
- (void) loadMessagesWithKeyword: |
|
(NSString *) |
aKeywords |
timestamp: |
|
(long long) |
aTimestamp |
count: |
|
(int) |
aCount |
fromUser: |
|
(NSString *) |
aSender |
searchDirection: |
|
(EMMessageSearchDirection) |
aDirection |
completion: |
|
(void(^)(NSArray< EMChatMessage * > *aMessages, EMError *aError)) |
aCompletionBlock |
|
|
| |
|
required |
通过关键词从数据库获取消息。
该方法返回的消息按时间顺序排列。
- 参数
-
aKeywords | 搜索关键词,设为 nil 表示忽略该参数。 |
aTimestamp | 参考时间戳。如果该参数设置的时间戳为负数,则从最新消息向前获取。 |
aCount | 获取的消息条数。如果设为小于等于 0,SDK 会获取一条消息。 |
aSender | 消息发送方。设为 nil 表示忽略该参数。 |
aDirection | 消息搜索方向,详见 EMMessageSearchDirection 。
UP :按消息时间戳的逆序获取。
DOWN :按消息时间戳的顺序获取。
|
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ loadMessagesWithType:timestamp:count:fromUser:searchDirection:
- (NSArray< EMChatMessage * > *_Nullable) loadMessagesWithType: |
|
(EMMessageBodyType) |
aType |
timestamp: |
|
(long long) |
aTimestamp |
count: |
|
(int) |
aCount |
fromUser: |
|
(NSString *_Nullable) |
aUsername |
searchDirection: |
|
(EMMessageSearchDirection) |
aDirection |
|
|
| |
|
required |
通过关键词从数据库获取消息。
该方法返回的消息按时间顺序排列。
同步方法,会阻塞当前线程。
- 参数
-
aType | 消息类型。 |
aTimestamp | 参考时间戳。如果该参数设置的时间戳为负数,则从最新消息向前获取。 |
aCount | 获取的消息条数。如果设为小于等于 0,SDK 会获取一条消息。 |
aUsername | 消息发送方。设为 nil 表示忽略该参数。 |
aDirection | 消息搜索方向。详见 EMMessageSearchDirection 。
UP :按消息时间戳的逆序获取。
DOWN :按消息时间戳的顺序获取。
|
- 返回
- 消息列表。返回的消息列表为数组类型,数组中元素详见
EMChatMessage
。
◆ loadMessagesWithType:timestamp:count:fromUser:searchDirection:completion:
- (void) loadMessagesWithType: |
|
(EMMessageBodyType) |
aType |
timestamp: |
|
(long long) |
aTimestamp |
count: |
|
(int) |
aCount |
fromUser: |
|
(NSString *) |
aUsername |
searchDirection: |
|
(EMMessageSearchDirection) |
aDirection |
completion: |
|
(void(^)(NSArray< EMChatMessage * > *aMessages, EMError *aError)) |
aCompletionBlock |
|
|
| |
|
required |
通过关键词从数据库获取消息。
该方法返回的消息按时间顺序排列。
- 参数
-
aType | 消息类型。 |
aTimestamp | 参考时间戳。如果该参数设置的时间戳为负数,则 SDK 从最新消息开始获取。 |
aCount | 获取的消息条数。如果设为小于等于 0,SDK 会获取一条消息。 |
aUsername | 消息发送方。设为 nil 表示忽略该参数。 |
aDirection | 消息搜索方向,详见 MessageSearchDirection 。
UP :按消息时间戳的逆序获取。
DOWN :按消息时间戳的顺序获取。
|
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ recallMessageWithMessageId:completion:
- (void) recallMessageWithMessageId: |
|
(NSString *_Nonnull) |
aMessageId |
completion: |
|
(void(^)(EMError *_Nullable aError)) |
aCompletionBlock |
|
|
| |
|
required |
撤回一条消息。
异步方法。
- 参数
-
aMessageId | 消息 ID。 |
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ removeDelegate:
◆ removeMessagesFromServerWithConversation:messageIds:completion:
- (void) removeMessagesFromServerWithConversation: |
|
(EMConversation *_Nonnull) |
conversation |
messageIds: |
|
(NSArray< __kindof NSString * > *_Nonnull) |
messageIds |
completion: |
|
(void(^)(EMError *_Nullable aError)) |
aCompletionBlock |
|
|
| |
|
required |
从会话中删除消息(包括本地存储和服务器存储)。
- 参数
-
conversation | 会话对象 EMConversation |
messageIds | 要删除消息 ID 字符串数组。 |
completion | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ removeMessagesFromServerWithConversation:timeStamp:completion:
- (void) removeMessagesFromServerWithConversation: |
|
(EMConversation *_Nonnull) |
conversation |
timeStamp: |
|
(NSTimeInterval) |
beforeTimeStamp |
completion: |
|
(void(^)(EMError *_Nullable aError)) |
aCompletionBlock |
|
|
| |
|
required |
从会话中删除消息(包括本地存储和服务器)。
- 参数
-
conversation | 会话对象 EMConversation。 |
beforeTimeStamp | 指定的时间戳,单位为毫秒。该时间戳之前的消息会被删除。 |
completion | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ removeReaction:fromMessage:completion:
- (void) removeReaction: |
|
(NSString *) |
reaction |
fromMessage: |
|
(NSString *) |
messageId |
completion: |
|
(nullable void(^)(EMError *_Nullable)) |
completion |
|
|
| |
|
required |
删除 Reaction。
- 参数
-
reaction | Reaction 内容。 |
messageId | 消息 ID。 |
completion | 该方法完成的回调。如果有错误会包含错误信息。 |
◆ reportMessageWithId:tag:reason:completion:
- (void) reportMessageWithId: |
|
(NSString *_Nonnull) |
aMessageId |
tag: |
|
(NSString *_Nonnull) |
aTag |
reason: |
|
(NSString *_Nonnull) |
aReason |
completion: |
|
(void(^)(EMError *_Nullable error)) |
aCompletion |
|
|
| |
|
required |
举报违规消息。
异步方法。
- 参数
-
aMessageId | 非法消息的 ID。 |
aTag | 非法消息标签,如涉政或涉恐。 |
aReason | 举报原因。 |
aCompletion | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ resendMessage:progress:completion:
- (void) resendMessage: |
|
(EMChatMessage *_Nonnull) |
aMessage |
progress: |
|
(void(^)(int progress)) |
aProgressBlock |
completion: |
|
(void(^)(EMChatMessage *_Nullable message, EMError *_Nullable error)) |
aCompletionBlock |
|
|
| |
|
required |
重新发送消息。
- 参数
-
aMessage | 消息对象。 |
aProgressBlock | 附件上传进度回调 block。进度值范围为 [0,100]。 |
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ sendGroupMessageReadAck:toGroup:content:completion:
- (void) sendGroupMessageReadAck: |
|
(NSString *_Nonnull) |
aMessageId |
toGroup: |
|
(NSString *_Nonnull) |
aGroupId |
content: |
|
(NSString *_Nullable) |
aContent |
completion: |
|
(void(^)(EMError *_Nullable aError)) |
aCompletionBlock |
|
|
| |
|
required |
发送群消息已读回执。
异步方法。
- 参数
-
aMessageId | 消息 ID。 |
aGroupId | 群组 ID。 |
aContent | 消息内容。 |
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ sendMessage:progress:completion:
- (void) sendMessage: |
|
(EMChatMessage *_Nonnull) |
aMessage |
progress: |
|
(void(^)(int progress)) |
aProgressBlock |
completion: |
|
(void(^)(EMChatMessage *_Nullable message, EMError *_Nullable error)) |
aCompletionBlock |
|
|
| |
|
required |
发送消息。
异步方法。
- 参数
-
aMessage | 消息。 |
aProgressBlock | 附件上传进度回调 block。进度值范围为 [0,100]。 |
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ sendMessageReadAck:toUser:completion:
- (void) sendMessageReadAck: |
|
(NSString *_Nonnull) |
aMessageId |
toUser: |
|
(NSString *_Nonnull) |
aUsername |
completion: |
|
(void(^)(EMError *_Nullable aError)) |
aCompletionBlock |
|
|
| |
|
required |
发送消息已读回执。
异步方法。
- 参数
-
aMessage | 消息 ID。 |
aUsername | 已读回执的接收方。 |
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ translateMessage:targetLanguages:completion:
- (void) translateMessage: |
|
(EMChatMessage *_Nonnull) |
aMessage |
targetLanguages: |
|
(NSArray< NSString * > *_Nonnull) |
aLanguages |
completion: |
|
(void(^)(EMChatMessage *_Nullable message, EMError *_Nullable error)) |
aCompletionBlock |
|
|
| |
|
required |
翻译消息。
- 参数
-
aMessage | 消息对象。 |
aLanguages | 目标语言代码列表。 |
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
◆ updateMessage:completion:
更新消息到本地数据库。
该方法会同时更新本地内存和数据库中的消息,消息 ID 不会更新。
- 参数
-
aMessage | 消息。 |
aCompletionBlock | 该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。 |
该协议的文档由以下文件生成: