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