| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167 |
- //
- // TIMConversation+MsgExt.h
- // IMMessageExt
- //
- // Created by tomzhu on 2016/12/27.
- //
- //
- #ifndef TIMConversation_h
- #define TIMConversation_h
- #import <ImSDK/ImSDK.h>
- #import "TIMMessage+MsgExt.h"
- @interface TIMConversation (MsgExt)
- /**
- * 保存消息到消息列表,这里只保存在本地
- *
- * @param msg 消息体
- * @param sender 发送方
- * @param isReaded 是否已读,如果发送方是自己,默认已读
- *
- * @return 0 成功
- */
- - (int)saveMessage:(TIMMessage*)msg sender:(NSString*)sender isReaded:(BOOL)isReaded;
- /**
- * 获取会话消息
- *
- * @param count 获取数量
- * @param last 上次最后一条消息
- * @param succ 成功时回调
- * @param fail 失败时回调
- *
- * @return 0 本次操作成功
- */
- - (int)getMessage:(int)count last:(TIMMessage*)last succ:(TIMGetMsgSucc)succ fail:(TIMFail)fail;
- /**
- * 向前获取会话消息
- *
- * @param count 获取数量
- * @param last 上次最后一条消息
- * @param succ 成功时回调
- * @param fail 失败时回调
- *
- * @return 0 本次操作成功
- */
- - (int)getMessageForward:(int)count last:(TIMMessage*)last succ:(TIMGetMsgSucc)succ fail:(TIMFail)fail;
- /**
- * 获取本地会话消息
- *
- * @param count 获取数量
- * @param last 上次最后一条消息
- * @param succ 成功时回调
- * @param fail 失败时回调
- *
- * @return 0 本次操作成功
- */
- - (int)getLocalMessage:(int)count last:(TIMMessage*)last succ:(TIMGetMsgSucc)succ fail:(TIMFail)fail;
- /**
- * 获取会话消息
- *
- * @param locators 消息定位符(TIMMessageLocator)数组
- * @param succ 成功时回调
- * @param fail 失败时回调
- *
- * @return 0 本次操作成功
- */
- - (int)findMessages:(NSArray*)locators succ:(TIMGetMsgSucc)succ fail:(TIMFail)fail;
- /**
- * 撤回消息(仅C2C和GROUP会话有效、onlineMessage无效、AVChatRoom和BChatRoom无效)
- *
- * @param msg 被撤回的消息
- * @param succ 成功时回调
- * @param fail 失败时回调
- *
- * @return 0 本次操作成功
- */
- - (int)revokeMessage:(TIMMessage*)msg succ:(TIMSucc)succ fail:(TIMFail)fail;
- /**
- * 同步本会话的消息撤回通知(仅GROUP会话有效)
- *
- * @param succ 成功时回调,同步的通知会通过TIMMessageRevokeListener抛出
- * @param fail 失败时回调
- *
- * @return 0 本次操作成功
- */
- - (int)syncRevokeNotify:(TIMSucc)succ fail:(TIMFail)fail;
- /**
- * 删除本地会话消息
- *
- * @param succ 成功时回调
- * @param fail 失败时回调
- *
- * @return 0 本次操作成功
- */
- - (int)deleteLocalMessage:(TIMSucc)succ fail:(TIMFail)fail;
- /**
- * 设置已读消息
- *
- * @param readed 会话内最近一条已读的消息,nil表示上报最新消息
- *
- * @param succ 成功时回调
- * @param fail 失败时回调
- *
- * @return 0 表示成功
- */
- - (int)setReadMessage:(TIMMessage*)readed succ:(TIMSucc)succ fail:(TIMFail)fail;
- /**
- * 获取该会话的未读计数
- *
- * @return 返回未读计数
- */
- - (int)getUnReadMessageNum;
- /**
- * 从cache中获取最后几条消息
- *
- * @param count 需要获取的消息数,最多为20
- *
- * @return 消息(TIMMessage*)列表,第一条为最新消息
- */
- - (NSArray*)getLastMsgs:(uint32_t)count;
- /**
- * 将消息导入本地数据库
- *
- * @param msgs 消息(TIMMessage*)列表
- *
- * @return 0 成功
- */
- - (int)importMessages:(NSArray*)msgs;
- /**
- * 设置会话草稿
- *
- * @param draft 草稿内容
- *
- * @return 0 成功
- */
- - (int)setDraft:(TIMMessageDraft*)draft;
- /**
- * 获取会话草稿
- *
- * @return 草稿内容,没有草稿返回nil
- */
- - (TIMMessageDraft*)getDraft;
- /**
- * 禁用本会话的存储,只对当前初始化有效,重启后需要重新设置
- * 需要 initSdk 之后调用
- */
- - (void)disableStorage;
- @end
- #endif /* TIMConversation_h */
|