API 概览

最近更新时间:2022-09-20 05:17:40

AR Real-time Messaging (RTM) SDK 提供了稳定可靠、低延时、高并发的全球消息云服务,帮助你快速构建实时场景。

如无特别说明,本页列出的大多数 RTM 核心业务方法都应在调用 login 方法成功收到 onSuccess 回调后才能调用。

登录登出相关

方法描述
createInstance创建并返回一个 RtmClient 实例。
login用户登录 AR RTM 系统。
logout用户登出 AR RTM 系统。
release释放该 ARRtmClient 实例使用的所有资源。
事件描述
onConnectionStateChangedSDK 与 AR RTM 系统的连接状态发生改变回调。

点对点消息

方法描述
createMessage创建并返回一个空文本 RtmMessage 消息实例。
createMessage创建并返回一个文本 RtmMessage 消息实例。
createMessage创建并返回一个自定义二进制 RtmMessage 消息实例。
createMessage创建并返回一个包含文字描述的自定义二进制 RtmMessage 消息实例。
sendMessageToPeer向指定用户发送点对点消息或点对点的离线消息。
事件描述
onMessageReceived收到点对点消息回调。

查询单个或多个用户在线状态

方法描述
queryPeersOnlineStatus获取用户在线状态。

用户属性增删改查

方法描述
setLocalUserAttributes全量设置本地用户的属性。
addOrUpdateLocalUserAttributes添加或更新本地用户的属性。
deleteLocalUserAttributesByKeys删除本地用户的指定属性。
clearLocalUserAttributes清空本地用户的属性。
getUserAttributes获取指定用户的全部属性。
getUserAttributesByKeys获取指定用户指定属性名的属性。

频道属性增删改查

方法描述
setChannelAttributes全量设置某指定频道的属性。
addOrUpdateChannelAttributes添加或更新某指定频道的属性。
deleteChannelAttributesByKeys删除某指定频道的指定属性。
clearChannelAttributes清空某指定频道的属性。
getChannelAttributes获取某指定频道的全部属性。
getChannelAttributesByKeys获取某指定频道指定属性名的属性。
频道属性更新事件描述
onAttributesUpdated当频道属性更新时返回当前频道的所有属性。

加入离开频道相关

方法描述
createChannel创建一个 RtmChannel 频道实例。
join用户加入频道。一个用户最多可以同时加入 20 个 RTM 频道。
leave用户离开频道。
release释放当前频道的所有资源。
事件描述
onMemberJoined远端用户加入频道回调。
onMemberLeft远端频道成员离开频道回调。
onMemberCountUpdated频道成员人数更新回调。返回最新频道成员人数。

频道消息

方法描述
createMessage创建并返回一个空文本 RtmMessage 消息实例。
createMessage创建并返回一个文本 RtmMessage 消息实例。
createMessage创建并返回一个自定义二进制 RtmMessage 消息实例。
createMessage创建并返回一个包含文字描述的自定义二进制 RtmMessage 消息实例。
sendMessage发送频道消息。
事件描述
RtmChannelListener.onMessageReceived收到频道消息。

获取频道成员列表

方法描述
getMembers获取频道成员列表。

呼叫邀请管理

  • 主叫取消已发送的呼叫邀请的 API 时序图:

  • 被叫接受呼叫邀请的 API 时序图:

  • 被叫拒绝呼叫邀请的 API 时序图:

呼叫管理器获取方法描述
getRtmCallManager获取一个 RtmCallManager 呼叫邀请管理器对象。
setEventListener设置 RtmCallManager 实例的监听器。
供主叫调用的方法描述
createLocalInvitation供主叫创建、管理一个 LocalInvitation 呼叫邀请对象。
sendLocalInvitation供主叫向指定用户发送呼叫邀请。
cancelLocalInvitation供主叫取消一个呼叫邀请。
供被叫调用的方法描述
acceptRemoteInvitation供被叫接受来自对方的呼叫邀请。
refuseRemoteInvitation拒绝来自对方的呼叫邀请。
返回给主叫的事件描述
onLocalInvitationReceivedByPeer返回给主叫的回调:被叫已收到呼叫邀请。
onLocalInvitationAccepted返回给主叫的回调:被叫已接受呼叫邀请。
onLocalInvitationRefused返回给主叫的回调:被叫已拒绝呼叫邀请。
onLocalInvitationCanceled返回给主叫的回调:呼叫邀请已被成功取消。
onLocalInvitationFailure返回给主叫的回调:发出的呼叫邀请过程失败。
返回给被叫的事件描述
onRemoteInvitationReceived返回给被叫的回调:收到一条呼叫邀请。SDK 会同时返回一个 RemoteInvitation 对象供被叫管理。
onRemoteInvitationAccepted返回给被叫的回调:接受呼叫邀请成功。
onRemoteInvitationRefused返回给被叫的回调:拒绝呼叫邀请成功。
onRemoteInvitationCanceled返回给被叫的回调:主叫已取消呼叫邀请。
onRemoteInvitationFailure返回给被叫的回调:来自主叫的邀请过程失败。

更新 Token

方法描述
renewToken更新当前的 RTM Token。
事件描述
onTokenExpired(SDK 断线重连时触发)当前使用的 RTM Token 已超过 24 小时的签发有效期。

日志设置与版本查询

  • 日志相关操作在创建 ARRtmClient 实例后即可进行,无需等到调用 login 方法成功。
  • 版本查询操作为静态方法,可在创建并初始化 ARRtmClient 实例前进行。
方法描述
setLogFile设定日志文件的默认地址。
setLogFilter设置日志输出等级。
setLogFileSize设置 SDK 输出的单个日志文件的大小,单位为 KB。 SDK 设有 2 个大小相同的日志文件。
getSdkVersion获取 AR RTM SDK 的版本信息。