介绍
会话介绍
用户创建了一个单聊或群聊,当其中有消息的收发时,对应的会话就随之创建。 在 Chat SDK 中,会话管理类为 V2TIMConversationManager(Android) 和 V2TIMManager(Conversation)(iOS & Mac)。您可以使用会话管理类中的 API 实现会话列表展示/更新、会话未读数更新、置顶会话、会话草稿、会话免打扰等功能。
会话类介绍
属性 | 含义 | 说明 |
type | 会话类型 | 参考 V2TIMConversationType 定义。分为 C2C(单聊)和 Group(群聊)。 |
conversationID | 会话唯一 ID | 如果是单聊,组成方式为 c2c_userID;如果是群聊,组成方式为 group_groupID。 |
userID | 对方用户 ID | 如果会话类型为单聊, userID 会存储对方的用户 ID,否则为空。 |
groupID | 当前群聊 ID | 如果会话类型为群聊, groupID 会存储当前群的群 ID,否则为空。 |
groupType | 当前群聊类型 | 如果会话类型为群聊, groupType 为当前群类型,否则为空。 |
showName | 会话展示名称 | 群聊会话名称优先级:群名称 > 群 ID; 单聊会话名称优先级:对方好友备注 > 对方昵称 > 对方的 userID。 |
faceUrl | 会话展示头像 | 群聊头像:群头像;单聊头像:对方头像。 |
unreadCount | 会话未读消息数 | |
recvOpt | 消息接收选项 | |
lastMessage | 会话最后一条消息 | |
groupAtInfolist | 群会话 @ 信息列表 | 通常用于展示 “有人@我” 或 “@所有人” 这两种提醒状态。 |
draftText | 草稿信息 | |
draftTimestamp | 草稿编辑时间 | 草稿设置的时候自动生成。 |
isPinned | 会话是否置顶 | |
orderKey | 会话排序字段 | |
markList | 会话标记列表 | |
customData | 会话自定义数据 | 设置请调用 setConversationCustomData 接口。云端保存,最多支持 256 Bytes。从 6.5 版本开始支持。 |
conversationGroupList | 会话所属分组列表 | |
c2cReadTimestamp | 已读消息的时间戳 | 仅对单聊会话生效。从 7.1 版本开始支持。 |
groupReadSequence | 已读消息的 sequence | 仅对群聊会话生效。从 7.1 版本开始支持。 |
会话存储策略
本地存储的会话列表没有数量上限。云端存储的会话列表最大数量为 100。如果您希望扩展此数量,可以升级旗舰版。旗舰版用户可以在控制台配置最高数量为 500。
如果一个会话长时间没有信息变更,该会话在云端最多保存 7 天。本地存储的会话和云端存储的会话并不总是一致的,如果用户不主动调用
deleteConversation
接口删除本地的会话,该会话就会一直存在。而云端存储的会话最大只会保存 100 条,且对于长时间没有信息变更的会话,云端最多保存 7 天,所以不同的终端本地显示的会话可能会不一样。