IRtmServiceEventHandler

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

Public 成员函数
virtual~IRtmServiceEventHandler ()
virtual voidonLoginSuccess ()
virtual voidonLoginFailure (LOGIN_ERR_CODE errorCode)
virtual voidonRenewTokenResult (const char *token, RENEW_TOKEN_ERR_CODE errorCode)
virtual voidonTokenWillExpire ()
virtual voidonTokenExpired ()
virtual voidonLogout (LOGOUT_ERR_CODE errorCode)
virtual voidonConnectionStateChanged (CONNECTION_STATE state, CONNECTION_CHANGE_REASON reason)
virtual voidonSendMessageResult (long long messageId, PEER_MESSAGE_ERR_CODE errorCode)
virtual voidonMessageReceivedFromPeer (const char *peerId, const IMessage *message)
virtual voidonQueryPeersOnlineStatusResult (long long requestId, const PeerOnlineStatus *peersStatus, int peerCount, QUERY_PEERS_ONLINE_STATUS_ERR errorCode)
virtual voidonSubscriptionRequestResult (long long requestId, PEER_SUBSCRIPTION_STATUS_ERR errorCode)
virtual voidonQueryPeersBySubscriptionOptionResult (long long requestId, const char *peerIds[], int peerCount, QUERY_PEERS_BY_SUBSCRIPTION_OPTION_ERR errorCode)
virtual voidonPeersOnlineStatusChanged (const PeerOnlineStatus peersStatus[], int peerCount)
virtual voidonSetLocalUserAttributesResult (long long requestId, ATTRIBUTE_OPERATION_ERR errorCode)
virtual voidonAddOrUpdateLocalUserAttributesResult (long long requestId, ATTRIBUTE_OPERATION_ERR errorCode)
virtual voidonDeleteLocalUserAttributesResult (long long requestId, ATTRIBUTE_OPERATION_ERR errorCode)
virtual voidonClearLocalUserAttributesResult (long long requestId, ATTRIBUTE_OPERATION_ERR errorCode)
virtual voidonGetUserAttributesResult (long long requestId, const char *userId, const RtmAttribute *attributes, int numberOfAttributes, ATTRIBUTE_OPERATION_ERR errorCode)
virtual voidonSetChannelAttributesResult (long long requestId, ATTRIBUTE_OPERATION_ERR errorCode)
virtual voidonAddOrUpdateChannelAttributesResult (long long requestId, ATTRIBUTE_OPERATION_ERR errorCode)
virtual voidonDeleteChannelAttributesResult (long long requestId, ATTRIBUTE_OPERATION_ERR errorCode)
virtual voidonClearChannelAttributesResult (long long requestId, ATTRIBUTE_OPERATION_ERR errorCode)
virtual voidonGetChannelAttributesResult (long long requestId, const IRtmChannelAttribute *attributes[], int numberOfAttributes, ATTRIBUTE_OPERATION_ERR errorCode)
virtual voidonGetChannelMemberCountResult (long long requestId, const ChannelMemberCount *channelMemberCounts, int channelCount, GET_CHANNEL_MEMBER_COUNT_ERR_CODE errorCode)

构造及析构函数说明

~IRtmServiceEventHandler

virtual ~IRtmServiceEventHandler()

成员函数说明

onAddOrUpdateChannelAttributesResult

virtual void onAddOrUpdateChannelAttributesResult(long long requestId, ATTRIBUTE_OPERATION_ERR errorCode)

报告 addOrUpdateChannelAttributes 方法的调用结果

参数

参数说明
requestId标识本次请求的的唯一 ID。
errorCode错误码。详见 ATTRIBUTE_OPERATION_ERR

onAddOrUpdateLocalUserAttributesResult

virtual void onAddOrUpdateLocalUserAttributesResult(long long requestId, ATTRIBUTE_OPERATION_ERR errorCode)

报告 addOrUpdateLocalUserAttributes 方法的调用结果

参数

参数说明
requestId标识本次请求的的唯一 ID。
errorCode错误码。详见 ATTRIBUTE_OPERATION_ERR

onClearChannelAttributesResult

