You need to enable JavaScript to run this app.
导航

回调

最近更新时间2023.11.03 16:17:51

首次发布时间2022.09.14 20:26:33

IRTSEventHandler
public abstract class com.ss.bytertc.rts.engine.handler.IRTSEventHandler

RTS engine event callback handler

成员函数

返回名称
voidonSysStats
voidonNetworkTypeChanged
voidonCreateRoomStateChanged
voidonConnectionStateChanged
voidonLogReport
voidonLoginResult
voidonLogout
voidonServerParamsSetResult
voidonGetPeerOnlineStatus
voidonMessageReceived
voidonBinaryMessageReceived
voidonMessageSendResult
voidonServerMessageSendResult
voidonLocalProxyStateChanged

函数说明

onSysStats

public void com.ss.bytertc.rts.engine.handler.IRTSEventHandler.onSysStats(
    SysStats stats)

通知当前 cpu、内存使用信息的回调,每 2s 回调一次。

传入参数

参数名类型说明
statsSysStatscpu、内存信息。详见 SysStats 数据类型。

onNetworkTypeChanged

public void com.ss.bytertc.rts.engine.handler.IRTSEventHandler.onNetworkTypeChanged(
    int type)

SDK 当前网络连接类型改变的回调。

传入参数

参数名类型说明
typeint网络类型:
• -1: 网络连接类型未知。
• 0: 网络连接已断开。
• 1: LAN
• 2: Wi-Fi,包含热点
• 3: 2G 移动网络
• 4: 3G 移动网络
• 5: 4G 移动网络
• 6: 5G 移动网络

onCreateRoomStateChanged

public void com.ss.bytertc.rts.engine.handler.IRTSEventHandler.onCreateRoomStateChanged(
    String roomId,
    int errorCode)

创建房间失败回调。

传入参数

参数名类型说明
roomIdString房间 ID。
errorCodeint创建房间错误码:
• -1007:无效 roomId;
• -1013:相同 roomId 的房间已存在。

onConnectionStateChanged

public void com.ss.bytertc.rts.engine.handler.IRTSEventHandler.onConnectionStateChanged(
    int state,
    int reason)

SDK 与信令服务器的网络连接状态改变时的回调。

传入参数

参数名类型说明
stateint当前 SDK 与信令服务器连接状态。详细定义参见 ConnectionState
reasonint引起信令服务器连接状态发生改变的原因,目前未启用,固定为 -1 。

注意
更多信息参见 连接状态提示

onLogReport

public void com.ss.bytertc.rts.engine.handler.IRTSEventHandler.onLogReport(
    String logType,
    JSONObject logContent)

上报日志时回调该事件。

传入参数

参数名类型说明
logTypeString日志类型。
logContentJSONObject日志内容。

onLoginResult

public void com.ss.bytertc.rts.engine.handler.IRTSEventHandler.onLoginResult(
    String uid,
    int error_code,
    int elapsed)

登录 RTS 服务器结果回调。

传入参数

参数名类型说明
uidString登录用户 ID。
error_codeint登录结果,详见 LoginErrorCode
elapsedint从调用 login 接口开始到返回结果所用时长,单位为 ms。

注意
调用 login 后,会收到此回调。

onLogout

public void com.ss.bytertc.rts.engine.handler.IRTSEventHandler.onLogout()

登出结果回调。

注意
调用 logout 后,会收到此回调。

onServerParamsSetResult

public void com.ss.bytertc.rts.engine.handler.IRTSEventHandler.onServerParamsSetResult(
    int error)

设置应用服务器参数的结果回调。

传入参数

参数名类型说明
errorint设置结果:
• 200:设置成功;
• 其他:设置失败。

注意
调用 setServerParams 后,会收到此回调。

onGetPeerOnlineStatus

public void com.ss.bytertc.rts.engine.handler.IRTSEventHandler.onGetPeerOnlineStatus(
    String peerUserId,
    int status)

查询本地或远端用户登录状态的结果回调。

传入参数

参数名类型说明
peerUserIdString需要查询的用户 ID
statusint查询的用户登录状态,详见 UserOnlineStatus.

注意
必须先调用 getPeerOnlineStatus,才能收到此回调。

onMessageReceived

public void com.ss.bytertc.rts.engine.handler.IRTSEventHandler.onMessageReceived(
    String uid,
    String message)

收到远端用户调用 sendMessage 发来的文本消息时,会收到此回调。

传入参数

参数名类型说明
uidString消息发送者 ID。
messageString收到的文本消息内容。

onBinaryMessageReceived

public void com.ss.bytertc.rts.engine.handler.IRTSEventHandler.onBinaryMessageReceived(
    String uid,
    ByteBuffer message)

收到远端用户调用 sendBinaryMessage 发来的二进制消息时,会收到此回调。

传入参数

参数名类型说明
uidString消息发送者 ID。
messageByteBuffer收到的二进制消息内容。

onMessageSendResult

public void com.ss.bytertc.rts.engine.handler.IRTSEventHandler.onMessageSendResult(
    long msgid,
    int error)

发送 p2p 消息的结果回调。

传入参数

参数名类型说明
msgidlong本条消息的 ID。
所有的 P2P 和 P2Server 消息共用一个 ID 序列。
errorint消息发送结果,详见 UserMessageSendResult

注意
当调用 sendMessagesendBinaryMessage 发送消息后,会收到此回调。

onServerMessageSendResult

