Skip to main content

Call Event Listeners

The RC CallLib library provides the following callback methods for handling call-related business logic reporting.

Incoming Call Listener

  • Sample code:

    /// Set incoming call callback
    engine?.onReceiveCall = (RCCallSession session) {
    /// session: call session object
    };

Outgoing Call Listener

  • Sample code:

    /// Set outgoing call listener
    engine?.onCallDidMake = () {
    };

Call Established Listener

  • Sample code:

    /// Set call established listener
    engine?.onConnect = () {
    };

Call Disconnection Listener

  • Sample code:

    /// Set call disconnection listener
    engine?.onDisconnect = (RCCallDisconnectReason reason) {
    /// reason: disconnection reason
    };

Call Exception Listener

  • Sample code:

    /// Set call exception listener
    engine?.onCallError = (int errorCode) {
    /// errorCode: error code
    };

Camera Operation Listener

  • Sample code:

    /// Set camera operation listener
    engine?.onEnableCamera = (RCCallCamera camera, bool enable) {
    /// camera: current camera
    /// enable: activation status
    };

Camera Switch Listener

  • Sample code:

    /// Set camera switch listener
    engine?.onSwitchCamera = (RCCallCamera camera) {
    /// camera: current camera
    };

Callee Ringing Listener

  • Sample code:

    /// Set callee ringing listener
    engine?.onRemoteUserDidRing = (String userId) {
    /// userId: ringing user ID
    };

Microphone Operation Listener

  • Sample code:

    /// Set microphone operation listener
    engine?.onRemoteUserDidChangeMicrophoneState = (RCCallUserProfile user, bool enable) {
    /// user: user who operated the microphone
    /// enable: microphone activation status
    };

Camera Operation Listener

  • Sample code:

    /// Set camera operation listener
    engine?.onRemoteUserDidChangeCameraState = (RCCallUserProfile user, bool enable) {
    /// user: user who operated the camera
    /// enable: camera activation status
    };

Video-to-Audio Call Listener

Note

Switching from video call to audio-only call is also referred to as call downgrade.

  • Sample code:

    /// Set call downgrade listener
    engine?.onRemoteUserDidChangeMediaType = (RCCallUserProfile user, RCCallMediaType mediaType) {
    /// user: user who triggered the downgrade
    /// mediaType: downgrade result
    };

Call Network Quality Listener

  • Sample code:

    /// Set call network quality listener
    engine?.onNetworkQuality = (RCCallUserProfile user, RCCallNetworkQuality quality) {
    /// user: user information
    /// quality: network quality
    };

Call Volume Listener

  • Sample code:

    /// Set call volume listener
    engine?.onAudioVolume = (RCCallUserProfile user, int volume) {
    /// user: user information
    /// volume: current volume level
    };