Call

interface Call

A Call represents a media call on Cisco Webex. The application can create an outgoing call by calling Phone.dial function: The application can receive an incoming call on Phone.IncomingCallListener:

Since

0.1

Types

Link copied to clipboard
enum AudioOutputMode : Enum<Call.AudioOutputMode>

The options to switch audio output during a call.

Link copied to clipboard
enum CallStatus : Enum<Call.CallStatus>

The status of a Call.

Link copied to clipboard
enum Direction : Enum<Call.Direction>

The enumeration of directions of a call

Link copied to clipboard
enum FlashMode : Enum<Call.FlashMode>

The enumeration to enable, disable and auto enable camera flash

Link copied to clipboard
enum MediaQualityInfo : Enum<Call.MediaQualityInfo>

The enumeration to the media quality info types

Link copied to clipboard
enum RingerType : Enum<Call.RingerType>

The enumeration for a ringerType to denote the type of tone to be played / stopped

Link copied to clipboard
enum ShareOptimizeType : Enum<Call.ShareOptimizeType>

Enum representing the OptimizeType of Share

Link copied to clipboard
enum TorchMode : Enum<Call.TorchMode>

The enumeration to enable, disable and auto enable camera torch

Link copied to clipboard
enum VideoRenderMode : Enum<Call.VideoRenderMode>

The options to specify how the video adjusts its content to be render in a view.

Link copied to clipboard
enum WaitReason : Enum<Call.WaitReason>

The reasons for the call is waiting.

Functions

Link copied to clipboard
abstract fun answer(option: MediaOption, callback: CompletionHandler<Call>)

Answers this call. This can only be invoked when this call is incoming and in ringing status.

Link copied to clipboard
abstract fun canShare(): Boolean
Link copied to clipboard
abstract fun closeAuxStream(view: <Error class: unknown class>)

Close the indicated auxiliary stream. You can invoke this API instead of MultiStreamObserver.onAuxStreamUnavailable to close an opened auxiliary stream

Link copied to clipboard
abstract fun directTransferCall(toPhoneNumber: String, callback: CompletionHandler<DirectTransferResult>)

Transfers the active call to the given number. Current call immediately disconnects after transfering

Link copied to clipboard
abstract fun enableReceivingNoiseRemoval(enable: Boolean, callback: CompletionHandler<ReceivingNoiseRemovalEnableResult>)

Enable or Disable receiving noise removal functionality. If enabled, the noise present in incoming PSTN calls will be reduced. Applicable for WebexCalling and CUCM calling CallObserver.onReceivingNoiseInfoChanged will be fired with the result of this operation

Link copied to clipboard
abstract fun forceSendingVideoLandscape(forceLandscape: Boolean, callback: CompletionHandler<Void>?)

To force landscape video transfer of local video view. Default value is false

Link copied to clipboard
abstract fun getActiveSpeaker(): CallMembership?

Get the current active speaker

Link copied to clipboard
abstract fun getAuxStream(view: <Error class: unknown class>): AuxStream?

Get an indicated auxiliary stream.

Link copied to clipboard
abstract fun getAvailableAuxStreamCount(): Int

Get the count of current available auxiliary streams

Link copied to clipboard
abstract fun getCallerNumber(): String?
Link copied to clipboard
abstract fun getCallId(): String?

Return callId an identifier for call.

Link copied to clipboard
abstract fun getCameraExposureDuration(): CameraExposureDuration

Get the exposure duration of the camera.

Link copied to clipboard
abstract fun getCameraExposureISO(): CameraExposureISO

Get the exposure ISO of the camera.

Link copied to clipboard
abstract fun getCameraExposureTargetBias(): CameraExposureTargetBias

Get the exposure target bias of the camera.

Link copied to clipboard
abstract fun getCameraFlashMode(): Call.FlashMode

Get the camera flash mode.

Link copied to clipboard
abstract fun getCameraTorchMode(): Call.TorchMode

Get the camera Torch mode.

Link copied to clipboard
abstract fun getClosedCaptions(): List<CaptionItem>

Invoke this function to retrieve all closed captions generated from the beginning of this call.

Link copied to clipboard
abstract fun getClosedCaptionsInfo(): ClosedCaptionsInfo?

Returns the closedCaptionInfo associated with this call

Link copied to clipboard
abstract fun getCompositedVideoLayout(): MediaOption.CompositedVideoLayout

Returns the video layout of the active speaker and other attendees for the group video call.

Link copied to clipboard
abstract fun getCorrelationId(): String?

Return the correlationId for this call.

Link copied to clipboard
abstract fun getCurrentAudioOutput(): Call.AudioOutputMode?

Get the current audio output mode for the call.

Link copied to clipboard
abstract fun getDirection(): Call.Direction?
Link copied to clipboard
abstract fun getExternalTrackingId(): String?

