JavaScript SDK for anyRTC RTM
anyrtc RTM Web SDK 是通过 HTML 网页加载的 JavaScript 库。RTM Web SDK 库在网页浏览器中通过 API 调用 anyRTC 的实时消息服务。
标签引入 SDK 时,产生名为 ArRTM 的全局变量,该变量含有该模块的所有成员。
`
$3
`
import ArRTM from "ar-rtm-sdk";
`
功能介绍
请分别调用 RtmClient.on 和 RtmChannel.on 方法添加 RtmClient 和 RtmChannel 对象的监听器。
anyrtc RTM Web SDK 提供以下功能:
- 登录登出相关
- 点对点消息
- 查询用户在线状态
- 订阅或取消订阅单个或多个指定用户的在线状态
- 用户属性增删改查
- 频道属性增删改查
- 查询单个或多个频道的成员人数
- 上传和下载文件或图片
- 加入离开频道相关
- 频道消息
- 获取频道成员列表
- 呼叫邀请管理
- 更新 Token
- 日志设置与版本查询
- 定制方法
登录登出相关
!img
| 方法 | 描述 |
| ------------------------------------------------------------ | -------------------------------------------- |
| createInstance | 创建一个 RtmClient 实例。 |
| login | 登录 anyrtc RTM 系统。 |
| logout | 退出登录,退出后自动断开连接和销毁回调监听。 |
| 事件 | 描述 |
| ------------------------------------------------------------ | ------------------------------------------------ |
| ConnectionStateChanged | 通知 SDK 与 anyrtc RTM 系统的连接状态发生了改变。 |
点对点消息
!img
| 方法 | 描述 |
| ------------------------------------------------------------ | ------------------------------------------------------ |
| sendMessageToPeer | 向指定用户(接收者)发送点对点消息或点对点的离线消息。 |
| 事件 | 描述 |
| ------------------------------------------------------------ | -------------------------- |
| MessageFromPeer | 收到来自对端的点对点消息。 |
查询用户在线状态
| 方法 | 描述 |
| ------------------------------------------------------------ | ------------------------ |
| queryPeersOnlineStatus | 查询指定用户的在线状态。 |
订阅或取消订阅单个或多个指定用户的在线状态
| Method | Description |
| ------------------------------------------------------------ | -------------------------------------- |
| subscribePeersOnlineStatus | 订阅指定单个或多个用户的在线状态。 |
| unsubscribePeersOnlineStatus | 取消订阅指定单个或多个用户的在线状态。 |
| queryPeersBySubscriptionOption | 获取某特定内容被订阅的用户列表。 |
| Event | Description |
| ------------------------------------------------------------ | ---------------------------- |
| PeersOnlineStatusChanged | 被订阅用户在线状态改变回调。 |
用户属性增删改查
| 方法 | 描述 |
| ------------------------------------------------------------ | ------------------------------ |
| setLocalUserAttributes | 全量设置本地用户的属性。 |
| addOrUpdateLocalUserAttributes | 添加或更新本地用户的属性。 |
| deleteLocalUserAttributesByKeys | 删除本地用户的指定属性。 |
| clearLocalUserAttributes | 清空本地用户的属性。 |
| getUserAttributes | 获取指定用户的全部属性。 |
| getUserAttributesByKeys | 获取指定用户指定属性名的属性。 |
频道属性增删改查
| 方法 | 描述 |
| ------------------------------------------------------------ | -------------------------------- |
| setChannelAttributes | 全量设置某指定频道的属性。 |
| addOrUpdateChannelAttributes | 添加或更新某指定频道的属性。 |
| deleteChannelAttributesByKeys | 删除某指定频道的指定属性。 |
| clearChannelAttributes | 清空某指定频道的属性。 |
| getChannelAttributes | 查询某指定频道的全部属性。 |
| getChannelAttributesByKeys | 查询某指定频道指定属性名的属性。 |
| 频道属性更新事件 | 描述 |
| ------------------------------------------------------------ | ---------------------------------------- |
| AttributesUpdated | 当频道属性更新时返回当前频道的所有属性。 |
查询单个或多个频道的成员人数
| 方法 | 描述 |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| getChannelMemberCount | 查询单个或多个频道的成员人数。用户无需加入指定频道即可调用该方法。 |
加入离开频道相关
!img
| 方法 | 描述 |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| createChannel | 创建一个 RtmChannel 实例。 |
| join | 加入频道。加入频道成功后可收到该频道消息和频道用户进出通知。 |
| leave | 离开频道。不再接收频道消息和频道用户进出通知。 |
| 事件 | 描述 |
| ------------------------------------------------------------ | -------------------------------------------- |
| MemberJoined | 远端用户加入频道回调。 |
| MemberLeft | 远端用户离开频道回调。 |
| MemberCountUpdated | 频道成员人数更新回调。返回最新频道成员人数。 |
频道消息
!img
| 方法 | 描述 |
| ------------------------------------------------------------ | ---------------------------------- |
| sendMessage | 供频道成员向所在频道发送频道消息。 |
| 事件 | 描述 |
| ------------------------------------------------------------ | ------------------ |
| ChannelMessage | 收到频道消息回调。 |
获取频道成员列表
| 方法 | 描述 |
| ------------------------------------------------------------ | ------------------ |
| getMembers | 获取频道成员列表。 |
呼叫邀请管理
- 主叫取消已发送的呼叫邀请的 API 时序图:
!img
- 被叫接收或拒绝收到的呼叫邀请的 API 时序图:
!img
| 供主叫调用的方法 | 描述 |
| ------------------------------------------------------------ | --------------------------------------- |
| createLocalInvitation | 供主叫创建一个 LocalInvitation` 实例。 |