ARtmDelegate

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

概览

ARtmDelegate 接口类向 App 发送回调通知,上报运行时的事件。

connectionStateChanged

- (void)rtmKit:(ARtmKit * _Nonnull)kit connectionStateChanged:(ARtmConnectionState)state reason:(ARtmConnectionChangeReason)reason;

连接状态改变回调

参数描述
kitARtmKit 实例。
state新的连接状态,详见 ARtmConnectionState
reason连接状态改变的原因,详见 ARtmConnectionChangeReason

messageReceived

- (void)rtmKit:(ARtmKit * _Nonnull)kit messageReceived:(ARtmMessage * _Nonnull)message fromPeer:(NSString * _Nonnull)peerId;

连接状态改变回调

参数描述
kitARtmKit 实例。
message收到的消息内容。
peerId消息发送者的用户 ID。

peersOnlineStatusChanged

- (void)rtmKit:(ARtmKit * _Nonnull)kit peersOnlineStatusChanged:(NSArray< ARtmPeerOnlineStatus *> * _Nonnull)onlineStatus;

被订阅用户在线状态改变回调

  • 首次订阅在线状态成功时,SDK 也会返回本回调,显示所有被订阅用户的在线状态。
  • 每当被订阅用户的在线状态发生改变,SDK 都会通过该回调通知订阅方。
  • 如果 SDK 在断线重连过程中有被订阅用户的在线状态发生改变,SDK 会在重连成功时通过该回调通知订阅方。
参数描述
kitARtmKit 实例。
onlineStatus用户在线状态列表。详见 ARtmPeerOnlineStatus

rtmKitTokenDidExpire

- (void)rtmKitTokenDidExpire:(ARtmKit * _Nonnull)kit;

(SDK 断线重连时触发)当前使用的 RTM Token 已超过 24 小时的签发有效期。

收到该回调时,请尽快在你的业务服务端生成新的 Token,然后调用loginByToken重新登录。

参数描述
kitARtmKit 实例。

rtmKitTokenPrivilegeWillExpire

- (void)rtmKitTokenPrivilegeWillExpire:(ARtmKit *_Nonnull)kit;

当前使用的 RTM Token 还有 30 秒过期。

  • SDK 触发该回调提醒 App 当前 Token 即将过期,应即时获取新 Token。收到该回调后,你需要在服务端生成新 Token 并调用 renewToken 方法将该 Token 传给 SDK。
  • 如果调用 loginByToken 方法登录时传入的 Token 直至过期仍未更新,SDK 会断开连接,用户将下线。
参数描述
kitARtmKit 实例。