Package

## Interface Call

- All Implemented Interfaces:

      public interface Call

- - ### 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 Unit` | `addCallListener(CallListener callListener)` | Adds a callListener to the call.
    `abstract Unit` | `removeCallListener(CallListener callListener)` | Removes a callListener from the call.
    `abstract Unit` | `answer()` | Answers an incoming call.
    `abstract Unit` | `hangup()` | Ends the call, regardless of what state it is in.
    `abstract Unit` | `sendDTMF(String keys)` | Sends one or more DTMF tones for tone dialing.
    `abstract Unit` | `pauseVideo()` | Pause the video capturing.
    `abstract Unit` | `resumeVideo()` | Resume the video capturing.
    `abstract Unit` | `setBandwidthLimits(Integer maxAudioBitrate, Integer maxVideoBitrate)` | Sets bandwidth limitations on negotiated media streams.
    `abstract String` | `getCallId()` | Returns the call identifier.
    `abstract String` | `getRemoteUserId()` | Returns the identifier of the remote participant in the call.
    `abstract CallDetails` | `getDetails()` | Returns CallDetails containing metadata about the call.
    `abstract CallState` | `getState()` | Returns the CallState the call is currently in.
    `abstract CallDirection` | `getDirection()` | Returns the CallDirection of the call.
    `abstract Map<String, String>` | `getHeaders()` | Returns the headers.

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

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

- - ### Constructor Detail

  - ### Method Detail

    - #### addCallListener

           abstract Unit addCallListener(CallListener callListener)

      Adds a callListener to the call.

      Parameters:
        `callListener` - the CallListener

    - #### removeCallListener

           abstract Unit removeCallListener(CallListener callListener)

      Removes a callListener from the call.

      Parameters:
        `callListener` - the CallListener

    - #### answer

           abstract Unit answer()

      Answers an incoming call.

    - #### hangup

           abstract Unit hangup()

      Ends the call, regardless of what state it is in. If the call is an incoming call that has not yet been answered, the call will be reported as denied to the caller.

    - #### sendDTMF

           abstract Unit sendDTMF(String keys)

      Sends one or more DTMF tones for tone dialing. (Only applicable for calls terminated to PSTN (Publicly Switched Telephone Network)).

      Parameters:
        `keys` - May be a series of DTMF keys.

    - #### pauseVideo

           abstract Unit pauseVideo()

      Pause the video capturing.

    - #### resumeVideo

           abstract Unit resumeVideo()

      Resume the video capturing.

    - #### setBandwidthLimits

           abstract Unit setBandwidthLimits(Integer maxAudioBitrate, Integer maxVideoBitrate)

      Sets bandwidth limitations on negotiated media streams. Bitrate settings should be non-negative integers values in kbps. Setting bitrate to zero forces use of default values. Settings take effect only if applied before call starts.

      Parameters:
        `maxAudioBitrate` - sets max audio bitrates in kbps.
        `maxVideoBitrate` - sets max video bitrates in kbps.

    - #### getCallId

           abstract String getCallId()

      Returns the call identifier.

    - #### getRemoteUserId

           abstract String getRemoteUserId()

      Returns the identifier of the remote participant in the call.

    - #### getDetails

           abstract CallDetails getDetails()

      Returns CallDetails containing metadata about the call.

    - #### getState

           abstract CallState getState()

      Returns the CallState the call is currently in.

    - #### getDirection

           abstract CallDirection getDirection()

      Returns the CallDirection of the call.

    - #### getHeaders

           abstract Map<String, String> getHeaders()

      Returns the headers.

      IMPORTANT: If a call is initially received via remote push notifications, headers may not be immediately available due to push payload size limitations. If it's not immediately available, it will be available after the CallListener.onCallProgressing or CallListener.onCallEstablished callbacks for CallListener are called.