文档中心
服务端网关
API 参考
服务端网关 SDK Java API 参考
|
void | onConnected (AgoraRtcConn agora_rtc_conn, RtcConnInfo conn_info, int reason) |
|
void | onDisconnected (AgoraRtcConn agora_rtc_conn, RtcConnInfo conn_info, int reason) |
|
void | onConnecting (AgoraRtcConn agora_rtc_conn, RtcConnInfo conn_info, int reason) |
|
void | onReconnecting (AgoraRtcConn agora_rtc_conn, RtcConnInfo conn_info, int reason) |
|
void | onConnectionLost (AgoraRtcConn agora_rtc_conn, RtcConnInfo conn_info) |
|
void | onLastmileQuality (AgoraRtcConn agora_rtc_conn, int quality) |
|
void | onLastmileProbeResult (AgoraRtcConn agora_rtc_conn, LastmileProbeResult result) |
|
void | onTokenPrivilegeWillExpire (AgoraRtcConn agora_rtc_conn, String token) |
|
void | onTokenPrivilegeDidExpire (AgoraRtcConn agora_rtc_conn) |
|
void | onConnectionFailure (AgoraRtcConn agora_rtc_conn, RtcConnInfo conn_info, int reason) |
|
void | onUserJoined (AgoraRtcConn agora_rtc_conn, String user_id) |
|
void | onUserLeft (AgoraRtcConn agora_rtc_conn, String user_id, int reason) |
|
void | onTransportStats (AgoraRtcConn agora_rtc_conn, RtcStats stats) |
|
void | onChangeRoleSuccess (AgoraRtcConn agora_rtc_conn, int old_role, int new_role) |
|
void | onChangeRoleFailure (AgoraRtcConn agora_rtc_conn) |
|
void | onUserNetworkQuality (AgoraRtcConn agora_rtc_conn, String user_id, int tx_quality, int rx_quality) |
|
void | onNetworkTypeChanged (AgoraRtcConn agora_rtc_conn, int type) |
|
void | onEncryptionError (AgoraRtcConn agora_rtc_conn, int error_type) |
|
void | onUploadLogResult (AgoraRtcConn agora_rtc_conn, String request_id, int success, int reason) |
|
◆ onChangeRoleFailure()
void io.agora.rtc.IRtcConnObserver.onChangeRoleFailure |
( |
AgoraRtcConn |
agora_rtc_conn | ) |
|
本地用户角色切换失败时触发。
- 参数
-
agora_rtc_conn | 一个 AgoraRtcConn 对象。 |
◆ onChangeRoleSuccess()
void io.agora.rtc.IRtcConnObserver.onChangeRoleSuccess |
( |
AgoraRtcConn |
agora_rtc_conn, |
|
|
int |
old_role, |
|
|
int |
new_role |
|
) |
| |
本地用户角色变更时触发。
- 参数
-
agora_rtc_conn | 一个 AgoraRtcConn 对象。 |
old_role | 本地用户变更前的角色:
- 1:主播。主播可以同时发送和接收媒体流。
- 2:观众。观众只能接收媒体流。
|
new_role | 本地用户变更后的角色:
- 1:主播。主播可以同时发送和接收媒体流。
- 2:观众。观众只能接收媒体流。
|
◆ onConnected()
SDK 与频道的连接状态变更为 CONNECTION_STATE_CONNECTED(3)
时触发。
- 参数
-
agora_rtc_conn | 一个 AgoraRtcConn 对象。 |
conn_info | 连接信息。 |
reason | 连接状态变更原因:
- 0:建立网络连接中 。
- 1:成功加入频道 。
- 2:网络连接中断 。
- 3:网络连接被服务器禁止 。
- 4:无法加入频道超过 20 分钟,停止连接。
- 5:离开频道 。
- 6:不是有效的 APP ID,连接失败。
- 7:不是有效的频道名,连接失败。
- 8:生成的 Token 无效,连接失败。
- 9:生成的 Token 过期,连接失败。
- 10:此用户被服务器禁止 。
- 11:由于设置了代理服务器,SDK 尝试重连 。
- 12:更新 Token 引起网络连接状态改变 。
- 13:客户端 IP 地址变更,可能是由于网络类型,或网络运营商的 IP 或端口发生改变引起 。
- 14:SDK 和服务器连接保活超时,进入自动重连状态 。
- 15:重新加入频道成功。
- 16:SDK 和服务器失去连接 。
- 17:连接状态变化由回声测试引起。
- 18:用户更改了本地 IP 地址。
|
◆ onConnecting()
SDK 与频道的连接状态变更为 CONNECTION_STATE_CONNECTING(2)
时触发。
- 参数
-
agora_rtc_conn | 一个 AgoraRtcConn 对象。 |
conn_info | 连接信息。 |
reason | 连接状态变更原因。 |
◆ onConnectionFailure()
void io.agora.rtc.IRtcConnObserver.onConnectionFailure |
( |
AgoraRtcConn |
agora_rtc_conn, |
|
|
RtcConnInfo |
conn_info, |
|
|
int |
reason |
|
) |
| |
SDK 与频道的连接状态变更为 CONNECTION_STATE_FAILED(5)
时触发。
- 参数
-
agora_rtc_conn | 一个 AgoraRtcConn 对象。 |
conn_info | 连接信息。 |
reason | 连接状态变更原因。 |
◆ onConnectionLost()
SDK 失去与频道的连接时触发。
- 参数
-
agora_rtc_conn | 一个 AgoraRtcConn 对象。 |
conn_info | 连接信息。 |
◆ onDisconnected()
void io.agora.rtc.IRtcConnObserver.onDisconnected |
( |
AgoraRtcConn |
agora_rtc_conn, |
|
|
RtcConnInfo |
conn_info, |
|
|
int |
reason |
|
) |
| |
SDK 与频道的连接状态变更为 CONNECTION_STATE_DISCONNECTED(1)
时触发。
- 参数
-
agora_rtc_conn | 一个 AgoraRtcConn 对象。 |
conn_info | 连接信息。 |
reason | 连接状态变更原因。 |
◆ onEncryptionError()
void io.agora.rtc.IRtcConnObserver.onEncryptionError |
( |
AgoraRtcConn |
agora_rtc_conn, |
|
|
int |
error_type |
|
) |
| |
加密出错回调。
- 参数
-
agora_rtc_conn | 一个 AgoraRtcConn 对象。 |
error_type | 加密错误类型。 |
◆ onLastmileProbeResult()
◆ onLastmileQuality()
void io.agora.rtc.IRtcConnObserver.onLastmileQuality |
( |
AgoraRtcConn |
agora_rtc_conn, |
|
|
int |
quality |
|
) |
| |
报告 last-mile 网络质量。
SDK 在调用 startLastmileProbeTest 两秒后触发该回调。
- 参数
-
agora_rtc_conn | 一个 AgoraRtcConn 对象。 |
quality | Last-mile 网络质量。
- 0:质量未知。
- 1:质量极好。
- 2:用户主观感觉和极好差不多,但码率可能略低于极好。
- 3:用户主观感受有瑕疵但不影响沟通。
- 4:勉强能沟通但不顺畅。
- 5:网络质量非常差,基本不能沟通。
- 6:网络连接断开,完全无法沟通。
|
◆ onNetworkTypeChanged()
void io.agora.rtc.IRtcConnObserver.onNetworkTypeChanged |
( |
AgoraRtcConn |
agora_rtc_conn, |
|
|
int |
type |
|
) |
| |
本地网络类型发生改变回调。
- 参数
-
agora_rtc_conn | 一个 AgoraRtcConn 对象。 |
type | 当前网络连接类型:
- -1:网络连接类型未知。
- 0:网络连接已断开。
- 1:网络类型为 LAN。
- 2:网络类型为 Wi-Fi(包含热点)。
- 3:网络类型为 2G 移动网络。
- 4:网络类型为 3G 移动网络。
- 5:网络类型为 4G 移动网络。
|
◆ onReconnecting()
void io.agora.rtc.IRtcConnObserver.onReconnecting |
( |
AgoraRtcConn |
agora_rtc_conn, |
|
|
RtcConnInfo |
conn_info, |
|
|
int |
reason |
|
) |
| |
SDK 与频道的连接状态变更为 CONNECTION_STATE_RECONNECTING(4)
时触发。
- 参数
-
agora_rtc_conn | 一个 AgoraRtcConn 对象。 |
conn_info | 连接信息。 |
reason | 连接状态变更原因。 |
◆ onTokenPrivilegeDidExpire()
void io.agora.rtc.IRtcConnObserver.onTokenPrivilegeDidExpire |
( |
AgoraRtcConn |
agora_rtc_conn | ) |
|
Token 已过期时触发。 当收到该回调时,你需要重新在服务端生成新的 Token,然后重新连接频道。
- 参数
-
agora_rtc_conn | 一个 AgoraRtcConn 对象。 |
◆ onTokenPrivilegeWillExpire()
void io.agora.rtc.IRtcConnObserver.onTokenPrivilegeWillExpire |
( |
AgoraRtcConn |
agora_rtc_conn, |
|
|
String |
token |
|
) |
| |
Token 将在 30s 内过期时触发。
在通话过程中如果 Token 即将失效,SDK 会提前 30 秒触发该回调,提醒 app 更新 Token。 当收到该回调时,你需要重新在服务端生成新的 Token,然后调用 renewToken 将新生成的 Token 传给 SDK。
- 参数
-
agora_rtc_conn | 一个 AgoraRtcConn 对象。 |
token | 将在30 秒内过期的 Token。 |
◆ onTransportStats()
报告连接的传输统计信息。
当连接状态为 CONNECTION_STATE_CONNECTED(3)
时,SDK 每两秒触发一次回调。
- 参数
-
agora_rtc_conn | 一个 AgoraRtcConn 对象。 |
stats | 连接统计信息。 |
◆ onUploadLogResult()
void io.agora.rtc.IRtcConnObserver.onUploadLogResult |
( |
AgoraRtcConn |
agora_rtc_conn, |
|
|
String |
request_id, |
|
|
int |
success, |
|
|
int |
reason |
|
) |
| |
◆ onUserJoined()
void io.agora.rtc.IRtcConnObserver.onUserJoined |
( |
AgoraRtcConn |
agora_rtc_conn, |
|
|
String |
user_id |
|
) |
| |
远端用户加入频道时触发。
你可以在该回调中获取远端用户 ID。
- 参数
-
agora_rtc_conn | 一个 AgoraRtcConn 对象。 |
user_id | 加入频道的远端用户的 ID。 |
◆ onUserLeft()
void io.agora.rtc.IRtcConnObserver.onUserLeft |
( |
AgoraRtcConn |
agora_rtc_conn, |
|
|
String |
user_id, |
|
|
int |
reason |
|
) |
| |
远端用户离开频道时触发。
你可以通过 reason
参数获取该用户离开频道的原因。
- 参数
-
agora_rtc_conn | 一个 AgoraRtcConn 对象。 |
user_id | 离开频道的远端用户 ID。 |
reason | 离开频道原因。 |
◆ onUserNetworkQuality()
void io.agora.rtc.IRtcConnObserver.onUserNetworkQuality |
( |
AgoraRtcConn |
agora_rtc_conn, |
|
|
String |
user_id, |
|
|
int |
tx_quality, |
|
|
int |
rx_quality |
|
) |
| |
通话中每个用户的网络上下行 last mile 质量报告回调。
该回调每 2 秒触发一次,报告频道内每个用户(包括本地用户)的上下行网络状态。
- 参数
-
agora_rtc_conn | 一个 AgoraRtcConn 对象。 |
user_id | 用户 ID。如该参数为空,表示该回调报告的是本地用户的网络质量。 |
tx_quality | 该用户的上行网络质量。 |
rx_quality | 该用户的下行网络质量。 |
该接口的文档由以下文件生成: