跳转至

聊天室模块

获取实例

参数说明:

参数 类型 必填 说明 最低版本
id String 聊天室 id 3.0.0

代码示例:

// 注: im 实例通过 RongIMLib.init 获取(单个页面仅需初始化一次)
var chatRoom = im.ChatRoom.get({
  id: 'chatRoom1'
});

加入聊天室

参数说明:

参数 类型 必填 说明 最低版本
count Number 拉取消息数, 范围 0 - 50, 由 im.watch 抛出 3.0.0

代码示例:

var chatRoom = im.ChatRoom.get({
  id: 'chatRoom1'
});
chatRoom.join({
  count: 20 // 进入后, 自动拉取 20 条聊天室最新消息
}).then(function() {
  console.log('加入聊天室成功');
});

退出聊天室

代码示例:

var chatRoom = im.ChatRoom.get({
  id: 'chatRoom1'
});
chatRoom.quit().then(function() {
  console.log('退出聊天室成功');
});

获取历史消息

参数说明:

参数 类型 必填 默认值 说明 最低版本
timestrap Number 0 获取时间戳. 0 为从当前最新时间拉取 3.0.0
count String 20 获取条数, 范围 1 - 20 3.0.0
order Number 0 获取顺序. 0: 倒序, 1: 正序 3.0.0

代码示例:

var chatRoom = im.ChatRoom.get({
  id: 'chatRoom1'
});
var option = {
  timestrap: +new Date(),
  count: 20
};
chatRoom.getMessages(option).then(function(result){
  var list = result.list; // 历史消息列表
  var hasMore = result.hasMore; // 是否还有历史消息可以获取
  console.log('获取聊天室历史消息成功', list, hasMore);
});

获取聊天室信息

参数说明:

参数 类型 必填 默认值 说明 最低版本
count Number 20 获取人数 3.0.0
order Number 2 获取顺序. 2: 倒序, 1: 正序 3.0.0

返回值说明:

字段名 类型 说明
userCount Number 聊天室用户数量
userInfos Object 聊天室用户信息

userInfo 数据说明:

字段名 类型 说明
id String 用户 id
time Number 用户加入聊天室时间

代码示例:

var chatRoom = im.ChatRoom.get({
  id: 'chatRoom1'
});
chatRoom.getInfo().then(function(result){
  var userCount = result.userCount;
  var userInfos = result.userInfos;
  console.log('获取聊天室信息成功', userCount, userInfos);
});

发送聊天室消息

消息结构以及发送参数详见:

var chatRoom = im.ChatRoom.get({
  id: 'chatRoom1'
});
chatRoom.send({
  messageType: RongIMLib.MESSAGE_TYPE.TEXT, // 'RC:TxtMsg'
  content: {
    content: 'Hello RongCloud' // 发送文本内容
  }
}).then(function(message){
  console.log('发送文字消息成功', message);
});