云信聊天室基于云信实时通信网络,提供完整的聊天室服务。
完整的聊天室 SDK 由 ChatroomInterface, ChatroomServiceInterface 组成。
SDK
的入口,负责建立长连接,登录,断开长连接,销毁实例。它的调用形式如
const sdk = new Chatroom({
// ...初始化配置信息
appkey: 'YOUR_APPKEY',
token: 'YOUR_TOKEN',
account: 'YOUR_ACCOUNT',
isAnonymous: false,
chatroomId: 'YOUR_CHATROOM_ID',
chatroomAddresses: ['YOUR_ADDR']
})
// 初始化事件监听
const eventList = [
// 登陆完成事件
'logined',
// 收到多端登陆通知触发事件
'multiPortLogin',
// 被踢
'kicked',
// 即将开始重连
'willReconnect',
// 断开连接
'disconnect',
// 收到消息
'chatroomMsg'
]
eventList.forEach((key: any) => {
sdk.on(key, (res) => {
console.log(`收到 ${key} 事件:`, res ? JSON.parse(JSON.stringify(res)) : res)
})
})
await sdk.connect()
// 获取聊天室信息
await sdk.chatroom.getInfo()
// 发送消息
await sdk.chatroomMsg.sendTextMsg()
初始化参数见 ChatroomInterface.ChatroomInitializeOptions
初始化事件见 ChatroomInterface.ChatroomEventInterface
方法 | 功能描述 |
---|---|
ChatroomInterface.connect | 建立长连接,并且登录 |
ChatroomInterface.disconnect | 断开连接。 |
ChatroomInterface.destroy | 销毁实例 |
这里只例举部分 API,完整的 API 请参见 ChatroomServiceInterface
方法 | 功能描述 |
---|---|
ChatroomServiceInterface.getInfo | 获取本聊天室的信息 |
ChatroomServiceInterface.updateInfo | 更新自己在聊天室中的信息 |
这里只例举部分 API,完整的 API 请参见 ChatroomMsgServiceInterface
方法 | 功能描述 |
---|---|
ChatroomMsgServiceInterface.sendTextMsg | 发送文本消息 |
ChatroomMsgServiceInterface.queryMessageHistory | 获取聊天室历史消息 |
这里只例举部分 API,完整的 API 请参见 ChatroomMemberServiceInterface
方法 | 功能描述 |
---|---|
ChatroomMemberServiceInterface.queryMembers | 获取聊天室成员列表 |
ChatroomMemberServiceInterface.queryMembersByAccounts | 获取聊天室成员 |
ChatroomMemberServiceInterface.kickMember | 踢聊天室成员 |
ChatroomMemberServiceInterface.updateMyRoomRole | 更新自己在聊天室中的信息 |