Extends Protocol: | |
Declared In: | |
Introduction
本协议主要用于聊天数据库的操作, 包括获取会话对象、保存会话对象、删除会话对象、获取会话未读记录的条数等
Methods
- -2_0_0
获取当前登录用户所有包含未读消息的会话对象的个数
- -2_0_6
保存当前登录用户的会话列表到数据库
- -2_0_8
获取当前登录用户的会话列表
- -2_1_0
获取所有conversation的未读消息数量
- -conversationForChatter:conversationType:
获取某个用户的会话
- -conversationForChatter:isGroup:
获取某个用户的会话
- -importMessage:append2Chat:
导入聊天消息
- -insertConversationsToDB:append2Chat:
保存多个会话对象到数据库
- -insertConversationToDB:append2Chat:
保存单个会话对象到数据库
- -insertMessagesToDB:
保存一组聊天消息
- -insertMessagesToDB:forChatter:append2Chat:
保存一组聊天消息(推荐用法,速度有惊喜哦)
- -insertMessageToDB:
保存聊天消息到DB
- -insertMessageToDB:append2Chat:
导入聊天消息
- -loadAllConversationsFromDatabaseWithAppend2Chat:
获取当前登录用户的会话列表
- -loadTotalUnreadMessagesCountFromDatabase
从数据库获取所有未读消息数量
- -removeAllConversationsWithDeleteMessages:
删除所有会话对象
- -removeAllConversationsWithDeleteMessages:append2Chat:
删除所有会话对象
- -removeConversationByChatter:deleteMessages:
删除某个会话对象
- -removeConversationByChatter:deleteMessages:append2Chat:
删除某个会话对象
- -removeConversationsByChatters:deleteMessages:
删除某几个会话对象
- -removeConversationsByChatters:deleteMessages:append2Chat:
删除某几个会话对象
- -saveMessage:
保存聊天消息到DB
- -saveMessages:
保存一组聊天消息
- -searchMessagesWithCriteria:
- -searchMessagesWithCriteria:withChatter:
- -unreadMessagesCountForConversation:
获取单个会话对象的未读消息数量
获取当前登录用户所有包含未读消息的会话对象的个数
@optional
- (NSUInteger)unreadConversationsCount EM_DEPRECATED_IOS(2_0_0, 2_0_8, "不再提供该属性");
Return Value当前登录用户所有包含未读消息的会话对象的个数
保存当前登录用户的会话列表到数据库
@optional
- (NSInteger)saveAllConversations EM_DEPRECATED_IOS(2_0_6, 2_1_1, "Delete");
Return Value成功保存的会话对象列表的项数
获取当前登录用户的会话列表
@optional
- (NSArray *)loadAllConversations EM_DEPRECATED_IOS(2_0_8, 2_1_1, "Use - loadAllConversationsFromDatabase");
Return Value会话对象列表
Discussion
直接从数据库中删除,并不会返回相关回调方法;
若希望返回相关回调方法,请使用loadAllConversationsFromDatabaseWithAppend2Chat:
获取所有conversation的未读消息数量
@optional
- (NSUInteger)totalUnreadMessagesCount EM_DEPRECATED_IOS(2_1_0, 2_1_6, "Use - loadTotalUnreadMessagesCountFromDatabase");
Return Value未读消息数量
获取某个用户的会话
@optional
- (EMConversation *)conversationForChatter:(NSString *)chatter
conversationType:(EMConversationType)type;
Parameters
-
chatter 需要获取会话对象的用户名, 对于群组是群组ID,聊天室则是聊天室ID
Return Value会话对象
Discussion
此方法获取会话的顺序如下:
查找内存会话列表中的会话;
如果没找到, 试图从数据库中查找此条会话;
如果仍没找到, 创建一个新的会话, 加到会话列表中, 并触发didUpdateConversationList:回调
获取某个用户的会话
@optional
- (EMConversation *)conversationForChatter:(NSString *)chatter
isGroup:(BOOL)isGroup EM_DEPRECATED_IOS(2_0_0, 2_1_6, "Use - conversationForChatter:conversationType");
Parameters
-
chatter 需要获取会话对象的用户名, 对于群组, 则是群组ID
Return Value会话对象
Discussion
此方法获取会话的顺序如下:
查找内存会话列表中的会话;
如果没找到, 试图从数据库中查找此条会话;
如果仍没找到, 创建一个新的会话, 加到会话列表中, 并触发didUpdateConversationList:回调
导入聊天消息
@optional
- (BOOL)importMessage:(EMMessage *)message append2Chat:(BOOL)append2Chat EM_DEPRECATED_IOS(2_0_6, 2_1_1, "Use - insertMessageToDB:append2Chat:");
Parameters
-
message 待导入的聊天消息
-
append2Chat 是否加到内存中。
YES为加到内存中。加到内存中之后, 会有相应的回调被触发从而更新UI;
NO为不加到内存中。如果不加到内存中, 则只会直接添加进DB, 不会有SDK的回调函数被触发从而去更新UI。
Return Value是否成功导入聊天消息
保存多个会话对象到数据库
@optional
- (NSInteger)insertConversationsToDB:(NSArray *)conversations
append2Chat:(BOOL)append2Chat;
Parameters
-
conversations 需要保存的会话对象列表
-
append2Chat 是否加到内存中。
YES为加到内存中。加到内存中之后, 会有相应的回调被触发从而更新UI;
NO为不加到内存中。如果不加到内存中, 则只会直接添加进DB, 不会有SDK的回调函数被触发从而去更新UI。
Return Value保存成功的会话对象个数
保存单个会话对象到数据库
@optional
- (BOOL)insertConversationToDB:(EMConversation *)conversation
append2Chat:(BOOL)append2Chat;
Parameters
-
conversation 需要保存的会话对象
-
append2Chat 是否加到内存中。
YES为加到内存中。加到内存中之后, 会有相应的回调被触发从而更新UI;
NO为不加到内存中。如果不加到内存中, 则只会直接添加进DB, 不会有SDK的回调函数被触发从而去更新UI。
Return Value保存成功或失败
Discussion
对数据库中取出的数据修改后, 需要调用该方法
保存一组聊天消息
@optional
- (NSInteger)insertMessagesToDB:(NSArray *)messages;
Parameters
Return Value成功保存的聊天消息条数
Discussion
请调用者确保传入消息的有效性(conversationChatter和isRead等状态正确赋值);
消息会直接保存到数据库中,并不会调用相关回调方法,请自行调用[loadAllConversationsFromDatabaseWithAppend2Chat:]更新会话列表
保存一组聊天消息(推荐用法,速度有惊喜哦)
@optional
- (BOOL)insertMessagesToDB:(NSArray *)messages forChatter:(NSString *)chatter
append2Chat:(BOOL)append2Chat;
Parameters
-
messages 待保存的聊天消息列表
-
chatter 必填选项,message的conversationChatter
-
append2Chat 是否加到内存中。
YES为加到内存中。加到内存中之后, 会有相应的回调被触发从而更新UI;
NO为不加到内存中。如果不加到内存中, 则只会直接添加进DB, 不会有SDK的回调函数被触发从而去更新UI。
Return Value是否成功插入
保存聊天消息到DB
@optional
- (BOOL)insertMessageToDB:(EMMessage *)message;
Parameters
Return Value是否成功保存聊天消息
Discussion
消息会直接保存到数据库中,并不会调用相关回调方法;
若希望调用相关回调方法,请使用insertMessageToDB:append2Chat:
导入聊天消息
@optional
- (BOOL)insertMessageToDB:(EMMessage *)message append2Chat:(BOOL)append2Chat;
Parameters
-
message 待导入的聊天消息
-
append2Chat 是否加到内存中。
YES为加到内存中。加到内存中之后, 会有相应的回调被触发从而更新UI;
NO为不加到内存中。如果不加到内存中, 则只会直接添加进DB, 不会有SDK的回调函数被触发从而去更新UI。
Return Value是否成功导入聊天消息
获取当前登录用户的会话列表
@optional
- (NSArray *)loadAllConversationsFromDatabaseWithAppend2Chat:(BOOL)append2Chat;
Parameters
-
append2Chat 是否加到内存中。
YES为加到内存中。加到内存中之后, 会有相应的回调被触发从而更新UI;
NO为不加到内存中。如果不加到内存中, 则只会直接添加进DB, 不会有SDK的回调函数被触发从而去更新UI。
Return Value会话对象列表
从数据库获取所有未读消息数量
@optional
- (NSUInteger)loadTotalUnreadMessagesCountFromDatabase;
Return Value未读消息数量
删除所有会话对象
@optional
- (BOOL)removeAllConversationsWithDeleteMessages:(BOOL)aDeleteMessages EM_DEPRECATED_IOS(2_1_0, 2_1_2, "Use - removeAllConversationsWithDeleteMessages:append2Chat:");
Parameters
-
aDeleteMessages 是否删除这个会话对象所关联的聊天记录
Return Value是否成功执行
Discussion
会话会直接从数据库中删除,并不会返回相关回调方法;
若希望返回相关回调方法,请使用removeAllConversationsWithDeleteMessages:append2Chat:
删除所有会话对象
@optional
- (BOOL)removeAllConversationsWithDeleteMessages:(BOOL)aDeleteMessages
append2Chat:(BOOL)append2Chat;
Parameters
-
aDeleteMessages 是否删除这个会话对象所关联的聊天记录
-
append2Chat 是否加到内存中。
YES为加到内存中。加到内存中之后, 会有相应的回调被触发从而更新UI;
NO为不加到内存中。如果不加到内存中, 则只会直接添加进DB, 不会有SDK的回调函数被触发从而去更新UI。
Return Value是否成功执行
删除某个会话对象
@optional
- (BOOL)removeConversationByChatter:(NSString *)chatter
deleteMessages:(BOOL)aDeleteMessages EM_DEPRECATED_IOS(2_1_0, 2_1_2, "Use - removeConversationByChatter:deleteMessages:append2Chat:");
Parameters
-
chatter 这个会话对象所对应的用户名
-
aDeleteMessages 是否删除这个会话对象所关联的聊天记录
Return Value删除成功或失败
Discussion
直接从数据库中删除,并不会返回相关回调方法;
若希望返回相关回调方法,请使用removeConversationByChatters:deleteMessages:append2Chat:
删除某个会话对象
@optional
- (BOOL)removeConversationByChatter:(NSString *)chatter
deleteMessages:(BOOL)aDeleteMessages append2Chat:(BOOL)append2Chat;
Parameters
-
chatter 这个会话对象所对应的用户名
-
aDeleteMessages 是否删除这个会话对象所关联的聊天记录
-
append2Chat 是否加到内存中。
YES为加到内存中。加到内存中之后, 会有相应的回调被触发从而更新UI;
NO为不加到内存中。如果不加到内存中, 则只会直接添加进DB, 不会有SDK的回调函数被触发从而去更新UI。
Return Value删除成功或失败
删除某几个会话对象
@optional
- (NSUInteger)removeConversationsByChatters:(NSArray *)chatters
deleteMessages:(BOOL)aDeleteMessages EM_DEPRECATED_IOS(2_1_0, 2_1_2, "Use - removeConversationsByChatters:deleteMessages:append2Chat:");
Parameters
-
chatters 这几个要被删除的会话对象所对应的用户名列表
-
aDeleteMessages 是否删除这个会话对象所关联的聊天记录
Return Value成功删除的会话对象的个数
Discussion
直接从数据库中删除,并不会返回相关回调方法;
若希望返回相关回调方法,请使用removeConversationsByChatters:deleteMessages:append2Chat:
删除某几个会话对象
@optional
- (NSUInteger)removeConversationsByChatters:(NSArray *)chatters
deleteMessages:(BOOL)aDeleteMessages append2Chat:(BOOL)append2Chat;
Parameters
-
chatters 这几个要被删除的会话对象所对应的用户名列表
-
aDeleteMessages 是否删除这个会话对象所关联的聊天记录
-
append2Chat 是否加到内存中。
YES为加到内存中。加到内存中之后, 会有相应的回调被触发从而更新UI;
NO为不加到内存中。如果不加到内存中, 则只会直接添加进DB, 不会有SDK的回调函数被触发从而去更新UI。
Return Value成功删除的会话对象的个数
保存聊天消息到DB
@optional
- (BOOL)saveMessage:(EMMessage *)message EM_DEPRECATED_IOS(2_0_6, 2_1_1, "Use - insertMessageToDB:");
Parameters
Return Value是否成功保存聊天消息
Discussion
消息会直接保存到数据库中,并不会调用相关回调方法;
若希望调用相关回调方法,请使用insertMessageToDB:append2Chat:
保存一组聊天消息
@optional
- (NSInteger)saveMessages:(NSArray *)messages EM_DEPRECATED_IOS(2_0_6, 2_1_1, "Use - insertMessagesToDB:");
Parameters
Return Value成功保存的聊天消息条数
Discussion
请调用者确保传入消息的有效性(conversationChatter和isRead等状态正确赋值);
消息会直接保存到数据库中,并不会调用相关回调方法,请自行调用[loadAllConversationsFromDatabaseWithAppend2Chat:]更新会话列表
@optional
- (NSArray *)searchMessagesWithCriteria:(NSString *)criteria;
Parameters
Return Value搜索结果, 由EMMessage对象组成
Discussion
从所有的聊天记录中搜索符合条件的记录
@optional
- (NSArray *)searchMessagesWithCriteria:(NSString *)criteria
withChatter:(NSString *)chatter;
Parameters
-
criteria 搜索条件
-
chatter 聊天对象的用户名
Return Value搜索结果, 由EMMessage对象组成
Discussion
从单个chatter聊天记录中搜索符合条件的记录
获取单个会话对象的未读消息数量
@optional
- (NSUInteger)unreadMessagesCountForConversation:(NSString *)chatter;
Parameters
Return Value此绘画对象的未读消息数量
Properties
- conversations
当前登陆用户的会话对象列表
当前登陆用户的会话对象列表
@optional
@property (nonatomic,
readonly) NSArray *conversations;
Last Updated: Friday, May 11, 2018
|