Return the external tracking id for this call. This is applicable for WxC calls only and is empty for other type of calls.

Link copied to clipboard
abstract fun getFacingMode(): Phone.FacingMode
Link copied to clipboard
abstract fun getFrom(): CallMembership?
Link copied to clipboard
abstract fun getLiveAnnotationHandle(): LiveAnnotations?

Provides an instance of LiveAnnotations (if supported) that can be used to control and manage live annotations during a screen sharing session in a specific call. This instance allows developers to access all the functionality related to live annotations, including starting and stopping live annotations, setting the live annotations policy, and responding to live annotation requests.

Link copied to clipboard
abstract fun getLocalVideoViewSize(): <Error class: unknown class>
Link copied to clipboard
abstract fun getLocusURL(): String?
Link copied to clipboard
abstract fun getMediaStreams(): List<MediaStream>

Get the media Streams List - MediaStream. This list will return the streams which are available - the participants who joined the meeting.

Link copied to clipboard
abstract fun getMeetingId(): String?

Return the meeting id for this call

Link copied to clipboard
abstract fun getMemberships(): List<CallMembership>
Link copied to clipboard
abstract fun getMultiStreamObserver(): MultiStreamObserver?

Get the observer for the events of multi-stream in this call

Link copied to clipboard
abstract fun getObserver(): CallObserver?
Link copied to clipboard
abstract fun getOpenedAuxStreamCount(): Int

Get the count of already opened auxiliary streams

Link copied to clipboard
abstract fun getReceivingNoiseInfo(): ReceivingNoiseInfo

Returns the ReceivingNoiseInfo object for this call

Link copied to clipboard
abstract fun getRemoteVideoViewSize(): <Error class: unknown class>
Link copied to clipboard
abstract fun getSchedules(): Set<CallSchedule>?

Will returns the schedules of this call if this call has one or more schedules. If the call isn't a scheduled call, the method will returns null.

Link copied to clipboard
abstract fun getScreenShareLabel(): String?

Return title for ScreenShare.

Link copied to clipboard
abstract fun getShareConfig(): ShareConfig

Indicates the Sharing optimization type of the call.

Link copied to clipboard
abstract fun getSharingRenderView(): <Error class: unknown class>?
Link copied to clipboard
abstract fun getSharingViewSize(): <Error class: unknown class>
Link copied to clipboard
abstract fun getSpaceId(): String?

Return the associated space of this call

Link copied to clipboard
abstract fun getStatus(): Call.CallStatus
Link copied to clipboard
abstract fun getTitle(): String?

Return title for call.

Link copied to clipboard
abstract fun getTo(): CallMembership?
Link copied to clipboard
abstract fun getVideoRenderViews(): Pair<<Error class: unknown class>?, <Error class: unknown class>?>
Link copied to clipboard
abstract fun getVideoZoomFactor(): Float

Get the local camera zoom factor.

Link copied to clipboard
abstract fun getWXA(): WXA

The Webex Assistant

Link copied to clipboard
abstract fun hangup(callback: CompletionHandler<Void>)

Disconnects this call. This can only be invoked when this call is in answered status.

Link copied to clipboard
abstract fun hasAnyoneJoined(): Boolean
Link copied to clipboard
abstract fun holdCall(putOnHold: Boolean)

Puts the call on hold and trigger a call back onCallHoldStateChanged() for the respective call id

Link copied to clipboard
abstract fun inviteParticipant(invitee: String, callback: CompletionHandler<InviteParticipantError>)

This invites a participant to the call. This is not applicable for WebexCalling and CUCM calls. Only a host or cohost can invite a participant.

Link copied to clipboard
abstract fun isAddParticipantSupported(): Boolean

Indicates whether add participant is supported for the active call.

Link copied to clipboard
abstract fun isAudioOnly(): Boolean
Link copied to clipboard
abstract fun isClosedCaptionAllowed(): Boolean

Returns true if the closed captions is allowed for this call, otherwise false.

Link copied to clipboard
abstract fun isCUCMCall(): Boolean
Link copied to clipboard
abstract fun isGroupCall(): Boolean
Link copied to clipboard
abstract fun isMediaStreamsPinningSupported(): Boolean
Link copied to clipboard
abstract fun isMeeting(): Boolean
Link copied to clipboard
abstract fun isOnHold(): Boolean

Returns true is the call for the given Id is on hold false otherwise

