有奖捉虫:办公协同&微信生态&物联网文档专题 HOT

功能描述

IM SDK 提供获取会话的接口,可以获取指定的单个、多个会话的 Conversation 对象信息。

获取会话列表

注意
1. 该接口获取的会话列表中的资料是不完整的(仅包括头像、昵称等,能够满足会话列表的渲染需求),若要查询详细会话资料,可参考 getConversationProfile
2. 客户端默认可从云端拉取 100 个最近联系人会话,升级旗舰版后可配置从云端拉取最多 500 个最近联系人会话。请参见计费说明
3. 会话保存时长跟会话最后一条消息保存时间一致,消息默认保存7天,即会话默认保存7天。
接口
chat.getConversationList(options);
参数
Name
Type
Description
options
undefined | Array
参数选项。
options 不传表示获取全部会话
options 传入数组参数表示获取指定的多个会话,且不能传入空数组
返回值
Promise
示例
// 获取全量的会话列表
let promise = chat.getConversationList();
promise.then(function(imResponse) {
const conversationList = imResponse.data.conversationList; // 全量的会话列表,用该列表覆盖原有的会话列表
}).catch(function(imError) {
console.warn('getConversationList error:', imError); // 获取会话列表失败的相关信息
});
// 获取指定的会话列表
let promise = chat.getConversationList([conversationID1, conversationID2]);
promise.then(function(imResponse) {
const conversationList = imResponse.data.conversationList; // 缓存中已存在的指定的会话列表
}).catch(function(imError) {
console.warn('getConversationList error:', imError); // 获取会话列表失败的相关信息
});

获取会话详细资料

接口
chat.getConversationProfile(conversationID);
参数
Name
Type
Description
conversationID
String
会话 ID。
会话 ID 组成方式:
C2C${userID}(单聊)
GROUP{groupID}(群聊)
@TIM#SYSTEM(系统通知会话)
返回值
Promise
示例
let promise = chat.getConversationProfile(conversationID);
promise.then(function(imResponse) {
// 获取成功
console.log(imResponse.data.conversation); // 会话资料
}).catch(function(imError) {
console.warn('getConversationProfile error:', imError); // 获取会话资料失败的相关信息
});