Call

public class Call : WebexBroadcastCallServerProtocol

See

see Phone API about how to create calls.

See

CallStatus for the states and transitions of a Call.

Since

1.2.0
  • Returns the id of this call.

    Since

    3.0.0

    Declaration

    Swift

    public var callId: String?
  • Returns the name of the caller in case of 1-1 call and name of space in case of space call.

    Since

    3.0.0

    Declaration

    Swift

    public var title: String?
  • Returns true if this call is CUCM, for others, it returns false.

    Since

    3.0.0

    Declaration

    Swift

    public var isCUCMCall: Bool
  • Returns true if this call is Webex call, for others, it returns false.

    Since

    3.8.0

    Declaration

    Swift

    public var isWebexCallingOrWebexForBroadworks: Bool
  • Returns true if this call is put on hold.

    Since

    3.0.0

    Declaration

    Swift

    public var isOnHold: Bool
  • Returns true if this call is not ONE_TO_ONE

    Since

    3.0.0

    Declaration

    Swift

    public var isGroupCall: Bool
  • Returns the meeting id of this call.

    Since

    3.2.0

    Declaration

    Swift

    public var meetingId: String?
  • Return the correlationId for this call.

    Since

    since 3.7.0

    Declaration

    Swift

    public var correlationId: String?
  • Return the external tracking id for this call. This is applicable for WxC calls only and is empty for other type of calls.

    Since

    since 3.9.1

    Declaration

    Swift

    public var externalTrackingId: String?
  • Returns the locus url of this call.

    Since

    3.2.1

    Declaration

    Swift

    public var locusUrl: String?
  • wxa

    The Webex Assistant

    Since

    3.3.0

    Declaration

    Swift

    public var wxa: WXA
  • The enumeration of directions of a call

    Since

    1.2.0
    See more

    Declaration

    Swift

    public enum Direction
  • The enumeration for a ringerType to denote the type of tone to be played / stopped

    Since

    3.9.0
    See more

    Declaration

    Swift

    public enum RingerType
  • The enumeration of reasons for a call being disconnected.

    Since

    1.2.0
    See more

    Declaration

    Swift

    public enum DisconnectReason
  • The enumeration of media change event

    Since

    1.2.0
    See more

    Declaration

    Swift

    public enum MediaChangedEvent

