new Chatroom()
请使用 Chatroom.getInstance
来初始化聊天室.
此接口为单例模式, 对于同一个账号的同一个聊天室, 永远返回同一份实例, 即只有第一次调用会初始化一个实例, 后续调用此接口会直接返回初始化过的实例.
Members
-
staticChatroom.deepAccessfunction
-
SDK 使用 deep access 来获取对象的属性值, 通过
Chatroom.deepAccess
来获取此库的引用 -
staticChatroom.ioObject
-
SDK 使用 socket.io-client 0.9 来建立 Socket 连接, 通过
Chatroom.io
来获取此库的引用 -
staticChatroom.naturalSortfunction
-
SDK 使用 natural sort 来对数组进行排序, 通过
Chatroom.naturalSort
来获取此库的引用 -
staticChatroom.platformObject
-
SDK 使用 platform.js 来检测浏览器平台, 通过
Chatroom.platform
来获取此库的引用 -
staticChatroom.xhrfunction
-
SDK 使用 xhr 来发送 Ajax 请求, 通过
Chatroom.xhr
来获取此库的引用
Methods
-
staticChatroom.getInstance(options)
-
- 此接口为单例模式, 对于同一个账号, 永远返回同一份实例, 即只有第一次调用会初始化一个实例
- 后续调用此接口会直接返回初始化过的实例, 同时也会调用接口
setOptions
更新传入的配置 - 后续调用此接口时, 如果连接已断开, 会自动建立连接
- 当发生掉线时,SDK会自动进行重连
Params:
Name Type Description options
Object 配置参数
Name Type Default Description secure
Boolean | Object true optional secure 模式下会通过 https 协议跟服务器建立连接, 非 secure 模式下会通过 http 协议跟服务器建立连接, 默认 true
appKey
String 在云信管理后台查看应用的 appKey
account
String 帐号, 应用内唯一
token
String 帐号的 token, 用于建立连接
chatroomId
String 聊天室 id
chatroomAddresses
Array.<String> 聊天室地址列表
onconnect
function optional 连接建立后的回调, 会传入
聊天室信息
onwillreconnect
function optional 即将重连的回调
- 此时说明 SDK 已经断开连接, 请开发者在界面上提示用户连接已断开, 而且正在重新建立连接
- 此回调会收到一个对象, 包含额外的信息, 有以下字段
duration
: 距离下次重连的时间retryCount
: 重连尝试的次数
ondisconnect
function optional 断开连接后的回调
- 此时说明 SDK 处于断开状态, 开发者此时应该根据错误码提示相应的错误信息, 并且跳转到登录页面
- 此回调会收到一个对象, 包含错误的信息, 有以下字段
code
: 出错时的错误码, 可能为空302
: 账号或者密码错误'kicked'
: 被踢
- 当
code
为'kicked'
的时候, 此对象会有以下字段reason
: 被踢的原因chatroomClosed
: 聊天室关闭了managerKick
: 被管理员踢出samePlatformKick
: 不允许同一个帐号重复登录同一个聊天室
message
: 文字描述的被踢的原因
onerror
function optional 发生错误的回调, 会传入
错误
对象onmsgs
function optional 收到消息的回调, 会传入
消息
数组Example:
var chatroom = new Chatroom({
appKey: 'appKey',
account: 'account',
token: 'token',
chatroomId: 'chatroomId',
chatroomAddresses: [
'address1',
'address2'
],
onconnect: onChatroomConnect,
onerror: onChatroomError,
onwillreconnect: onChatroomWillReconnect,
ondisconnect: onChatroomDisconnect,
// 消息
onmsgs: onChatroomMsgs
});
function onChatroomConnect(chatroomInfo) {
// console.log('进入聊天室', chatroomInfo);
}
function onChatroomWillReconnect(obj) {
// 此时说明SDK
已经断开连接, 请开发者在界面上提示用户连接已断开, 而且正在重新建立连接
// console.log('即将重连', obj);
}
function onChatroomDisconnect(error) {
// 此时说明SDK
处于断开状态, 开发者此时应该根据错误码提示相应的错误信息, 并且跳转到登录页面
// console.log('连接断开', error);
if (error) {
switch (error.code) {
// 账号或者密码错误, 请跳转到登录页面并提示错误
case 302:
break;
// 被踢, 请提示错误后跳转到登录页面
case 'kicked':
break;
default:
break;
}
}
}
function onChatroomError(error, obj) {
// console.log('发生错误', error, obj);
}
function onChatroomMsgs(msgs) {
// console.log('收到聊天室消息', msgs);
} -
audioToMp3(options){String}
-
将音频 url 转为 mp3
- 此方法会返回一个新的 url
Params:
Name Type Description options
Object 配置参数
Name Type Description url
String url
Returns:
Type Description String 转为 mp3 后的 url Example:
var url = 'http://b12026.nos.netease.com/MTAxMTAxMA==/bmltYV8xMTQwMzFfMTQ1MTg4ODk5MjMxMV9mNmI1Y2QyZC03N2UzLTQxNmUtYWY5NC1iODlhZGY4ZTYzYWQ=';
var mp3Url = chatroom.audioToMp3({
url: url
});
// console.log(mp3Url); -
connect(){Void}
-
进入聊天室
Returns:
Type Description Void Example:
chatroom.connect();
- See:
-
disconnect(){Void}
-
退出聊天室
Returns:
Type Description Void Example:
chatroom.disconnect();
- See:
-
getChatroom(options){Void}
-
获取聊天室信息
Params:
Name Type Description options
Object 配置参数
Name Type Description done
function 结果回调函数, 成功时会额外附上
聊天室信息
Returns:
Type Description Void Example:
chatroom.getChatroom({
done: getChatroomDone
});
function getChatroomDone(error, obj) {
// console.log('获取聊天室信息' + (!error?'成功':'失败'), error, obj);
} -
getChatroomMembers(options){Void}
-
获取聊天室成员列表
Params:
Name Type Description options
Object 配置参数
Name Type Default Description guest
Boolean true
表示获取游客,false
表示获取非游客成员- 游客列表按照游客进入聊天室的时间倒序排列
- 非游客(即固定成员)列表按照成为固定成员的时间倒序排列
onlyOnline
Boolean false optional 当设置
guest=false
来获取非游客成员时, 默认会获取所有的固定成员, 包括不在线的, 可以设置onlyOnline=true
来只获取在线的固定成员time
Number 0 optional 分页用, 查找该时间戳之前的成员
- 默认 0 代表当前服务器时间
- 获取游客时, 此字段填上次获取的最后一个游客的
enterTime
- 获取非游客时, 此字段填上次获取的最后一个非游客的
updateTime
limit
Number 100 optional 分页用, 默认 100
done
done 结果回调函数, 成功时会额外附上
聊天室成员信息
列表Returns:
Type Description Void Example:
chatroom.getChatroomMembers({
guest: false,
limit: 100,
done: getChatroomMembersDone
});
function getChatroomMembersDone(error, obj) {
// console.log('获取聊天室成员' + (!error?'成功':'失败'), error, obj.members);
} -
getChatroomMembersInfo(options){Void}
-
获取聊天室成员信息
Params:
Name Type Description options
Object 配置参数
Name Type Description accounts
Array.<String> 待查询的账号列表, 每次最多20个
done
function 结果回调函数, 成功时会额外附上
聊天室成员信息
列表Returns:
Type Description Void Example:
chatroom.getChatroomMembersInfo({
accounts: ['account1', 'account2'],
done: getChatroomMembersInfoDone
});
function getChatroomMembersInfoDone(erorr, obj) {
// console.log('获取聊天室成员信息' + (!error?'成功':'失败'), error, obj);
} -
getHistoryMsgs(options){Void}
-
获取聊天室历史消息
- 获取从 timetag 对应的时间点往前的若干条数据
- 不填 timetag 的话默认为服务器当前时间
Params:
Name Type Description options
Object 配置参数
Name Type Default Description timetag
Number optional 时间戳
limit
Number 100 optional limit, 默认 100
reverse
Boolean false optional 默认
false
表示从timetag
开始往前查找历史消息;
true
表示从timetag
开始往后查找历史消息true
表示从beginTime
开始往后查找历史消息Returns:
Type Description Void Example:
chatroom.getHistoryMsgs({
timetag: 1451393192478,
limit: 100,
done: getHistoryMsgsDone
});
function getHistoryMsgsDone(error, obj) {
// console.log('获取聊天室历史' + (!error?'成功':'失败'), error, obj.msgs);
} -
kickChatroomMember(options){Void}
-
踢聊天室成员
- 当有人被
踢出聊天室
时, 所有聊天室成员会收到类型为'
的kickMember
'聊天室通知消息
。
Params:
Name Type Description options
Object 配置参数
Name Type Description account
String 待踢的账号
custom
String optional 扩展字段, 如果填了, 那么其它聊天室成员收到的
聊天室通知消息
的attach.custom
的值为此字段, 被踢的人收到的ondisconnect
回调接收的参数的custom
的值为此字段- 推荐使用
JSON
格式构建, 非JSON
格式的话, Web端会正常接收, 但是会被其它端丢弃
done
function 结果回调函数
Returns:
Type Description Void Example:
chatroom.kickChatroomMember({
account: 'account',
done: kickChatroomMemberDone
});
function kickChatroomMember(error, obj) {
// console.log('踢人' + (!error?'成功':'失败'), error, obj);
} - 当有人被
-
markChatroomBlacklist(options){Void}
-
设置聊天室黑名单
- 被加入黑名单的人将不能进入此聊天室
Params:
Name Type Description options
Object 配置参数
Name Type Description account
String 待设置的账号
isAdd
Boolean true
表示添加,false
表示移除- 当有人被
加入黑名单
时, 所有聊天室成员会收到类型为
的'blackMember'
聊天室通知消息
。 - 当有人被
移除黑名单
时, 所有聊天室成员会收到类型为
的'blackMember'
聊天室通知消息
。
custom
String optional 扩展字段, 如果填了, 那么其它聊天室成员收到的
聊天室通知消息
的attach.custom
的值为此字段- 推荐使用
JSON
格式构建, 非JSON
格式的话, Web端会正常接收, 但是会被其它端丢弃
done
function 结果回调函数, 成功时会额外附上
聊天室成员信息
Returns:
Type Description Void Example:
chatroom.markChatroomBlacklist({
account: 'account',
isAdd: true,
done: markChatroomBlacklistDone
});
function markChatroomBlacklistDone(error, obj) {
// console.log('添加聊天室黑名单' + (!error?'成功':'失败'), error, obj.member);
} -
markChatroomCommonMember(options){Void}
-
设置聊天室普通成员
Params:
Name Type Description options
Object 配置参数
Name Type Default Description account
String 待设置的账号
isAdd
Boolean 是否加为普通成员
- 当有人被
加为普通成员
时, 所有聊天室成员会收到类型为
的'addCommon'
聊天室通知消息
。 - 当有人被
移除普通成员
时, 所有聊天室成员会收到类型为
的'removeCommon'
聊天室通知消息
。
level
Number 0 optional 等级
custom
String optional 扩展字段, 如果填了, 那么其它聊天室成员收到的
聊天室通知消息
的attach.custom
的值为此字段- 推荐使用
JSON
格式构建, 非JSON
格式的话, Web端会正常接收, 但是会被其它端丢弃
done
function 结果回调函数
Returns:
Type Description Void Example:
chatroom.markChatroomCommonMember({
account: 'account',
level: 0,
done: markChatroomCommonMemberDone
});
function markChatroomCommonMemberDone(error) {
// console.log('设置聊天室普通成员' + (!error?'成功':'失败'), error);
} - 当有人被
-
markChatroomGaglist(options){Void}
-
设置聊天室禁言名单
- 被加入禁言名单的人将不能在该聊天室发送消息
Params:
Name Type Description options
Object 配置参数
Name Type Description account
String 待设置的账号
isAdd
Boolean true
表示添加,false
表示移除- 当有人被
加入禁言名单
时, 所有聊天室成员会收到类型为
的'gagMember'
聊天室通知消息
。 - 当有人被
移除禁言名单
时, 所有聊天室成员会收到类型为
的'ungagMember'
聊天室通知消息
。
custom
String optional 扩展字段, 如果填了, 那么其它聊天室成员收到的
聊天室通知消息
的attach.custom
的值为此字段- 推荐使用
JSON
格式构建, 非JSON
格式的话, Web端会正常接收, 但是会被其它端丢弃
done
function 结果回调函数, 成功时会额外附上
聊天室成员信息
Returns:
Type Description Void Example:
chatroom.markChatroomGaglist({
account: 'account',
isAdd: true,
done: markChatroomGaglistDone
});
function markChatroomGaglistDone(error, obj) {
// console.log('添加聊天室禁言名单' + (!error?'成功':'失败'), error, obj.member);
} -
markChatroomManager(options){Void}
-
Params:
Name Type Description options
Object 配置参数
Name Type Description account
String 待设置的账号
isAdd
Boolean true
表示添加,false
表示移除- 当有人被
加为管理员
时, 所有聊天室成员会收到类型为
的'addManager'
聊天室通知消息
。 - 当有人被
移除管理员
时, 所有聊天室成员会收到类型为
的'removeManager'
聊天室通知消息
。
custom
String optional 扩展字段, 如果填了, 那么其它聊天室成员收到的
聊天室通知消息
的attach.custom
的值为此字段- 推荐使用
JSON
格式构建, 非JSON
格式的话, Web端会正常接收, 但是会被其它端丢弃
done
function 结果回调函数, 成功时会额外附上
聊天室成员信息
Returns:
Type Description Void Example:
chatroom.markChatroomManager({
account: 'account',
isAdd: true,
done: markChatroomManagerDone
});
function markChatroomManagerDone(error, obj) {
// console.log('添加聊天室管理员' + (!error?'成功':'失败'), error, obj.member);
} - 当有人被
-
packFileDownloadName(options){String}
-
修改图片下载的名字
Params:
Name Type Description options
Object 配置参数
Name Type Description url
String 原图 url
name
String 下载的名字
Returns:
Type Description String 修改图片下载名字后的图片 url Example:
var url = 'http://nim.nos.netease.com/MTAxMTAwMg==/bmltYV8xNDc5OTNfMTQ0MzE0NTgyNDI0M184YjFkYTMwMS02NjcxLTRiYjktYTUwZC04ZTVlZjZlNzZjMzA=';
var nameUrl = chatroom.packFileDownloadName({
url: url,
name: '测试.jpg'
});
// console.log(nameUrl); -
previewFile(options){Void}
-
预览文件
- 开发者可以预览文件, 支持以下几种场景
- 通过参数
fileInput
传入文件选择 dom 节点或者节点 ID, SDK 会读取该节点下的文件, 在上传完成前请不要操作该节点下的文件 - 通过参数
blob
传入 Blob 对象 - 通过参数
dataURL
传入包含 MIME type 和 base64 数据的 data URL, 此用法需要浏览器支持 Blob
- 通过参数
- SDK会将文件上传到文件服务器, 然后将拿到的文件对象在
done
回调中传给开发者, 文件对象有以下几种 - 开发者在拿到文件对象之后, 可以调用
发送文件消息
来发送文件消息。 - 文件大小限制为最大 100M
- 高级浏览器会在上传前就检测文件大小
- IE8/IE9 会在上传完成后检测文件大小
Params:
Name Type Description options
Object 配置参数
Name Type Description type
String optional 文件过滤器
- image会过滤掉非图片的文件, audio过滤掉非音频, video会过滤掉非视频的文件
- IE8/IE9 不支持文件过滤
fileInput
String | Node optional 文件选择 dom 节点或者节点 ID, SDK 会读取该节点下的文件, 在上传完成前请不要操作该节点下的文件
blob
Blob optional Blob 对象
dataURL
String optional 包含 MIME type 和 base64 数据的 data URL
uploadprogress
uploadprogress optional 上传进度, ie9以下不支持上传进度
done
done 结果回调函数, 成功时会收到文件对象, 请参考
Returns:
Type Description Void Example:
chatroom.previewFile({
type: 'image',
fileInput: fileInput,
uploadprogress: function(obj) {
// console.log('文件总大小: ' + obj.total + 'bytes');
// console.log('已经上传的大小: ' + obj.loaded + 'bytes');
// console.log('上传进度: ' + obj.percentage);
// console.log('上传进度文本: ' + obj.percentageText);
},
done: function(error, file) {
// console.log('上传image' + (!error?'成功':'失败'));
// show file to the user
if (!error) {
var msg = chatroom.sendFile({
scene: 'p2p',
to: 'account',
file: file,
done: sendChatroomMsgDone
});
// console.log('正在发送聊天室image消息, id=' + msg.idClient);
}
}
}); - 开发者可以预览文件, 支持以下几种场景
-
sendCustomMsg(options){Message}
-
发送自定义消息
- 自定义消息是
消息类型
的一种
Params:
Name Type Description options
Object 配置参数
Name Type Description content
String 自定义消息的消息内容, 推荐使用JSON格式构建
resend
Boolean optional 是否是重发
idClient
String optional 如果是重发, 那么需要带上之前生成的idClient来标记这条消息
custom
String optional 扩展字段
- 推荐使用
JSON
格式构建, 非JSON
格式的话, Web端会正常接收, 但是会被其它端丢弃
fromNick
String optional 发送方的昵称
done
done 结果回调函数
Returns:
Type Description Message 消息
Example:
var value = Math.ceil(Math.random()*3);
var content = {
type: 1,
data: {
value: value
}
};
var msg = chatroom.sendCustomMsg({
content: JSON.stringify(content),
done: sendChatroomMsgDone
});
// console.log('正在发送聊天室自定义消息, id=' + msg.idClient); - 自定义消息是
-
sendFile(options){Void|Message}
-
发送文件消息
- 文件消息是
消息类型
的一种 - 开发者可以直接发送文件消息
- 支持以下几种场景
- 通过参数
fileInput
传入文件选择 dom 节点或者节点 ID, SDK 会读取该节点下的文件, 在上传完成前请不要操作该节点下的文件 - 通过参数
blob
传入 Blob 对象 - 通过参数
dataURL
传入包含 MIME type 和 base64 数据的 data URL, 此用法需要浏览器支持 Blob
- 通过参数
- SDK会先将文件上传到文件服务器, 然后把拿到的文件对象在
uploaddone
回调中传给用户, 然后将其拼装成文件消息发送出去。
- 支持以下几种场景
- 开发者也可以先
预览文件
来获取文件对象, 然后调用此接口发送文件消息。- 通过参数
file
传入文件
- 通过参数
- 直接发送文件消息的话会在
beforesend
回调里面传入SDK生成的idClient
, 如果先预览文件再发送, 那么此接口会直接返回idClient
- 参数
type
指定了要发送的文件类型, 包括图片、音频、视频和普通文件, 对应的值分别为'image'
、'audio'
、'video'
和'file'
, 不传默认为'file'
。 - 图片、音频、视频和普通文件的区别在于具体的文件信息不一样, 具体字段请参考
- 文件大小限制为最大100M
- 高级浏览器会在上传前就检测文件大小
- IE8和IE9会在上传完成后检测文件大小
Params:
Name Type Description options
Object 配置参数
Name Type Default Description type
String optional 文件过滤器,
'image'
会过滤掉非图片的文件,'audio'
过滤掉非音频,'video'
会过滤掉非视频的文件,
IE8/IE9 不支持文件过滤fileInput
String | Node optional 文件选择 dom 节点或者节点 ID, SDK 会读取该节点下的文件, 在上传完成前请不要操作该节点下的文件
blob
Blob optional Blob 对象
dataURL
String optional MIME type 和 base64 数据的 data URL
file
Array optional 文件对象, 开发者可以通过
预览文件
拿到文件对象wxFilePath
String optional 仅供微信小程序使用, 通过 wx.chooseImage 或者 wx.startRecord 拿到的临时文件路径
resend
Boolean false optional 是否是重发
beginupload
function optional 开始上传图片的回调
- 如果开发者传入 fileInput, 在此回调之前不能修改 fileInput
- 在此回调之后可以取消图片上传, 此回调会接收一个参数
upload
, 调用upload.abort();
来取消文件上传
uploadprogress
uploadprogress optional 上传进度, IE9以下不支持上传进度
uploaddone
uploaddone optional 上传完成回调
beforesend
beforesend optional 发送文件消息之前的回调函数
resend
Boolean optional 是否是重发
idClient
String optional 如果是重发, 那么需要带上之前生成的idClient来标记这条消息
custom
String optional 扩展字段
- 推荐使用
JSON
格式构建, 非JSON
格式的话, Web端会正常接收, 但是会被其它端丢弃
fromNick
String optional 发送方的昵称
done
done 结果回调函数
Returns:
Type Description Void | Message Example:
chatroom.sendFile({
type: 'image',
fileInput: fileInput,
uploadprogress: function(obj) {
// console.log('文件总大小: ' + obj.total + 'bytes');
// console.log('已经上传的大小: ' + obj.loaded + 'bytes');
// console.log('上传进度: ' + obj.percentage);
// console.log('上传进度文本: ' + obj.percentageText);
},
uploaddone: function(error, file) {
// console.log('上传' + (!error?'成功':'失败'), error, file);
},
beforesend: function(msg) {
// console.log('正在发送聊天室image消息, id=' + msg.idClient);
},
done: sendChatroomMsgDone
}); - 文件消息是
-
sendGeo(options){Message}
-
Params:
Name Type Description options
Object 配置参数
Name Type Description geo
Object 地理位置对象
Name Type Description lng
Number 经度
lat
Number 纬度
title
String 地址描述
resend
Boolean optional 是否是重发
idClient
String optional 如果是重发, 那么需要带上之前生成的idClient来标记这条消息
custom
String optional 扩展字段
- 推荐使用
JSON
格式构建, 非JSON
格式的话, Web端会正常接收, 但是会被其它端丢弃
Returns:
Type Description Message 消息
Example:
var msg = chatroom.sendGeo({
scene: 'p2p',
to: 'account',
geo: {
lng: '116.3833',
lat: '39.9167',
title: 'Beijing'
},
done: sendChatroomMsgDone
});
// console.log('正在发送聊天室geo消息, id=' + msg.idClient); - 推荐使用
-
sendText(options){Message}
-
发送文本消息
- 文本消息是消息的一种, 请参考
消息
Params:
Name Type Description options
Object 配置参数
Name Type Description text
String 文本消息内容
resend
Boolean optional 是否是重发
idClient
String optional 如果是重发, 那么需要带上之前生成的idClient来标记这条消息
custom
String optional 扩展字段
- 推荐使用
JSON
格式构建, 非JSON
格式的话, Web端会正常接收, 但是会被其它端丢弃
done
done 结果回调函数
Returns:
Type Description Message 消息
Example:
var msg = chatroom.sendText({
text: 'hello',
done: sendChatroomMsgDone
});
// console.log('正在发送聊天室text消息, id=' + msg.idClient);
function sendChatroomMsgDone(error, msg) {
// console.log('发送聊天室' + msg.type + '消息' + (!error?'成功':'失败') + ', id=' + msg.idClient, error, msg);
} - 文本消息是消息的一种, 请参考
-
sendTipMsg(options){Message}
-
发送提醒消息
- 提醒消息是
消息类型
的一种 - 提醒消息用于会话内的状态提醒,如进入会话时出现的欢迎消息,或者会话命中敏感词后的提示消息等等.
Params:
Name Type Description options
Object 配置参数
Name Type Description tip
String 提醒内容
resend
Boolean optional 是否是重发
idClient
String optional 如果是重发, 那么需要带上之前生成的idClient来标记这条消息
custom
String optional 扩展字段
- 推荐使用
JSON
格式构建, 非JSON
格式的话, Web端会正常接收, 但是会被其它端丢弃
Returns:
Type Description Message 消息
Example:
var msg = chatroom.sendTipMsg({
scene: 'p2p',
to: 'account',
tip: 'tip content',
done: sendChatroomMsgDone
});
// console.log('正在发送聊天室提醒消息, id=' + msg.idClient); - 提醒消息是
-
setOptions(options)
-
更新聊天室配置, 参数格式跟
Chatroom.getInstance
保持一致Params:
Name Type Description options
Object 配置参数
Name Type Description token
String 帐号的 token, 用于建立连接
Example:
// 更新 token 的例子
chatroom.setOptions({
token: 'newToken'
}); -
updateChatroom(options){Void}
-
更新聊天室信息
- 当
更新聊天室
时, 所有聊天室成员会收到类型为
的'updateChatroom'
聊天室通知消息
。
Params:
Name Type Description options
Object 配置参数
Name Type Description chatroom
Object 待更新的聊天室信息
Name Type Description name
String optional 聊天室名字
announcement
String optional 聊天室公告
broadcastUrl
String optional 直播地址
custom
String optional 扩展字段
needNotify
Boolean 是否需要下发对应的通知消息
custom
String optional 对应的通知消息的扩展字段
done
function 结果回调函数
Returns:
Type Description Void Example:
chatroom.updateChatroom({
chatroom: {
name: 'newName',
announcement: 'newAnnouncement',
broadcastUrl: 'newBroadcastUrl',
custom: 'newCustom',
},
needNotify: true,
custom: 'biu',
done: updateChatroomDone
})
function updateChatroomDone () {
// console.log('更新聊天室信息' + (!error?'成功':'失败'), error, obj);
} - 当
-
updateChatroomMemberTempMute(options){Void}
-
设置聊天室临时禁言
- 当有人被
设置聊天室临时禁言
时,所有聊天室成员会收到类型为
的'addTempMute' or 'removeTempMute'
聊天室通知消息
。
Params:
Name Type Description options
Object 配置参数
Name Type Description account
String 帐号
duration
Number 禁言时长,单位秒,传0表示解除禁言
needNotify
Boolean 是否需要下发对应的通知消息
custom
String 对应的通知消息的扩展字段
Returns:
Type Description Void Example:
chatroom.updateChatroomMemberTempMute({
account: 'account',
duration: 60,
needNotify: true,
custom: 'biu',
done: updateChatroomMemberTempMuteDone
})
function updateChatroomMemberTempMuteDone(error, obj) {
// console.log('设置聊天室临时禁言' + (!error?'成功':'失败'), error, obj);
} - 当有人被
-
updateMyChatroomMemberInfo(options){Void}
-
更新自己在聊天室内的信息
- 当
更新自己在聊天室内的信息
时, 所有聊天室成员会收到类型为
的'updateMemberInfo'
聊天室通知消息
。
Params:
Name Type Description options
Object 配置参数
Name Type Description member
Object 待更新的成员信息
Name Type Description nick
String optional 聊天室内的昵称
avatar
String optional 聊天室内的头像
custom
String optional 第三方扩展字段
needNotify
Boolean 是否需要下发对应的通知消息
custom
String optional 对应的通知消息的扩展字段
needSave
String optional 可选,默认false,是否支持nick,avator和custom字段的持久化(固定成员有效)
done
function 结果回调函数
Returns:
Type Description Void Example:
chatroom.updateMyChatroomMemberInfo({
member: {
nick: 'newNick',
avatar: 'newAvatar',
custom: 'newCustom',
},
needNotify: true,
needSave: true,
custom: 'biu',
done: updateMyChatroomMemberInfoDone
})
function updateMyChatroomMemberInfoDone (error, obj) {
// console.log('更新自己在聊天室内的信息' + (!error?'成功':'失败'), error, obj);
} - 当