0.0.3 • Published 5 years ago
ar-rtm-miniapp v0.0.3
anyrtc RTM Web SDK 是通过 HTML 网页加载的 JavaScript 库。RTM Web SDK 库在网页浏览器中通过 API 调用声网的实时消息服务。
导入
ArRTM 是 anyrtc RTM SDK 的导出模块。
script 导入
使用 <script> 标签引入 SDK 时,产生名为 ArRTM 的全局变量,该变量含有该模块的所有成员。
<script src="https://ardw.anyrtc.io/sdk/web/ArRTM@latest.js"></script>npm 导入
import ArRTM from "ar-rtm-sdk";功能介绍
请分别调用 RtmClient.on 和 RtmChannel.on 方法添加 RtmClient 和 RtmChannel 对象的监听器。
anyrtc RTM Web SDK 提供以下功能:
- 登录登出相关
- 点对点消息
- 查询用户在线状态
- 订阅或取消订阅单个或多个指定用户的在线状态
- 用户属性增删改查
- 频道属性增删改查
- 查询单个或多个频道的成员人数
- 上传和下载文件或图片
- 加入离开频道相关
- 频道消息
- 获取频道成员列表
- 呼叫邀请管理
- 更新 Token
- 日志设置与版本查询
- 定制方法
登录登出相关

| 方法 | 描述 |
|---|---|
| createInstance | 创建一个 RtmClient 实例。 |
| login | 登录 anyrtc RTM 系统。 |
| logout | 退出登录,退出后自动断开连接和销毁回调监听。 |
| 事件 | 描述 |
|---|---|
| ConnectionStateChanged | 通知 SDK 与 anyrtc RTM 系统的连接状态发生了改变。 |
点对点消息

| 方法 | 描述 |
|---|---|
| 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 | 查询单个或多个频道的成员人数。用户无需加入指定频道即可调用该方法。 |
上传或下载文件或图片
| 方法 | 描述 |
|---|---|
| createMediaMessageByUploading | 上传一个文件或图片到 anyrtc 服务器以获取 RtmFileMessage 实例或 RtmImageMessage 实例,可用于发送频道消息和点对点消息。 |
| createMessage | 创建一个消息实例。对于文件消息和图片消息,如果对应的文件或图片已经上传且 media ID 仍然有效,你无需再次上传文件或图片,可以直接调用此方法获取消息实例用来发送点对点消息或频道消息。 |
| downloadMedia | 通过 media ID 从 anyrtc 服务器下载文件或图片。 |
加入离开频道相关

| 方法 | 描述 |
|---|---|
| createChannel | 创建一个 RtmChannel 实例。 |
| join | 加入频道。加入频道成功后可收到该频道消息和频道用户进出通知。 |
| leave | 离开频道。不再接收频道消息和频道用户进出通知。 |
| 事件 | 描述 |
|---|---|
| MemberJoined | 远端用户加入频道回调。 |
| MemberLeft | 远端用户离开频道回调。 |
| MemberCountUpdated | 频道成员人数更新回调。返回最新频道成员人数。 |
频道消息

| 方法 | 描述 |
|---|---|
| sendMessage | 供频道成员向所在频道发送频道消息。 |
| 事件 | 描述 |
|---|---|
| ChannelMessage | 收到频道消息回调。 |
获取频道成员列表
| 方法 | 描述 |
|---|---|
| getMembers | 获取频道成员列表。 |
呼叫邀请管理
- 主叫取消已发送的呼叫邀请的 API 时序图:

- 被叫接收或拒绝收到的呼叫邀请的 API 时序图:

| 供主叫调用的方法 | 描述 |
|---|---|
| createLocalInvitation | 供主叫创建一个 LocalInvitation 实例。 |
| send | 供主叫发送呼叫邀请给对端。 |
| cancel | 供主叫取消已发送的呼叫邀请。 |
| 供被叫调用的方法 | 描述 |
|---|---|
| accept | 供被叫接受呼叫邀请。 |
| refuse | 供被叫拒绝呼叫邀请。 |
| 返回给主叫的事件 | 描述 |
|---|---|
| LocalInvitationReceivedByPeer | 返回给主叫的回调:被叫已收到呼叫邀请。 |
| LocalInvitationCanceled | 返回给主叫的回调:呼叫邀请已被取消。 |
| LocalInvitationAccepted | 返回给主叫的回调:被叫已接受呼叫邀请。 |
| LocalInvitationRefused | 返回给主叫的回调:被叫已拒绝呼叫邀请。 |
| LocalInvitationFailure | 返回给主叫的回调:呼叫邀请过程失败。 |
| 返回给被叫的事件 | 描述 |
|---|---|
| RemoteInvitationReceived | 返回给被叫的回调:收到一条呼叫邀请。 |
| RemoteInvitationCanceled | 返回给被叫的回调:主叫已取消呼叫邀请。 |
| RemoteInvitationAccepted | 返回给被叫的回调:接受呼叫邀请成功。 |
| RemoteInvitationRefused | 返回给被叫的回调:拒绝呼叫邀请成功。 |
| RemoteInvitationFailure | 返回给被叫的回调:呼叫邀请过程失败。 |
更新 Token
| 方法 | 描述 |
|---|---|
| renewToken | 更新当前 Token。 |
| 事件 | 描述 |
|---|---|
| TokenExpired | Token 过期回调。 |
日志设置与版本查询
| 变量 | 描述 |
|---|---|
| enableLogUpload | 是否启用日志上传。 |
| logFilter | 设置 SDK 的日志输出等级。 |
| VERSION | anyrtc RTM SDK 的当前版本信息。 |
##定制方法
| 方法 | 描述 |
|---|---|
| setParameters | 配置 SDK 提供技术预览或特别定制功能。 |