Package io.rong.calllib

## Interface ICallEngineListener

- All Implemented Interfaces:

      public interface ICallEngineListener

  Created by mamingyang on 18/4/20.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---

  - ### Enum Constant Summary

    Enum Constants
    Enum Constant | Description
    --- | ---

  - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `abstract void` | `onJoinChannelSuccess(String channel, String sessionId, int elapsed)` |
    `abstract void` | `onRejoinChannelSuccess(String channel, String mediaId, int elapsed)` |
    `abstract void` | `onWarning(int warn)` |
    `abstract void` | `onError(int err)` |
    `abstract void` | `onApiCallExecuted(String api, int error)` |
    `abstract void` | `onCameraReady()` |
    `abstract void` | `onVideoStopped()` |
    `abstract void` | `onAudioQuality(String mediaId, int quality, short delay, short lost)` |
    `abstract void` | `onLeaveChannel(int val)` |
    `abstract void` | `onRtcStats()` |
    `abstract void` | `onAudioVolumeIndication(int totalVolume)` |
    `abstract void` | `onUserJoined(String mediaId, int userType, int methodIdentification)` |
    `abstract void` | `onRemoteUserPublishStream(String userId, String streamId, String tag)` |
    `abstract void` | `onRemoteUserUnpublishStream(String userId, String streamId, String tag)` |
    `abstract void` | `onUserOffline(String userId, int reason)` |
    `abstract void` | `onUserMuteAudio(String userId, boolean muted)` |
    `abstract void` | `onUserMuteVideo(String mediaId, boolean muted)` |
    `abstract void` | `onRemoteVideoStat(String mediaId, int delay, int receivedBitrate, int receivedFrameRate)` |
    `abstract void` | `onLocalVideoStat(int sentBitrate, int sentFrameRate)` |
    `abstract void` | `onFirstRemoteVideoFrame(String mediaId, int width, int height, int elapsed)` |
    `abstract void` | `onFirstRemoteAudioFrame(String mediaId)` |
    `abstract void` | `onFirstLocalVideoFrame(int width, int height, int elapsed)` |
    `abstract void` | `onFirstRemoteVideoDecoded(String mediaId, int width, int height, int elapsed)` |
    `abstract void` | `onConnectionLost()` |
    `abstract void` | `onConnectionInterrupted()` |
    `abstract void` | `onMediaEngineEvent(int code)` |
    `abstract void` | `onVendorMessage(String mediaId, Array<byte> data)` |
    `abstract void` | `onRefreshRecordingServiceStatus(int status)` |
    `abstract void` | `onAudioLevelReceive(HashMap<String, String> audioLevel)` |
    `abstract void` | `onAudioLevelSend(String audioLevel)` |
    `abstract void` | `onWhiteBoardURL(String url)` |
    `abstract void` | `onNetworkReceiveLost(String userId, int lossRate)` |
    `abstract void` | `onNetworkSendLost(int lossRate, int delay)` |
    `abstract void` | `onNotifySharingScreen(String userId, boolean isSharing)` |
    `abstract void` | `onNotifyDegradeNormalUserToObserver(String hostUid, String userId)` |
    `abstract void` | `onNotifyAnswerObserverRequestBecomeNormalUser(String userId, long status)` |
    `abstract void` | `onNotifyUpgradeObserverToNormalUser(String hostUid, String userId)` |
    `abstract void` | `onNotifyHostControlUserDevice(String userId, String hostId, int dType, boolean isOpen)` |
    `abstract void` | `onNotifyAnswerDegradeNormalUserToObserver(String s, boolean b)` | 主持人将与会某正常用户降级为观察者
    `abstract void` | `onNotifyAnswerUpgradeObserverToNormalUser(String userId, boolean isAccept)` | 主持人邀请观察者升级成正常用户, 观察者做出接受/拒绝之后, 给所有人的回调
    `abstract void` | `sendinInvite()` |
    `abstract void` | `onRemoteUserUnpublishCameraStream(String userId, String streamId, String tag)` |

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

  - ### Method Detail

    - #### onJoinChannelSuccess

           abstract void onJoinChannelSuccess(String channel, String sessionId, int elapsed)

    - #### onRejoinChannelSuccess

           abstract void onRejoinChannelSuccess(String channel, String mediaId, int elapsed)

    - #### onWarning

           abstract void onWarning(int warn)

    - #### onError

           abstract void onError(int err)

    - #### onApiCallExecuted

           abstract void onApiCallExecuted(String api, int error)

    - #### onCameraReady

           abstract void onCameraReady()

    - #### onVideoStopped

           abstract void onVideoStopped()

    - #### onAudioQuality

           abstract void onAudioQuality(String mediaId, int quality, short delay, short lost)

    - #### onLeaveChannel

           abstract void onLeaveChannel(int val)

    - #### onRtcStats

           abstract void onRtcStats()

    - #### onAudioVolumeIndication

           abstract void onAudioVolumeIndication(int totalVolume)

    - #### onUserJoined

           abstract void onUserJoined(String mediaId, int userType, int methodIdentification)

      Parameters:
        `methodIdentification` - 方法调用标识 区分流加入 还是 信令加入, 1:流加入 ，2：信令加入

    - #### onRemoteUserPublishStream

           abstract void onRemoteUserPublishStream(String userId, String streamId, String tag)

    - #### onRemoteUserUnpublishStream

           abstract void onRemoteUserUnpublishStream(String userId, String streamId, String tag)

    - #### onUserOffline

           abstract void onUserOffline(String userId, int reason)

    - #### onUserMuteAudio

           abstract void onUserMuteAudio(String userId, boolean muted)

    - #### onUserMuteVideo

           abstract void onUserMuteVideo(String mediaId, boolean muted)

    - #### onRemoteVideoStat

           abstract void onRemoteVideoStat(String mediaId, int delay, int receivedBitrate, int receivedFrameRate)

    - #### onLocalVideoStat

           abstract void onLocalVideoStat(int sentBitrate, int sentFrameRate)

    - #### onFirstRemoteVideoFrame

           abstract void onFirstRemoteVideoFrame(String mediaId, int width, int height, int elapsed)

    - #### onFirstRemoteAudioFrame

           abstract void onFirstRemoteAudioFrame(String mediaId)

    - #### onFirstLocalVideoFrame

           abstract void onFirstLocalVideoFrame(int width, int height, int elapsed)

    - #### onFirstRemoteVideoDecoded

           abstract void onFirstRemoteVideoDecoded(String mediaId, int width, int height, int elapsed)

    - #### onConnectionLost

           abstract void onConnectionLost()

    - #### onConnectionInterrupted

           abstract void onConnectionInterrupted()

    - #### onMediaEngineEvent

           abstract void onMediaEngineEvent(int code)

    - #### onVendorMessage

           abstract void onVendorMessage(String mediaId, Array<byte> data)

    - #### onRefreshRecordingServiceStatus

           abstract void onRefreshRecordingServiceStatus(int status)

    - #### onAudioLevelReceive

           abstract void onAudioLevelReceive(HashMap<String, String> audioLevel)

    - #### onAudioLevelSend

           abstract void onAudioLevelSend(String audioLevel)

    - #### onWhiteBoardURL

           abstract void onWhiteBoardURL(String url)

    - #### onNetworkReceiveLost

           abstract void onNetworkReceiveLost(String userId, int lossRate)

    - #### onNetworkSendLost

           abstract void onNetworkSendLost(int lossRate, int delay)

    - #### onNotifySharingScreen

           abstract void onNotifySharingScreen(String userId, boolean isSharing)

    - #### onNotifyDegradeNormalUserToObserver

           abstract void onNotifyDegradeNormalUserToObserver(String hostUid, String userId)

    - #### onNotifyAnswerObserverRequestBecomeNormalUser

           abstract void onNotifyAnswerObserverRequestBecomeNormalUser(String userId, long status)

    - #### onNotifyUpgradeObserverToNormalUser

           abstract void onNotifyUpgradeObserverToNormalUser(String hostUid, String userId)

    - #### onNotifyHostControlUserDevice

           abstract void onNotifyHostControlUserDevice(String userId, String hostId, int dType, boolean isOpen)

    - #### onNotifyAnswerDegradeNormalUserToObserver

           abstract void onNotifyAnswerDegradeNormalUserToObserver(String s, boolean b)

      主持人将与会某正常用户降级为观察者

      Parameters:
        `s` - 用户id
        `b` - 是否接受

    - #### onNotifyAnswerUpgradeObserverToNormalUser

           abstract void onNotifyAnswerUpgradeObserverToNormalUser(String userId, boolean isAccept)

      主持人邀请观察者升级成正常用户, 观察者做出接受/拒绝之后, 给所有人的回调

      Parameters:
        `userId` - 用户ID
        `isAccept` - 是否接受

    - #### sendinInvite

           abstract void sendinInvite()

    - #### onRemoteUserUnpublishCameraStream

           abstract void onRemoteUserUnpublishCameraStream(String userId, String streamId, String tag)