public void com.ss.bytertc.rts.engine.handler.IRTSEventHandler.onServerMessageSendResult(
    long msgid,
    int error,
    ByteBuffer message)

发送 p2server 消息的结果回调。

传入参数

参数名类型说明
msgidlong本条消息的 ID。
所有的 P2P 和 P2Server 消息共用一个 ID 序列。
errorint消息发送结果,详见 UserMessageSendResult
messageByteBuffer应用服务器收到 HTTP 请求后,在 ACK 中返回的信息。

注意
当调用 sendServerMessagesendServerBinaryMessage 接口发送消息后,会收到此回调。

onLocalProxyStateChanged

public void com.ss.bytertc.rts.engine.handler.IRTSEventHandler.onLocalProxyStateChanged(
    LocalProxyType localProxyType,
    LocalProxyState localProxyState,
    LocalProxyError localProxyError)

本地代理状态发生改变回调。调用 setLocalProxy 设置本地代理后,SDK 会触发此回调,通知代理连接的状态。

传入参数

参数名类型说明
localProxyTypeLocalProxyType本地代理类型。参看 LocalProxyType
localProxyStateLocalProxyState本地代理状态。参看 LocalProxyState
localProxyErrorLocalProxyError本地代理错误。参看 LocalProxyError
IRTSRoomEventHandler
public abstract class com.ss.bytertc.rts.engine.handler.IRTSRoomEventHandler

RTS room event callback handler

成员函数

返回名称
abstract voidonLeaveRoom
abstract voidonRoomStateChanged
abstract voidonUserJoined
abstract voidonUserLeave
abstract voidonRoomMessageReceived
abstract voidonRoomBinaryMessageReceived
abstract voidonRoomMessageSendResult

函数说明

onLeaveRoom

public abstract void com.ss.bytertc.rts.engine.handler.IRTSRoomEventHandler.onLeaveRoom()

离开房间成功回调。

用户调用 leaveRoom 方法后,SDK 会停止房间内消息的收发,并在释放所有相关资源后,通过此回调通知用户离开房间成功。

注意
用户调用 leaveRoom 方法离开房间后,如果立即调用 destroyRTS 方法销毁 RTC 引擎,则将无法收到此回调事件。

onRoomStateChanged

public abstract void com.ss.bytertc.rts.engine.handler.IRTSRoomEventHandler.onRoomStateChanged(
    String roomId,
    String uid,
    int state,
    String extraInfo)

房间状态改变回调,加入房间、异常退出房间、发生房间相关的警告或错误时会收到此回调。

传入参数

参数名类型说明
roomIdString房间 ID。
uidString用户 ID。
stateint房间状态码。
• 0: 加入房间成功。
• !0: 加入房间失败、异常退房、发生房间相关的警告或错误。具体原因参看 ErrorCodeWarningCode
extraInfoString额外信息,如 {"elapsed":1187,"join_type":0}
join_type 表示加入房间的类型,0为首次进房,1为重连进房。
elapsed 表示加入房间耗时,即本地用户从调用 joinRoom 到加入房间成功所经历的时间间隔,单位为 ms。

onUserJoined

public abstract void com.ss.bytertc.rts.engine.handler.IRTSRoomEventHandler.onUserJoined(
    String uid,
    int elapsed)

远端用户首次进房,或断网后重新连入房间时,房间内其他用户将收到该事件。

传入参数

参数名类型说明
uidString加入房间的用户 ID
elapsedint远端用户调用 joinRoom 加入房间到房间内其他用户收到该事件经历的时间,单位为 ms。

onUserLeave

public abstract void com.ss.bytertc.rts.engine.handler.IRTSRoomEventHandler.onUserLeave(
    String uid,
    int reason)

远端用户离开房间时,本地用户会收到此事件

传入参数

参数名类型说明
uidString离开房间的远端用户 ID。
reasonint用户离开房间的原因:
• 0: 远端用户调用 leaveRoom 主动退出房间。
• 1: 远端用户因 Token 过期或网络原因等掉线。
• 2: 服务端调用 OpenAPI 将该远端用户踢出房间。

onRoomMessageReceived

public abstract void com.ss.bytertc.rts.engine.handler.IRTSRoomEventHandler.onRoomMessageReceived(
    String uid,
    String message)

接收到房间内广播消息的回调。

房间内其他用户调用 sendRoomMessage 发送广播消息时,收到此回调。

传入参数

参数名类型说明
uidString消息发送者 ID
messageString收到的消息内容

onRoomBinaryMessageReceived

public abstract void com.ss.bytertc.rts.engine.handler.IRTSRoomEventHandler.onRoomBinaryMessageReceived(
    String uid,
    ByteBuffer message)

接收到房间内广播二进制消息的回调。

房间内其他用户调用 sendRoomBinaryMessage 发送广播二进制消息时,收到此回调。

传入参数

参数名类型说明
uidString消息发送者 ID
messageByteBuffer收到的二进制消息内容

onRoomMessageSendResult

public abstract void com.ss.bytertc.rts.engine.handler.IRTSRoomEventHandler.onRoomMessageSendResult(
    long msgid,
    int error)

调用 sendRoomMessagesendRoomBinaryMessage 向房间内群发文本或二进制消息后,消息发送方会收到该消息发送结果回调。

传入参数

参数名类型说明
msgidlong本条消息的 ID。
errorint消息发送结果,详见 RoomMessageSendResult