Link copied to clipboard
abstract fun isPmr(): Boolean
Link copied to clipboard
abstract fun isReceivingAudio(): Boolean
Link copied to clipboard
abstract fun isReceivingSharing(): Boolean
Link copied to clipboard
abstract fun isReceivingVideo(): Boolean
Link copied to clipboard
abstract fun isRemoteSendingAudio(): Boolean
Link copied to clipboard
abstract fun isRemoteSendingSharing(): Boolean
Link copied to clipboard
abstract fun isRemoteSendingVideo(): Boolean
Link copied to clipboard
abstract fun isScheduledMeeting(): Boolean
Link copied to clipboard
abstract fun isSelfCreator(): Boolean
Link copied to clipboard
abstract fun isSendingAudio(): Boolean
Link copied to clipboard
abstract fun isSendingDTMFEnabled(): Boolean
Link copied to clipboard
abstract fun isSendingSharing(): Boolean
Link copied to clipboard
abstract fun isSendingVideo(): Boolean
Link copied to clipboard
abstract fun isSpaceMeeting(): Boolean
Link copied to clipboard
abstract fun isTransferSupported(): Boolean

Indicates whether transfer is supported for the active call.

Link copied to clipboard
abstract fun isVideoEnabled(): Boolean

Indicates whether video calling is enabled for the user.

Link copied to clipboard
abstract fun isWebexCallingOrWebexForBroadworks(): Boolean
Link copied to clipboard
abstract fun joinBreakoutSession(breakoutSession: BreakoutSession)

Join the Breakout Session manually by passing the `BreakoutSession` if host has enabled allow join session later.

Link copied to clipboard
abstract fun letIn(membership: CallMembership)

Admit a CallMembership into the meeting from the lobby. This should be called by moderator.

abstract fun letIn(memberships: List<CallMembership>)

Admit CallMemberships into the meeting from the lobby. This should be called by moderator.

Link copied to clipboard
abstract fun makeHost(participantId: String, callback: CompletionHandler<MakeHostError>)

Assign the host role to a participant. Only a host can assign the host role to another participant.

Link copied to clipboard
abstract fun mergeCalls(targetCallId: String)

Merges a call. This method needs to be called after startAssociatedCall()

Link copied to clipboard
abstract fun muteAllParticipantAudio(doMute: Boolean)

Mutes all other participants who are on call, also un-mutes the others if isMuted is true

Link copied to clipboard
abstract fun muteParticipantAudio(participantId: String, doMute: Boolean)

This method is used to mute particular participant

Link copied to clipboard
abstract fun openAuxStream(view: <Error class: unknown class>)

Open a new auxiliary stream with a view. The Maximum of auxiliary streams can be opened is 4 currently. You can invoke this API instead of MultiStreamObserver.onAuxStreamAvailable to open an available auxiliary stream

Link copied to clipboard
abstract fun reclaimHost(hostKey: String = "", callback: CompletionHandler<ReclaimHostError>)

Reclaim the host role using host key. If the user is self-owner of the meeting, then hostkey is not required.

Link copied to clipboard
abstract fun reject(callback: CompletionHandler<Void>)

Rejects this call. This can only be invoked when this call is incoming and in ringing status.

Link copied to clipboard
abstract fun removeMediaStreamCategoryA()

Remove the Active Speaker stream. To add the active stream back, use setMediaStreamCategoryA().

Link copied to clipboard
abstract fun removeMediaStreamCategoryC(participantId: String)

Remove the stream of pinned participant.

Link copied to clipboard
abstract fun removeMediaStreamsCategoryB()

Remove all Category-B streams. To change the number of B streams, use setMediaStreamsCategoryB().

Link copied to clipboard
abstract fun returnToMainSession()

To return to main session

Link copied to clipboard
abstract fun sendDTMF(dtmf: String?, callback: CompletionHandler<Void>)

Sends DTMF events to the remote party. Valid DTMF events are 0-9, *, #, a-d, and A-D.

Link copied to clipboard
abstract fun sendFeedback(rating: Int, comment: String?)

Sends feedback for this call to Cisco Webex team.

Link copied to clipboard
abstract fun setCameraAutoExposure(targetBias: Float): Boolean

Set the camera auto exposure value using camera exposure target bias.

Link copied to clipboard
abstract fun setCameraCustomExposure(duration: Double, iso: Float): Boolean

Set the camera custom exposure value using camera exposure duration and ISO.

Link copied to clipboard
abstract fun setCameraFlashMode(mode: Call.FlashMode): Boolean

Set the camera flash mode.

Link copied to clipboard
abstract fun setCameraFocusAtPoint(pointX: Float, pointY: Float): Boolean

Set the camera focus at given coordinate.

Link copied to clipboard
abstract fun setCameraTorchMode(mode: Call.TorchMode): Boolean

Set the camera Torch mode.

Link copied to clipboard
abstract fun setCompositedVideoLayout(layout: MediaOption.CompositedVideoLayout)
abstract fun setCompositedVideoLayout(layout: MediaOption.CompositedVideoLayout, callback: CompletionHandler<Void>)

Specify the composited video layout for the active speaker and other attendees in the group video meeting.

