Interface IZegoRoomCallback


  • public interface IZegoRoomCallback
    房间回调。

    Copyright © 2017 Zego. All rights reserved.

    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void onDisconnect​(int errorCode, java.lang.String roomID)
      ZEGO SDK 与 ZEGO 房间信令服务断开连接时的回调通知。
      void onFatalError​(int errorCode)
      发生致命的错误,SDK无法继续使用
      void onKickOut​(int reason, java.lang.String roomID, java.lang.String customReason)
      用户被踢出房间的回调。
      void onNetworkQuality​(java.lang.String userID, int txQuality, int rxQuality)
      房间内用户的网络质量回调。
      void onReconnect​(int errorCode, java.lang.String roomID)
      ZEGO SDK 与 ZEGO 房间信令服务重连成功时的回调通知。
      void onRecvCustomCommand​(java.lang.String userID, java.lang.String userName, java.lang.String content, java.lang.String roomID)
      收到自定义消息。
      void onRoomInfoUpdated​(ZegoRoomInfo info, java.lang.String roomID)
      房间信息更新,登录成功,或者重连成功后,房间信息变化会收到此回调
      void onStreamExtraInfoUpdated​(ZegoStreamInfo[] listStream, java.lang.String roomID)
      更新流附加信息的回调。
      void onStreamUpdated​(int type, ZegoStreamInfo[] listStream, java.lang.String roomID)
      房间内的推流变化的回调。
      void onTempBroken​(int errorCode, java.lang.String roomID)
      ZEGO SDK 与 ZEGO 房间信令服务临时断开时的回调通知,此后 ZEGO SDK 内部会尝试重连,一般重连时间为90s。
      void onTokenWillExpired​(java.lang.String roomID, int remainTimeInSecond)
      设置的token即将过期回调,登录成功后在设置的token剩余时间小于等于30秒时会收到此回调。
    • Method Detail

      • onKickOut

        void onKickOut​(int reason,
                       java.lang.String roomID,
                       java.lang.String customReason)
        用户被踢出房间的回调。

        被踢出的原因一般是由于多个相同的userid登录时被踢出,业务在使用ZEGO SDK时应保证整个App内userid唯一

        Parameters:
        reason - 被踢出房间的原因的错误码,16777219 表示该账户多点登录被踢出,16777220 表示该账户是被手动踢出,16777221 表示房间会话错误被踢出。
        roomID - 被踢出的所在房间的房间id
        customReason - 被踢出房间时的自定义参数
      • onDisconnect

        void onDisconnect​(int errorCode,
                          java.lang.String roomID)
        ZEGO SDK 与 ZEGO 房间信令服务断开连接时的回调通知。

        1. 一般客户端网络断开且超过超时重试时间的时候会回调此方法,ZEGO SDK 内部有重试逻辑,一般情况网络不可用时SDK内部会重试300s左右,若超过重试时间,则会通过此方法告知App业务层

        2. 当收到此回调时,ZEGO SDK 已经做了重连尝试,业务侧收到此回调时可在UI界面给出友好提示,或者有限次的重连动作

        3. 当收到此回调后,表示 SDK 已断开房间信令服务, 将不再有推/拉流状态回调。

        Parameters:
        errorCode - 错误码
        roomID - 断开连接的房间id
      • onReconnect

        void onReconnect​(int errorCode,
                         java.lang.String roomID)
        ZEGO SDK 与 ZEGO 房间信令服务重连成功时的回调通知。

        客户端网络断开后在重试连接成功时会回调此方法

        收到此回调时,业务层可在UI界面做友好提示

        Parameters:
        errorCode - 错误码
        roomID - 断开连接后重连成功的房间id
      • onTempBroken

        void onTempBroken​(int errorCode,
                          java.lang.String roomID)
        ZEGO SDK 与 ZEGO 房间信令服务临时断开时的回调通知,此后 ZEGO SDK 内部会尝试重连,一般重连时间为90s。

        客户端网络临时断开时会回调此方法

        收到此回调时,业务层可在UI界面做友好提示

        Parameters:
        errorCode - 错误码
        roomID - 断开连接后重连成功的房间id
      • onRoomInfoUpdated

        void onRoomInfoUpdated​(ZegoRoomInfo info,
                               java.lang.String roomID)
        房间信息更新,登录成功,或者重连成功后,房间信息变化会收到此回调
        Parameters:
        info - 参见ZegoRoomInfo
        roomID - 房间 ID
      • onStreamUpdated

        void onStreamUpdated​(int type,
                             ZegoStreamInfo[] listStream,
                             java.lang.String roomID)
        房间内的推流变化的回调。

        用户进入房间之后,在房间的过程中,需要对新增的其他流进行拉流的操作,对中途停推的其他流进行停拉的操作,流新增、中途停推的流都是通过此回调告知业务层

        即同一个房间内的用户调用推流 ZegoLiveRoom.startPublishing(String, String, int) 或 停止推流ZegoLiveRoom.stopPublishing(),房间内的其他用户会收到此回调

        注意:该回调基于 ZEGO 的房间信令服务,需要登录到指定房间里,才能监听到该房间的流变化的回调

        Parameters:
        type - 推流变化的类型,分为流新增类型或流删除类型,枚举值参考 ZegoConstants.StreamUpdateType
        listStream - 推流变化的列表
        roomID - 本回调基于 ZEGO 的房间信令服务,需要进入房间之后才会触发该回调方法,该参数为房间id的标识
      • onStreamExtraInfoUpdated

        void onStreamExtraInfoUpdated​(ZegoStreamInfo[] listStream,
                                      java.lang.String roomID)
        更新流附加信息的回调。

        ZEGO SDK 支持流信息ZegoStreamInfo相关的附加信息 ExtraInfo ZegoStreamInfo.extraInfo来作为流的附加标识, 当推流的用户调用 ZegoLiveRoom.updateStreamExtraInfo(String) 时,房间内用户可以收到此回调。

        在推流过程中,推流的流id无法动态改变,如果与流id相关的附加信息需要动态修改,ZegoLiveRoom.updateStreamExtraInfo(String)与此回调可以实现动态修改流id相关信息的功能

        Parameters:
        listStream - 修改的流信息列表
        roomID - 本回调基于 ZEGO 的房间信令服务,需要进入房间之后才会触发该回调方法,该参数为房间id的标识
      • onRecvCustomCommand

        void onRecvCustomCommand​(java.lang.String userID,
                                 java.lang.String userName,
                                 java.lang.String content,
                                 java.lang.String roomID)
        收到自定义消息。
        Parameters:
        userID - 消息来源UserID
        userName - 消息来源UserName
        content - 消息内容
        roomID - 房间ID
      • onNetworkQuality

        void onNetworkQuality​(java.lang.String userID,
                              int txQuality,
                              int rxQuality)
        房间内用户的网络质量回调。

        1. 只要发起推流或拉流,就会回调自身的网络质量

        2. 以 RTC 或 L3 方式拉流,且对应推流用户和本地用户在同一房间内,会收到对应用户的网络质量

        3. 用户在推流才有上行网络质量,拉流才有下行网络质量,否则网络质量为未知。

        Parameters:
        userID - 用户ID,空表示本地用户
        txQuality - 上行网络质量 枚举值参考 ZegoConstants.ZegoLiveQuality
        rxQuality - 下行网络质量 枚举值参考 ZegoConstants.ZegoLiveQuality
      • onTokenWillExpired

        void onTokenWillExpired​(java.lang.String roomID,
                                int remainTimeInSecond)
        设置的token即将过期回调,登录成功后在设置的token剩余时间小于等于30秒时会收到此回调。
        Parameters:
        roomID - 房间ID
        remainTimeInSecond - 剩余时间 单位为秒
      • onFatalError

        void onFatalError​(int errorCode)
        发生致命的错误,SDK无法继续使用
        Parameters:
        errorCode - 错误码