Phone

public class Phone

The application can obtain a phone object from Webex object and use phone to call other Cisco Webex users or PSTN when enabled.

Since

1.2.0
  • The enumeration of Camera facing modes.

    Since

    1.2.0
    See more

    Declaration

    Swift

    public enum FacingMode
  • The options for H.264 video codec license from Cisco Systems, Inc

    Since

    2.6.0
    See more

    Declaration

    Swift

    public enum H264LicenseAction
  • The enumeration of common bandwidth choices.

    Since

    1.3.0
    See more

    Declaration

    Swift

    public enum DefaultBandwidth : UInt32
  • The enumeration of advanced settings. These settings are for special use cases and usually do not need to be set.

    Since

    2.6.0
    See more

    Declaration

    Swift

    public enum AdvancedSettings
  • Modes supported by Background Noise Removal

    Since

    2.7.0
    See more

    Declaration

    Swift

    public enum AudioBNRMode : UInt
  • The enumeration of remote video stream.

    Since

    2.8.0
    See more

    Declaration

    Swift

    public enum VideoStreamMode
  • The max receiving bandwidth for audio in unit bps for the call. Only effective if set before the start of call. if 0, default value of 64 * 1000 is used.

    Since

    2.6.0

    Declaration

    Swift

    public var audioMaxRxBandwidth: UInt32 { get set }
  • The max receiving bandwidth for video in unit bps for the call. Only effective if set before the start of call. if 0, default value of 2000*1000 is used.

    Since

    2.6.0

    Declaration

    Swift

    public var videoMaxRxBandwidth: UInt32 { get set }
  • The max sending bandwidth for video in unit bps for the call. Only effective if set before the start of call. if 0, default value of 2000*1000 is used.

    Since

    2.6.0

    Declaration

    Swift

    public var videoMaxTxBandwidth: UInt32 { get set }
  • The max receiving bandwidth for screen sharing in unit bps for the call. Only effective if set before the start of call. if 0, default value of 4000*1000 is used.

    Since

    2.6.0

    Declaration

    Swift

    public var sharingMaxRxBandwidth: UInt32 { get set }
  • Enable Background Noise Removal True as using BNR, False as not. The default is false.

    Since

    2.7.0

    Declaration

    Swift

    public var audioBNREnabled: Bool { get set }
  • Set Background Noise Removal mode, the default is .HP.

    Note

    The value is only effective if setting audioBNREnabled to true.

    Since

    2.7.0

    Declaration

    Swift

    public var audioBNRMode: AudioBNRMode { get set }
  • Set true to keep Webex server connection when app enters background mode. Default is false.

    Note

    Generally App thread would be suspended when it enters background, enableBackgroundConnection can be effective when your App has handled background mode.

    Since

    2.8.0

    Declaration

    Swift

    public var enableBackgroundConnection: Bool
  • The advanced setings for call. Only effective if set before the start of call.

    Since

    2.6.0

    Declaration

    Swift

    public var advancedSettings: [AdvancedSettings]
  • Set video stream mode, the default is .composited.

    Since

    2.8.0

    Declaration

    Swift

    public var videoStreamMode: VideoStreamMode
  • The default values of the advanced setings for call.

    Since

    2.6.0

    Declaration

    Swift

    public let defaultAdvancedSettings: [AdvancedSettings]
  • Default camera facing mode of this phone, used as the default when dialing or answering a call. The default mode is the front camera.

    Note

    The setting is not persistent

    Since

    1.2.0

    Declaration

    Swift

    public var defaultFacingMode: FacingMode { get set }
  • Default loud speaker mode of this phone, used as the default when dialing or answering a call. True as using loud speaker, False as not. The default is using loud speaker.

    Note

    The setting is not persistent.

    Since

    1.2.0

    Declaration

    Swift

    public var defaultLoudSpeaker: Bool { get set }
  • Callback when call is incoming.

    Since

    1.2.0

    Declaration

    Swift

    public var onIncoming: ((_ call: Call) -> Void)? { get set }
  • Pops up an Alert for the end user to approve the use of H.264 codec license from Cisco Systems, Inc.

    Note

    Invoking this function is optional since the alert will appear automatically during the first video call.

    Since

    1.2.0

    Declaration

    Swift

    public func requestVideoCodecActivation(completionHandler: ((H264LicenseAction) -> Void)? = nil)

    Parameters

    completionHandler

    A closure to be executed when completed.

  • Prevents Cisco Webex iOS SDK from poping up an Alert for the end user to approve the use of H.264 video codec license from Cisco Systems, Inc.

    Attention

    The function is expected to be called only by Cisco internal applications. 3rd-party applications should NOT call this function.

    Since

    1.2.0

    Declaration

    Swift

    public func disableVideoCodecActivation()

    Return Value

    Void

  • Makes a call to an intended recipient on behalf of the authenticated user

    Since

    3.0.0

    Declaration

    Swift

    public func dial(_ address: String, option: MediaOption, completionHandler: @escaping (Result<Call>) -> Void)

    Parameters

    input

    CUCM number or Cisco Webex Conversation Id

    mediaOption

    A data type represents the media options of a Call

    Return Value

    A uniquely generated call id

  • Cancel the currently outgoing call that has not been connected.

    Since

    2.6.0

    Declaration

    Swift

    public func cancel()
  • Render a preview of the local party before the call is answered.

    Declaration

    Swift

    public func startPreview(view: MediaRenderView)

    Parameters

    view

    an UI view for rendering video.

    Return Value

    Void

  • Stop rendering the preview of the local party.

    Declaration

    Swift

    public func stopPreview()

    Return Value

    Void

  • This is for setting up the input frame size, required before sending frame

    Since

    3.0.0

    Declaration

    Swift

    public func setupExternalInput(callId: String, height: Int, width: Int)

    Parameters

    callId

    A unique identifier for the call

    height

    Height of the frame

    width

    Width of the frame

  • This sends the frame to the media engine

    Since

    3.0.0

    Declaration

    Swift

    public func sendFrameToExternalInputter(callId: String, timeStamp: Int, height: Int, width: Int, data: UnsafeMutableRawPointer, length: Int)

    Parameters

    callId

    A unique identifier for the call

    timeStamp

    Timestamp of the data frame sent

    height

    Height of the frame

    width

    Width of the frame

    data

    Frame data

    length

    Length of the data

  • This returns the callId for the corresponding notification id

    Since

    3.0.0

    Declaration

    Swift

    public func getCallIdFromNotificationId(notificationId: String, notificationType: NotificationCallType) -> String

    Parameters

    notificationId

    A unique identifier for the notification

    notificationType

    The type of notification - Webex or CUCM

    Return Value

    The call id for the incoming call

  • A collection of Space which contains call history of One to One Spaces as well as Group type Spaces

    Since

    3.0.0

    Declaration

    Swift

    public func getCallHistory() -> [Space]

    Return Value

    List of Spaces

  • Returns the Service URL of a Microservice

    Since

    3.1.0

    Declaration

    Swift

    public func getServiceUrl(serviceUrlType: ServiceUrlType) -> String?

    Return Value

    service url

  • Represents different Service URL types

    Since

    3.1.0
    See more

    Declaration

    Swift

    public enum ServiceUrlType