private val clientEvent = object : RTCClientSimpleEvent() {
override fun onJoinSucceed(channel: String, uid: String, whiteBoard: String?) {
// 真正入会成功;可在这里更新 UI 或开始发布
}
override fun onJoinFailed(channel: String?, statusCode: Int) {
// 入会失败;statusCode 见错误码文档
}
override fun onRemoteUserJoin(channel: String, uid: String) {
// 维护本频道成员列表
}
override fun onStreamTrackAdd(
uid: String,
channel: String,
trackId: String,
trackDesc: String
) {
subscribeRemoteVideo(uid, trackId, trackDesc)
}
override fun onDisconnected(
channel: String,
leaveReason: LeaveReason,
statusCode: Int,
message: String
) {
// 本频道发生不可恢复断连
}
}
rtcEngine.setRtcMediaEvent(object : RTCMediaSimpleEvent() {
override fun onMediaConnected(channel: String) {
// 默认频道的流媒体服务器连接成功
}
override fun onVolumesReport(
channel: String,
volumes: MutableMap<UserTrackDesc, VolumeInfo>
) {
// 频道音量信息,可用于说话人高亮
}
})