virtual void onClearChannelAttributesResult(long long requestId, ATTRIBUTE_OPERATION_ERR errorCode)

报告 clearChannelAttributes 方法的调用结果。

参数

参数说明
requestId标识本次请求的的唯一 ID。
errorCode错误码。详见 ATTRIBUTE_OPERATION_ERR

onClearLocalUserAttributesResult

virtual void onClearLocalUserAttributesResult(long long requestId, ATTRIBUTE_OPERATION_ERR errorCode)

报告 clearLocalUserAttributes 方法的调用结果。

参数

参数说明
requestId标识本次请求的的唯一 ID。
errorCode错误码。详见 ATTRIBUTE_OPERATION_ERR

onConnectionStateChanged

virtual void onConnectionStateChanged(CONNECTION_STATE state, CONNECTION_CHANGE_REASON reason)

SDK 与 anyRTC RTM 系统的连接状态发生改变回调。

参数

参数说明
state新连接状态。详见 CONNECTION_STATE
reason连接状态改变原因。详见 CONNECTION_CHANGE_REASON

onDeleteChannelAttributesResult

virtual void onConnectionStateChanged(CONNECTION_STATE state, CONNECTION_CHANGE_REASON reason)

报告 deleteChannelAttributesByKeys 方法的调用结果。

参数

参数说明
requestId标识本次请求的的唯一 ID。
errorCode错误码。详见 ATTRIBUTE_OPERATION_ERR

onDeleteLocalUserAttributesResult

virtual void onDeleteLocalUserAttributesResult(long long requestId, ATTRIBUTE_OPERATION_ERR errorCode)

报告 deleteLocalUserAttributesByKeys 方法的调用结果。

参数

参数说明
requestId标识本次请求的的唯一 ID。
errorCode错误码。详见 ATTRIBUTE_OPERATION_ERR

onGetChannelAttributesResult

virtual void onGetChannelAttributesResult(long long requestId, const IRtmChannelAttribute* attributes[], int numberOfAttributes, ATTRIBUTE_OPERATION_ERR errorCode)

报告 getChannelAttributesgetChannelAttributesByKeys 方法的调用结果。

参数

参数说明
requestId标识本次请求的的唯一 ID。
attributes频道属性数组。
numberOfAttributes频道属性的条数。
errorCode错误码。详见 ATTRIBUTE_OPERATION_ERR

onGetChannelMemberCountResult

virtual void onGetChannelMemberCountResult(long long requestId, const ChannelMemberCount* channelMemberCounts , int channelCount, GET_CHANNEL_MEMBER_COUNT_ERR_CODE errorCode)

报告 getChannelMemberCount 方法的调用结果

参数

参数说明
requestId标识本次请求的的唯一 ID。
channelMemberCounts频道成员人数数组。
channelCount频道数量。
errorCode错误码。详见 GET_CHANNEL_MEMBER_COUNT_ERR_CODE

onGetUserAttributesResult

virtual void onGetUserAttributesResult(long long requestId, const char* userId, const RtmAttribute* attributes, int numberOfAttributes, ATTRIBUTE_OPERATION_ERR errorCode)

报告 getUserAttributesgetUserAttributesByKeys 方法的调用结果。

参数

参数说明
requestId标识本次请求的的唯一 ID。
userId指定用户的用户 ID。
attributes返回的属性数组。详见 RtmAttribute。
numberOfAttributes用户属性数组的长度。
errorCode错误码。详见 ATTRIBUTE_OPERATION_ERR

onLoginFailure

virtual void onLoginFailure(LOGIN_ERR_CODE errorCode)

登录 anyRTC RTM 系统失败回调。

login 方法调用失败时,本地用户会收到此回调。 错误码详见 LOGIN_ERR_CODE

onLoginSuccess

virtual void onLoginSuccess()

登录 anyRTC RTM 系统成功回调。

当用户调用 login 方法成功加入频道时,本地用户会收到此回调。

onLogout

virtual void onLogout(LOGOUT_ERR_CODE errorCode)

登出 anyRTC RTM 服务回调。

当 SDK 调用 logout 方法时,本地用户会收到此回调。 有关状态,详见 LOGOUT_ERR_CODE

onMessageReceivedFromPeer

virtual void onMessageReceivedFromPeer(const char *peerId, const IMessage *message)

收到点对点消息回调。

参数

参数说明
peerId发送该消息的对端用户 ID。
message接收到的消息。 详见 IMessage

onPeersOnlineStatusChanged

virtual void onPeersOnlineStatusChanged(const PeerOnlineStatus peersStatus[], int peerCount)

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

  • 首次订阅在线状态成功时,SDK 也会返回本回调,显示所有被订阅用户的在线状态。
  • 每当被订阅用户的在线状态发生改变,SDK 都会通过该回调通知订阅方。
  • 如果 SDK 在断线重连过程中有被订阅用户的在线状态发生改变,SDK 会在重连成功时通过该回调通知订阅方。

参数

参数说明
peersStatus用户在线状态列表。详见 PeerOnlineStatus。
peerCount在线状态发生变化的被订阅用户人数.

onQueryPeersBySubscriptionOptionResult

virtual void onQueryPeersBySubscriptionOptionResult(long long requestId, const char* peerIds[], int peerCount, QUERY_PEERS_BY_SUBSCRIPTION_OPTION_ERR errorCode)

报告 queryPeersBySubscriptionOption 方法的调用结果。

参数

参数说明
requestId标识本次请求的的唯一 ID。
peerIds某订阅类型被订阅的用户列表。
peerCount某订阅类型被订阅的用户人数。
errorCode错误码。详见 QUERY_PEERS_BY_SUBSCRIPTION_OPTION_ERR

onQueryPeersOnlineStatusResult

virtual void onQueryPeersOnlineStatusResult(long long requestId, const PeerOnlineStatus* peersStatus, int peerCount, QUERY_PEERS_ONLINE_STATUS_ERR errorCode)

报告 queryPeersOnlineStatus 方法的调用结果。

参数

参数说明
requestId标识本次请求的的唯一 ID。
peerIds某订阅类型被订阅的用户列表。
peerCount某订阅类型被订阅的用户人数。
errorCode错误码。详见 QUERY_PEERS_BY_SUBSCRIPTION_OPTION_ERR

onRenewTokenResult

virtual void onRenewTokenResult(const char* token, RENEW_TOKEN_ERR_CODE errorCode)

报告 renewToken 方法的调用结果

参数

参数说明
token新的 Token
errorCode错误码。详见 RENEW_TOKEN_ERR_CODE

onSendMessageResult

virtual void onSendMessageResult(long long messageId, PEER_MESSAGE_ERR_CODE errorCode)

报告 sendMessageToPeersendMessageToPeer 方法的调用结果

参数

参数说明
messageId点对点消息的 ID。
errorCode错误码。详见 PEER_MESSAGE_ERR_CODE

onSetChannelAttributesResult

virtual void onSetChannelAttributesResult(long long requestId, ATTRIBUTE_OPERATION_ERR errorCode)

报告 setChannelAttributes 方法的调用结果。

参数

参数说明
requestId标识本次请求的的唯一 ID。
errorCode错误码。详见 ATTRIBUTE_OPERATION_ERR

onSetLocalUserAttributesResult

virtual void onSetLocalUserAttributesResult(long long requestId, ATTRIBUTE_OPERATION_ERR errorCode)

报告 setLocalUserAttributes 方法的调用结果

参数

参数说明
requestId标识本次请求的的唯一 ID。
errorCode错误码。详见 ATTRIBUTE_OPERATION_ERR

onSubscriptionRequestResult

virtual void onSubscriptionRequestResult(long long requestId, PEER_SUBSCRIPTION_STATUS_ERR errorCode)

报告 subscribePeersOnlineStatusunsubscribePeersOnlineStatus 方法的调用结果。

参数

参数说明
requestId标识本次请求的的唯一 ID。
errorCode错误码。详见 PEER_SUBSCRIPTION_STATUS_ERR

onTokenWillExpired

virtual void onTokenWillExpired()

在使用RTM过程中如果 Token 即将失效,SDK 会提前 30 秒触发该回调,提醒 app 更新 Token

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

onTokenExpired

virtual void onTokenExpired()

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

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