BreakoutSession

  • A data type represents the breakout

    Since

    3.7.0
    See more

    Declaration

    Swift

    public struct Breakout
  • A data type represents the breakout session

    Since

    3.7.0
    See more

    Declaration

    Swift

    public struct BreakoutSession
  • This will notify when Breakout session is enabled

    Since

    3.7.0

    Declaration

    Swift

    public var onSessionEnabled: (() -> Void)? { get set }
  • This will notify when Breakout session is started

    Since

    3.7.0

    Declaration

    Swift

    public var onSessionStarted: ((Breakout) -> Void)? { get set }
  • This will notify when Breakout is updated

    Since

    3.7.0

    Declaration

    Swift

    public var onBreakoutUpdated: ((Breakout) -> Void)? { get set }
  • This will notify when Breakout session is joined

    Since

    3.7.0

    Declaration

    Swift

    public var onSessionJoined: ((BreakoutSession) -> Void)? { get set }
  • This will notify when joined Breakout session is updated

    Since

    3.7.0

    Declaration

    Swift

    public var onJoinedSessionUpdated: ((BreakoutSession) -> Void)? { get set }
  • This will notify when list of joinable breakout session changes

    Since

    3.7.0

    Declaration

    Swift

    public var onJoinableSessionListUpdated: (([BreakoutSession]) -> Void)? { get set }
  • This will notify when host is asking participants to return to main meeting

    Since

    3.7.0

    Declaration

    Swift

    public var onHostAskingReturnToMainSession: (() -> Void)? { get set }
  • This will notify when host broadcast the message to the session

    Since

    3.7.0

    Declaration

    Swift

    public var onBroadcastMessageReceivedFromHost: ((String) -> Void)? { get set }
  • This will notify when Breakout session is closing

    Since

    3.7.0

    Declaration

    Swift

    public var onSessionClosing: (() -> Void)? { get set }
  • This will notify when returned to main session

    Since

    3.7.0

    Declaration

    Swift

    public var onReturnedToMainSession: (() -> Void)? { get set }
  • This will notify when error is triggered

    Since

    3.7.0

    Declaration

    Swift

    public var onBreakoutErrorHappened: ((BreakoutError) -> Void)? { get set }
  • Join the Breakout Session manually by passing the BreakoutSession if host has enabled allow join session later.

    Since

    3.7.0

    Declaration

    Swift

    public func joinBreakoutSession(breakoutSession: BreakoutSession)
  • To return to main session

    Since

    3.7.0

    Declaration

    Swift

    public func returnToMainSession()
  • The enumeration of call membership events.

    Since

    1.3.0
    See more

    Declaration

    Swift

    public enum CallMembershipChangedEvent
  • The enumeration of iOS broadcasting events.

    Since

    1.4.0
    See more

    Declaration

    Swift

    public enum iOSBroadcastingEvent
  • The enumeration of capabilities of a call.

    Since

    1.2.0
    See more

    Declaration

    Swift

    public enum Capabilities
  • The reasons for the call is waiting.

    Since

    2.4.0
    See more

    Declaration

    Swift

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

    Since

    2.6.0
    See more

    Declaration

    Swift

    public enum VideoRenderMode
  • The options to enable, disable and auto enable video torch

    Since

    3.3.0
    See more

    Declaration

    Swift

    public enum TorchMode
  • The options to enable, disable and auto enable camera flash

    Since

    3.3.0
    See more

    Declaration

    Swift

    public enum FlashMode
  • The range of camera exposure duration having min, max and current values

    Since

    3.3.0
    See more

    Declaration

    Swift

    public struct CameraExposureDuration
  • The range of camera exposure ISO having min, max and current values

    Since

    3.3.0
    See more

    Declaration

    Swift

    public struct CameraExposureISO
  • The range of camera exposure target bias having min, max and current values

    Since

    3.3.0
    See more

    Declaration

    Swift

    public struct CameraExposureTargetBias
  • Callback when remote participant(s) is ringing.

    Since

    1.2.0

    Warning

    Deprecated. Use: onStartRinger / onStopRinger combo instead

    Declaration

    Swift

    @available(*, deprecated, message: "Use onStartRinger / onStopRinger combo instead")
    public var onRinging: (() -> Void)? { get set }
  • Callback when a ringer is to be started.

    Since

    3.9.0

    Declaration

    Swift

    public var onStartRinger: ((RingerType) -> Void)? { get set }
  • Indicates the Sharing optimization type of the call.

    Since

    since 3.9.0

    Declaration

    Swift

    public func getShareConfig() -> ShareConfig
  • Callback when a ringer is to be stopped.

    Since

    3.9.0

    Declaration

    Swift

    public var onStopRinger: ((RingerType) -> Void)? { get set }
  • Callback when remote participant(s) answered and this Call is connected.

    Since

    1.2.0

    Declaration

    Swift

    public var onConnected: (() -> Void)? { get set }
  • This will notify when a call gets failed with reason

    Since

    3.0.0

    Declaration

    Swift

    public var onFailed: ((String) -> Void)? { get set }
  • This will notify when call object changes

    Since

    3.0.0

    Declaration

    Swift

    public var onInfoChanged: (() -> Void)? { get set }
  • This will notify when CPU reaches threshold while using virtual background

    Since

    3.2.0

    Declaration

    Swift

    public var onCpuHitThreshold: (() -> Void)? { get set }
  • This will notify app whenever a photo is captured.

    Since

    3.3.0

    Declaration

    Swift

    public var onPhotoCaptured: ((_ imageData: Data?) -> Void)? { get set }

    Parameters

    imageData

    the actual data of the captured photo as a Data

  • This will notify app whenever a media quality is changed.

    Since

    3.4.0

    Declaration

    Swift

    public var onMediaQualityInfoChanged: ((MediaQualityInfo) -> Void)? { get set }

    Parameters

    MediaQualityInfo

    the Media quality indicator

  • Get all opened auxiliary streams.

    See

    see MediaStream

    Since

    3.5.0

    Declaration

    Swift

    public lazy private(set) var mediaStreams: [MediaStream] { get set }
  • This will be triggered when the media stream is available or unavailable.

    Since

    3.5.0

    Declaration

    Swift

    public var onMediaStreamAvailabilityListener: ((Bool, MediaStream) -> Void)? { get set }

    Parameters

    Bool

    Media Stream available - as the participant joins the meeting. Media Stream unavailable - as the participant leaves the meeting.

    streamType

    The MediaStreamType of auxiliary view.

    Return Value

    Void

  • Add the Active Speaker stream with the specified params if it does not already exist. Otherwise, update the Active Speaker stream with the specified params. CategoryA will contain only 1 stream and it will always be active speaker stream.

    Since

    3.5.0

    Declaration

    Swift

    public func setMediaStreamCategoryA(duplicate: Bool, quality: MediaStreamQuality)

    Parameters

    duplicate

    If true, same active speaker will also be included in category B streams.

    quality

    max resolution for this stream - [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.

    Since

    3.5.0

    Declaration

    Swift

    public func setMediaStreamsCategoryB(numStreams: Int, quality: MediaStreamQuality)

    Parameters

    numStreams

    number of Category B streams desired; all of them will have the same resolution.

    quality

    max resolution for this stream - [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

    Since

    3.6.0

    Declaration

    Swift

    public func setMediaStreamCategoryC(participantId: String, quality: MediaStreamQuality)

    Parameters

    participantId

    participant id of Stream in category C streams.

    quality

    max resolution for this stream - [MediaStreamQuality].

  • True if the pinning is supported for the media streams.

    Since

    3.6.0

    Declaration

    Swift

    public private(set) var isMediaStreamsPinningSupported: Bool { get }
  • Remove the Active Speaker stream. To add the active stream back, use setMediaStreamCategoryA().

    Since

    3.5.0

    Declaration

    Swift

    public func removeMediaStreamCategoryA()
  • Remove all category B streams. To change the number of B streams, use setMediaStreamsCategoryB().

    Since

    3.5.0

    Declaration

    Swift

    public func removeMediaStreamsCategoryB()
  • Remove the stream of pinned participant.

    Since

    3.6.0

    Declaration

    Swift

    public func removeMediaStreamCategoryC(participantId: String)

    Parameters

    participantId

    participantId The participant’s id that needs to be removed.

  • Callback when the call is waiting.

    Since

    2.4.0

    Declaration

    Swift

    public var onWaiting: ((WaitReason) -> Void)?
  • Callback when this Call is disconnected (hangup, cancelled, get declined or other self device pickup the call).

    Since

    1.2.0

    Declaration

    Swift

    public var onDisconnected: ((DisconnectReason) -> Void)?
  • Callback when the memberships of this Call have changed.

    Since

    1.3.0

    Declaration

    Swift

    public var onCallMembershipChanged: ((CallMembershipChangedEvent) -> Void)?
  • Callback when the media types of this Call have changed.

    Since

    1.2.0

    Declaration

    Swift

    public var onMediaChanged: ((MediaChangedEvent) -> Void)?
  • Callback when the capabilities of this Call have changed.

    Since

    1.2.0

    Declaration

    Swift

    public var onCapabilitiesChanged: ((Capabilities) -> Void)?
  • Callback when the iOS broadcasting status of this Call have changed.

    Since

    1.4.0

    Declaration

    Swift

    public var oniOSBroadcastingChanged: ((iOSBroadcastingEvent) -> Void)?
  • Callback when the Call is scheduled call and the schedules of the call has been changed.

    Since

    2.6.0

    Declaration

    Swift

    public var onScheduleChanged: ((Call) -> Void)? { get set }
  • Multi stream feature observer protocol. Client need to set the protocol implementation into certain call.

    See

    see MultiStreamObserver

    Since

    2.0.0

    Declaration

    Swift

    public var multiStreamObserver: MultiStreamObserver?
  • The status of this Call.

    See

    CallStatus

    Since

    1.2.0

    Declaration

    Swift

    public internal(set) var status: CallStatus { get }
  • The direction of this Call.

    Since

    1.2.0

    Declaration

    Swift

    public private(set) var direction: Direction { get }
  • True if the DTMF keypad is enabled for this Call. Otherwise, false.

    Since

    1.2.0

    Declaration

    Swift

    public var sendingDTMFEnabled: Bool
  • True if the remote party of this Call is sending video. Otherwise, false.

    Since

    1.2.0

    Declaration

    Swift

    public var remoteSendingVideo: Bool
  • True if the remote party of this Call is sending audio. Otherwise, false.

    Since

    1.2.0

    Declaration

    Swift

    public var remoteSendingAudio: Bool
  • True if the remote party of this Call is sending screen share. Otherwise, false.

    Since

    1.3.0

    Declaration

    Swift

    public var remoteSendingScreenShare: Bool
  • True if the local party of this Call is sending video. Otherwise, false.

    Since

    1.2.0

    Declaration

    Swift

    public var sendingVideo: Bool { get set }
  • True if this Call is an audio-only call. Otherwise, false.

    Since

    3.8.0

    Declaration

    Swift

    public var isAudioOnly: Bool { get }
  • True if this Call is sending audio. Otherwise, false.

    Since

    1.2.0

    Declaration

    Swift

    public var sendingAudio: Bool { get set }
  • True if the local party of this Call is sending screen share. Otherwise, false.

    Since

    1.4.0

    Declaration

    Swift

    public var sendingScreenShare: Bool { get set }
  • True if the local party of this Call is receiving video. Otherwise, false.

    Since

    1.2.0

    Declaration

    Swift

    public var receivingVideo: Bool { get set }
  • True if the local party of this Call is receiving audio. Otherwise, false.

    Since

    1.2.0

    Declaration

    Swift

    public var receivingAudio: Bool { get set }
  • True if the local party of this Call is receiving screen share. Otherwise, false.

    Since

    1.3.0

    Declaration

    Swift

    public var receivingScreenShare: Bool { get set }
  • True if the loud speaker is selected as the audio output device for this Call. Otherwise, false.

    Since

    1.2.0

    Declaration

    Swift

    public var isSpeaker: Bool { get set }
  • The camera facing mode selected for this Call.

    Since

    1.2.0

    Declaration

    Swift

    public var facingMode: Phone.FacingMode { get set }
  • The local video render view dimensions (points) of this Call.

    Since

    1.2.0

    Declaration

    Swift

    public var localVideoViewSize: CMVideoDimensions
  • The remote video render view dimensions (points) of this Call.

    Since

    1.2.0

    Declaration

    Swift

    public var remoteVideoViewSize: CMVideoDimensions
  • The remote screen share render view dimensions (points) of this Call.

    Since

    1.3.0

    Declaration

    Swift

    public var remoteScreenShareViewSize: CMVideoDimensions
  • The local screen share render view dimensions (points) of this Call.

    Since

    1.4.0

    Declaration

    Swift

    public var localScreenShareViewSize: CMVideoDimensions
  • Specify how the remote video adjusts its content to be render in a view.

    Since

    2.6.0

    Declaration

    Swift

    public var remoteVideoRenderMode: VideoRenderMode { get set }
  • The composited video layout for the active speaker and other attendees in the group video meeting.

    Note

    the layout just affects when Phone.videoStreamMode is composited

    Since

    2.8.0

    Declaration

    Swift

    public var compositedVideoLayout: MediaOption.CompositedVideoLayout? { get set }
  • Set the composited video layout with callback for the active speaker and other attendees in the group video meeting.

    Note

    the layout just affects when Phone.videoStreamMode is composited

    Since

    2.8.0

    Declaration

    Swift

    public func setCompositedVideoLayout(_ layout: MediaOption.CompositedVideoLayout, completionHandler: @escaping (Error?) -> Void)

    Parameters

    layout

    the video layout mode.

    completionHandler

    A closure to be executed when completed, with error if the invocation is illegal or failed, otherwise nil.

  • Call Memberships represent participants in this Call.

    Since

    1.2.0

    Declaration

    Swift

    public private(set) var memberships: [CallMembership] { get set }
  • The initiator of this Call.

    Since

    1.2.0

    Declaration

    Swift

    public var from: CallMembership? { get }
  • to

    The intended recipient of this Call.

    Since

    1.2.0

    Declaration

    Swift

    public var to: CallMembership? { get }
  • Returns the associated Space of this Call.

    Since

    2.6.0

    Declaration

    Swift

    public var spaceId: String?
  • Returns the schedules of this call if this call has one or more schedules.

    Since

    3.0.0

    Declaration

    Swift

    public private(set) var schedules: [CallSchedule]? { get }
  • A local unique identifier of a Call for Apple CallKit.

    Since

    1.2.0

    Declaration

    Swift

    public var uuid: UUID
  • The render views for local and remote video of this call. Pass null to remove the view reference from the SDK.

    Since

    1.3.0

    Declaration

    Swift

    public var videoRenderViews: (local: MediaRenderView?, remote: MediaRenderView?) { get set }
  • The render view for the remote screen share of this call. Pass null to remove the view reference from the SDK.

    Since

    1.3.0

    Declaration

    Swift

    public var screenShareRenderView: MediaRenderView? { get set }
  • Get all opened auxiliary streams.

    See

    see AuxStream

    Since

    2.0.0

    Declaration

    Swift

    public lazy private(set) var auxStreams: [AuxStream] { get set }
  • Speaking CallMembership in meeting Video presented on remote media render view.

    See

    see CallMembership.isActiveSpeaker

    Since

    2.0.0

    Declaration

    Swift

    public internal(set) var activeSpeaker: CallMembership? { get }
  • Available auxiliary stream count.

    Since

    2.0.0

    Declaration

    Swift

    public private(set) var availableAuxStreamCount: Int { get set }
  • True if the call is space backed meeting type. Otherwise, false.

    Since

    3.1.0

    Declaration

    Swift

    public var isSpaceMeeting: Bool
  • True if self is the initiator of the call.

    Since

    3.1.0

    Declaration

    Swift

    public var isSelfCreator: Bool
  • True if anyone joined the meeting, excluding self.

    Since

    3.1.0

    Declaration

    Swift

    public var hasAnyoneJoined: Bool
  • True if meeting is in PMR (personal meeting room). Otherwise, false.

    Since

    3.1.0

    Declaration

    Swift

    public var isPmr: Bool
  • True if the Call is meeting type. Otherwise, false.

    Since

    3.1.0

    Declaration

    Swift

    public var isMeeting: Bool
  • True if the Call is schedule meeting type. Otherwise, false.

    Since

    3.1.0

    Declaration

    Swift

    public var isScheduledMeeting: Bool
  • True if video calling is enabled for the user. Otherwise, false.

    Since

    3.9.0

    Declaration

    Swift

    public private(set) var isVideoEnabled: Bool { get }
  • The caller number of the active call. Applicable only for WebexCalling and CUCM calls. It returns empty string for other call types.

    Since

    3.10.0

    Declaration

    Swift

    public private(set) var callerNumber: String? { get }
  • Enables or Disables camera torch

    Since

    3.3.0

    Declaration

    Swift

    public var cameraTorchMode: TorchMode { get set }
  • Enables or Disables camera flash

    Since

    3.3.0

    Declaration

    Swift

    public var cameraFlashMode: FlashMode { get set }
  • To zoom in or out for the local camera

    Since

    3.3.0

    Declaration

    Swift

    public var zoomFactor: Float { get set }
  • Get the exposure duration of the camera

    Since

    3.3.0

    Declaration

    Swift

    public var exposureDuration: CameraExposureDuration { get }

    Return Value

    CameraExposureDuration which has min, max and current values

  • Get the exposure ISO of the camera

    Since

    3.3.0

    Declaration

    Swift

    public var exposureISO: CameraExposureISO { get }

    Return Value

    CameraExposureISO which has min, max and current values

  • Get the exposure target bias of the camera

    Since

    3.3.0

    Declaration

    Swift

    public var exposureTargetBias: CameraExposureTargetBias { get }

    Return Value

    CameraExposureTargetBias which has min, max and current values

  • To focus the camera at given coordinate

    Since

    3.3.0

    Declaration

    Swift

    public func setCameraFocusAtPoint(pointX: Float, pointY: Float) -> Bool

    Return Value

    True if operation is successful else False

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

    Since

    3.3.0

    Declaration

    Swift

    public func setCameraCustomExposure(duration: UInt64, iso: Float) -> Bool

    Parameters

    duration

    the camera exposure duration. Range from min to max of CameraExposureDuration

    iso

    the camera exposure ISO. Range from min to max of CameraExposureISO

    Return Value

    True if operation is successful else False

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

    Since

    3.3.0

    Declaration

    Swift

    public func setCameraAutoExposure(targetBias: Float) -> Bool

    Parameters

    targetBias

    the camera exposure target bias. Range from min to max of CameraExposureTargetBias

    Return Value

    True if operation is successful else False

  • Takes a snapshot of the local video view

    Since

    3.3.0

    Declaration

    Swift

    public func takePhoto() -> Bool
  • The options to switch audio output during a call.

    Since

    3.10.0
    See more

    Declaration

    Swift

    public enum AudioOutputMode
  • Get the current audio output device for the call.

    Since

    3.10.0

    Declaration

    Swift

    public func getCurrentAudioOutput() -> AudioOutputMode

    Return Value

    Current AudioOutputMode for the call.

  • Set the current audio output device for the call.

    Since

    3.10.0

    Declaration

    Swift

    public func setAudioOutput(mode: AudioOutputMode, completion: (Result<Bool>) -> ())

    Parameters

    mode

    the audio output mode for the call.

  • Update audio session for CallKit. This must be called on provider:didActivateAudioSession: to reactivate the audio session.

    Since

    1.3.0

    Declaration

    Swift

    public func updateAudioSession()
  • Answers this call. This can only be invoked when this call is incoming and in ringing status.

    See

    see CallStatus

    Since

    1.2.0

    Declaration

    Swift

    public func answer(option: MediaOption, completionHandler: @escaping (Error?) -> Void)

    Parameters

    option

    Intended media options - audio only or audio and video - for the call.

    companionMode

    The companion mode to be used for the call. i.e. None or MoveMeeting. Default is None. Applicable only for meetings

    completionHandler

    A closure to be executed when completed, with error if the invocation is illegal or failed, otherwise nil.

    Return Value

    Void

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

    Since

    1.2.0

    See

    see CallStatus

    Declaration

    Swift

    public func reject(completionHandler: @escaping (Error?) -> Void)

    Parameters

    completionHandler

    A closure to be executed when completed, with error if the invocation is illegal or failed, otherwise nil.

    Return Value

    Void

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

    Since

    1.2.0

    See

    see CallStatus

    Declaration

    Swift

    public func hangup(completionHandler: @escaping (Error?) -> Void)

    Parameters

    completionHandler

    A closure to be executed when completed, with error if the invocation is illegal or failed, otherwise nil.

    Return Value

    Void

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

    Since

    2.4.0

    Declaration

    Swift

    public func letIn(_ memberships: [CallMembership], completionHandler: @escaping (Error?) -> Void)

    Parameters

    memberships

    The call memberships that are waiting in the lobby.

    completionHandler

    A closure to be executed when completed, with error if the invocation is illegal or failed, otherwise nil.

    Return Value

    Void

  • Sends feedback for this call to Cisco Webex team.

    Since

    1.2.0

    Declaration

    Swift

    public func sendFeedbackWith(rating: Int, comments: String? = nil, includeLogs: Bool = false)

    Parameters

    rating

    The rating of the quality of this call between 1 and 5 where 5 means excellent quality.

    comments

    The comments for this call.

    includeLogs

    True if to include logs, False as not.

    Return Value

    Void

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

    Since

    1.2.0

    Declaration

    Swift

    public func send(dtmf: String, completionHandler: ((Error?) -> Void)?)

    Parameters

    dtmf

    any combination of valid DTMF events matching regex pattern “^[0-9#*abcdABCD]+$”

    completionHandler

    A closure to be executed when completed, with error if the invocation is illegal or failed, otherwise nil.

    Return Value

    Void

  • Start screen sharing in this call.

    Since

    1.4.0

    Declaration

    Swift

    public func startSharing(shareConfig: ShareConfig? = nil, completionHandler: @escaping (Error?) -> Void)

    Parameters

    shareConfig

    config represnts share optimization and share audio , this is optional. If not set, optimization will be default and audio won’t be shared

    completionHandler

    A closure to be executed when completed, with error if the invocation is illegal or failed, otherwise nil.

    Return Value

    Void

  • Stop screen sharing in this call.

    Since

    1.4.0

    Declaration

    Swift

    public func stopSharing(completionHandler: @escaping (Error?) -> Void)

    Parameters

    completionHandler

    A closure to be executed when completed, with error if the invocation is illegal or failed, otherwise nil.

    Return Value

    Void

  • Open one auxiliary stream with a media render view. The Maximum number of auxiliary videos could be opened is 4. When one auxiliary streams manually closed, could call this API to reopen. Result will call back through auxStreamOpenedEvent

    See

    see AuxStreamChangeEvent.auxStreamOpenedEvent

    Since

    2.0.0

    Declaration

    Swift

    public func openAuxStream(view: MediaRenderView)

    Parameters

    view

    the auxiliary display view.

    Return Value

    Void

  • Close one auxiliary stream with the indicated media render view. Result will call back through auxStreamClosedEvent.

    See

    see AuxStreamChangeEvent.auxStreamClosedEvent

    Since

    2.0.0

    Declaration

    Swift

    public func closeAuxStream(view: MediaRenderView)

    Parameters

    view

    the auxiliary stream’s render view that will be closed.

    Return Value

    Void

  • This method is used to mute/unmute particular participant

    Since

    3.0.0

    Declaration

    Swift

    public func setParticipantAudioMuteState(participantId: String, isMuted: Bool)

    Parameters

    participantId

    The participant’s id who needs to be muted

    isMuted

    true to mute a call and false to un-mute a call

  • Mutes all other participants who are on call, also un-mutes the others if doMute is false

    Since

    3.0.0

    Declaration

    Swift

    public func setAllParticipantAudioMuteState(doMute: Bool)

    Parameters

    doMute

    true to mute a call and false to un-mute a call

  • Puts the call on hold or resume for the respective call id

    Since

    3.0.0

    Declaration

    Swift

    public func holdCall(putOnHold: Bool)

    Parameters

    putOnHold

    A boolean value that is used to hold and resume. To hold a call use true and to resume use false

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

    Since

    3.0.0

    Declaration

    Swift

    public func startAssociatedCall(dialNumber: String, associationType: CallAssociationType, isAudioCall: Bool, completionHandler: @escaping (Result<Call?>) -> Void)

    Parameters

    dialNumber

    New recipient’s Cisco Webex id or CUCM number who will be added on call

    associationType

    CallAssociationType.Transfer if call needs to be transferred

    isAudioCall

    true if association is Audio Type

    completionHandler

    A closure to be executed once the request has finished.

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

    Since

    3.0.0

    Declaration

    Swift

    public func transferCall(toCallId: String)

    Parameters

    toCallId

    The new call id

  • Direct transfers a call.

    Since

    3.8.0

    Declaration

    Swift

    public func directTransferCall(toPhoneNumber: String, completionHandler: @escaping (Error?) -> Void)

    Parameters

    toPhoneNumber

    The phone number to which the call will be transferred to

  • Merges the two calls into one. This method needs to be called after startAssociatedCall()

    Since

    3.0.0

    Declaration

    Swift

    public func mergeCall(targetCallId: String)

    Parameters

    targetCallId

    The call id of the target call to be merged into

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

    Since

    3.2.1

    Declaration

    Swift

    public func forceSendingVideoLandscape(forceLandscape: Bool, completionHandler: @escaping (Bool) -> Void)

    Parameters

    forceLandscape

    True if you want to force landscape video transfer. Otherwise, false.

    completionHandler

    A closure to be executed when completed, with error if force Landscape value set is failed, otherwise nil.

  • To switch the current Webex Calling call to a Video call

    Since

    3.8.0

    Declaration

    Swift

    public func switchToVideoCall(completionHandler: @escaping (Result<Void>) -> Void)

    Parameters

    completionHandler

    A closure to be executed when completed with the result of the operation

  • To switch the current Webex Calling call to an Audio-only call

    Since

    3.8.0

    Declaration

    Swift

    public func switchToAudioCall(completionHandler: @escaping (Result<Void>) -> Void)

    Parameters

    completionHandler

    A closure to be executed when completed with the result of the operation

  • Returns the ReceivingNoiseInfo object for this call

    Since

    3.9.0

    Declaration

    Swift

    public var receivingNoiseInfo: ReceivingNoiseInfo? { get }
  • 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

    Note

    Enable this using Phone.useLegacyReceiverNoiseRemoval(useLegacy: true) before making a call. Enabling it will disable the new speech enahncement.

    Since

    3.9.0

    Declaration

    Swift

    public func enableReceivingNoiseRemoval(shouldEnable: Bool, completionHandler: @escaping (ReceivingNoiseRemovalEnableResult) -> Void)

    Parameters

    shouldEnable

    Boolean indicating if noise removal should be enabled or disabled

    completionHandler

    A closure to be executed when completed with the result of the operation In case of success, listen to onReceivingNoiseInfoChanged for the changes

  • This will notify when receiving noise info object changes, for e.g. when initial background noise is detected

    Since

    3.9.0

    Declaration

    Swift

    public var onReceivingNoiseInfoChanged: ((ReceivingNoiseInfo) -> Void)? { get set }
  • Returns true if Speech Enhancement is enabled else returns false.

    Since

    3.14.0

    Declaration

    Swift

    public private(set) var isReceiverSpeechEnhancementEnabled: Bool { get set }
  • Enables Speech Enhancement for the call. Applicable for WebexCalling and CUCM calling

    Since

    3.14.0

    Declaration

    Swift

    public func enableReceiverSpeechEnhancement(shouldEnable: Bool, completionHandler: @escaping (Result<Void>) -> Void)
  • Returns if Closed Caption allowed or not for this Call.

    Since

    3.10.0

    Declaration

    Swift

    public private(set) var isClosedCaptionAllowed: Bool { get set }
  • This will let you know current state of the closed caption

    Since

    3.10.0

    Declaration

    Swift

    public private(set) var isClosedCaptionEnabled: Bool { get }
  • This will toggle ClosedCaption on/off for this Call. If Toggled false getClosedCaptions will return empty and onClosedCaptionArrived wont be fired

    Since

    3.10.0

    Declaration

    Swift

    public func toggleClosedCaption(enable: Bool, completionHandler: @escaping (Bool) -> Void)

    Parameters

    enable

    Boolean indicating if ClosedCaptions should be enabled or disabled

  • Returns the ClosedCaptionsInfo of this Call.

    Since

    3.10.0

    Declaration

    Swift

    public func getClosedCaptionsInfo() -> ClosedCaptionsInfo
  • This will notify when ClosedCaptionsInfo changes for this Call

    Since

    3.10.0

    Declaration

    Swift

    public var onClosedCaptionsInfoChanged: ((ClosedCaptionsInfo) -> Void)? { get set }
  • This will set current the spoken language for this Call. Only host can control this.

    Since

    3.10.0

    Declaration

    Swift

    public func setCurrentSpokenLanguage(language: LanguageItem, completionHandler: @escaping (SpokenLanguageSelectionError?) -> Void)

    Parameters

    language

    The spoken language of the call to be changed into.

    completionHandler

    A closure to be executed when completed, with error if the invocation is failed, otherwise error as none.

  • This will set the current translation language for this Call.

    Since

    3.10.0

    Declaration

    Swift

    public func setCurrentTranslationLanguage(language: LanguageItem, completionHandler: @escaping (TranslationLanguageSelectionError?) -> Void)

    Parameters

    language

    The translation language of the call to be changed into.

    completionHandler

    A closure to be executed when completed, with error if the invocation is failed, otherwise error as none.

  • Returns the all the Closed Captions till now for this Call.

    Since

    3.10.0

    Declaration

    Swift

    public func getClosedCaptions() -> [CaptionItem]
  • This will notify when a ClosedCaption object arrives for the call

    Since

    3.10.0

    Declaration

    Swift

    public var onClosedCaptionArrived: ((CaptionItem) -> Void)? { get set }
  • This will invite a participant to the call

    Since

    3.11.0

    Declaration

    Swift

    public func inviteParticipant(participant: String, completionHandler: @escaping (Result<Void>) -> Void)

    Parameters

    participant

    The contactId or email address of the participant

    completionHandler

    A closure to be executed when completed with the result of the operation.

  • Reclaim the host role using the host key. A host key is not required if the user is a self-owner of the meeting.

    Since

    3.11.0

    Declaration

    Swift

    public func reclaimHost(hostKey: String = "", completionHandler: @escaping (Result<Void>) -> Void)

    Parameters

    hostKey

    hostKey of the meeting.

    completionHandler

    A closure to be executed when completed with the result of the operation.

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

    Since

    3.11.0

    Declaration

    Swift

    public func makeHost(participantId: String, completionHandler: @escaping (Result<Void>) -> Void)

    Parameters

    participantId

    The contactId of the participant

    completionHandler

    A closure to be executed when completed with the result of the operation.

  • This will notify when an attempt to move meeting fails for the call

    Since

    3.12.0

    Declaration

    Swift

    public var onMoveMeetingFailed: (() -> Void)? { get set }
  • To check if the audio dump is being recorded for ongoing meeting/call.

    Since

    3.13.0

    Declaration

    Swift

    public var isRecordingAudioDump: Bool { get }
  • To check if the audio dump can be recorded for ongoing meeting/call.

    Since

    3.13.0

    Declaration

    Swift

    public func canStartRecordingAudioDump(completionHandler: @escaping (Error?) -> Void)

    Parameters

    completionHandler

    A closure to be executed when completed with the result of the operation.

  • To start recording the audio dump for ongoing meeting/call.

    Since

    3.13.0

    Declaration

    Swift

    public func startRecordingAudioDump(completionHandler: @escaping (Error?) -> Void)

    Parameters

    completionHandler

    A closure to be executed when completed with the result of the operation.

  • To stop recording the audio dump.

    Since

    3.13.0

    Declaration

    Swift

    public func stopRecordingAudioDump(completionHandler: @escaping (Error?) -> Void)

    Parameters

    completionHandler

    A closure to be executed when completed with the result of the operation.