Link copied to clipboard
abstract fun setFacingMode(facingMode: Phone.FacingMode)
Link copied to clipboard
abstract fun setMediaStreamCategoryA(duplicate: Boolean, quality: MediaStreamQuality)

Add the Active Speaker stream with the specified params if it does not already exist. Otherwise, update the Active Speaker stream with the specified parameters.

Link copied to clipboard
abstract fun setMediaStreamCategoryC(participantId: String, quality: MediaStreamQuality)

If a pinned stream for the participant with participantId already exists, update the stream with the specified params. Otherwise, add a pinned stream for this participantId.

Link copied to clipboard
abstract fun setMediaStreamsCategoryB(numStreams: Int, quality: MediaStreamQuality)

Set all Category-B streams to the specified params. If the number of existing B streams is less than numStreams, it will add B streams as necessary. If the number of existing B streams is more than numStreams, it will remove the extra B streams.

Link copied to clipboard
abstract fun setMultiStreamObserver(observer: MultiStreamObserver)

Set the observer for the events of multi-stream in this call

Link copied to clipboard
abstract fun setObserver(observer: CallObserver?)

Observes the call events

Link copied to clipboard
abstract fun setReceivingAudio(receiving: Boolean)
Link copied to clipboard
abstract fun setReceivingSharing(receiving: Boolean)
Link copied to clipboard
abstract fun setReceivingVideo(receiving: Boolean)
Link copied to clipboard
abstract fun setRemoteVideoRenderMode(mode: Call.VideoRenderMode, callback: CompletionHandler<Void>?)

Specify how the remote video adjusts its content to be render in a view.

Link copied to clipboard
abstract fun setSendingAudio(sending: Boolean)
Link copied to clipboard
abstract fun setSendingSharing(sending: Boolean, shareConfig: ShareConfig? = null)
Link copied to clipboard
abstract fun setSendingVideo(sending: Boolean)
Link copied to clipboard
abstract fun setSharingRenderView(view: <Error class: unknown class>?)
Link copied to clipboard
abstract fun setSpokenLanguage(language: LanguageItem, handler: CompletionHandler<SpokenLanguageSelectionError>)

This sets the spoken language for the call. Only host of this call can change spoken language.

Link copied to clipboard
abstract fun setTranslationLanguage(language: LanguageItem, handler: CompletionHandler<TranslationLanguageSelectionError>)

This sets the translation language for this call.

Link copied to clipboard
abstract fun setVideoRenderViews(videoRenderViews: Pair<<Error class: unknown class>?, <Error class: unknown class>?>?)
Link copied to clipboard
abstract fun setVideoZoomFactor(factor: Float): Boolean

Set the Zoom IN/OUT factor for the local camera.

Link copied to clipboard
abstract fun startAssociatedCall(    dialNumber: String,     associationType: CallAssociationType,     audioCall: Boolean,     callback: CompletionHandler<Call>)

This associates a new call with 3rd person. transferCall() needs to be called to transfer a call when a new call association is done, Returns a new call id after associating a call

Link copied to clipboard
abstract fun startSharing(callback: CompletionHandler<Void>, shareConfig: ShareConfig? = null)

Start content sharing.

abstract fun startSharing(    notification: <Error class: unknown class>?,     notificationId: Int,     callback: CompletionHandler<Void>,     shareConfig: ShareConfig? = null)

Start content sharing. The notification and it's id are only work for targetSdkVersion is 29 or higher.

Link copied to clipboard
abstract fun stopSharing(callback: CompletionHandler<Void>)

Stop content sharing.

Link copied to clipboard
abstract fun switchAudioOutput(audioOutputMode: Call.AudioOutputMode, completionHandler: CompletionHandler<Boolean>? = null)

Switch the audio output mode during a call. When a call is connected and if the application is already connected to a bluetooth device, then audio will be routed via the bluetooth device. If bluetooth is not connected, then the audio will be routed to device earpiece. To change this default behaviour, you can use this API with the desired AudioOutputMode

Link copied to clipboard
abstract fun switchToAudioCall(callId: String, callback: CompletionHandler<SwitchToAudioVideoCallResult>)

To switch the current Webex Calling call to audio call

Link copied to clipboard
abstract fun switchToVideoCall(callId: String, callback: CompletionHandler<SwitchToAudioVideoCallResult>)

To switch the current Webex Calling call to video call

Link copied to clipboard
abstract fun takePhoto(): Boolean

Takes a snapshot of the local video view .

Link copied to clipboard
abstract fun toggleClosedCaption(isEnabled: Boolean, handler: CompletionHandler<Boolean>)

Call this function to enable or disable closed captions for this call.

Link copied to clipboard
abstract fun transferCall(toCallId: String)

Transfers a call. This method needs to be called after startAssociatedCall()

Properties

Link copied to clipboard
abstract val isClosedCaptionEnabled: Boolean

Provides the status of closed captions. If enabled, returns true, otherwise false.