wxc_sdk.telephony.calls module

Webex Calling Call Control API and related data types

class wxc_sdk.telephony.calls.CallType(*values)[source]

Bases: str, SafeEnum

An enumeration.

location = 'location'

The party is within the same location.

organization = 'organization'

The party is within the same organization but not within the same location.

external = 'external'

The party is outside the organization.

emergency = 'emergency'

The party is an emergency call destination.

repair = 'repair'

The party is a repair call destination.

other = 'other'

The party does not belong to one of the defined call types. For example, a call to a Call Forwarding Always feature activation code.

class wxc_sdk.telephony.calls.TelephonyParty(*, name: str | None = None, number: str | None = None, personId: str | None = None, placeId: str | None = None, privacyEnabled: bool | None = None, callType: CallType | None = None, **extra_data: Any)[source]

Bases: ApiModel

name: str | None

The party’s name. Only present when the name is available and privacy is not enabled.

number: str | None

The party’s number. Only present when the number is available and privacy is not enabled. The number can be digits or a URI. Some examples for number include: 1234, 2223334444, +12223334444, *73, user@company.domain

person_id: str | None

The party’s person ID. Only present when the person ID is available and privacy is not enabled.

place_id: str | None

The party’s place ID. Only present when the place ID is available and privacy is not enabled.

privacy_enabled: bool | None

Indicates whether privacy is enabled for the name, number and personId/placeId.

call_type: CallType | None

The call type for the party.

class wxc_sdk.telephony.calls.RedirectReason(*values)[source]

Bases: str, SafeEnum

An enumeration.

busy = 'busy'

The call was redirected on a busy condition. For example, the call was forwarded by Call Forwarding Busy.

no_answer = 'noAnswer'

The call was redirected on a no answer condition. For example, the call was forwarded by Call Forwarding No Answer.

unavailable = 'unavailable'

The call was redirected on an unavailable condition. For example, the call was forwarded by Business Continuity.

unconditional = 'unconditional'

The call was redirected unconditionally. For example, the call was forwarded by Call Forwarding Always.

time_of_day = 'timeOfDay'

The call was redirected by a service schedule. For example, the call was forwarded by Selective Call Forwarding.

divert = 'divert'

The call was redirected by divert action.

follow_me = 'followMe'

The call was redirected by a follow me service. For example, the call was redirected by Simultaneous Ring.

hunt_group = 'huntGroup'

The call was redirected by Hunt Group routing.

call_queue = 'callQueue'

The call was redirected by Call Queue routing.

unknown = 'unknown'

The call was redirected on an unknown condition.

class wxc_sdk.telephony.calls.Redirection(*, reason: RedirectReason | None = None, redirectingParty: TelephonyParty | None = None, **extra_data: Any)[source]

Bases: ApiModel

reason: RedirectReason | None

The reason the incoming call was redirected.

redirecting_party: TelephonyParty | None

The details of a party who redirected the incoming call.

class wxc_sdk.telephony.calls.Recall(*, type: RecallType, party: TelephonyParty, **extra_data: Any)[source]

Bases: ApiModel

call recall

recall_type: RecallType

The type of recall the incoming call is for. Park is the only type of recall currently supported but additional values may be added in the future.

party: TelephonyParty

If the type is park, contains the details of where the call was parked. For example, if user A parks a call against user B and A is recalled for the park, then this field contains B’s information in A’s incoming call details. Only present when the type is park.

class wxc_sdk.telephony.calls.RecordingState(*values)[source]

Bases: str, SafeEnum

An enumeration.

pending = 'pending'

Recording has been requested for the call but has not yet started.

started = 'started'

Recording is active for the call.

paused = 'paused'

Recording has been paused for the call.

stopped = 'stopped'

Recording has been stopped for the call.

failed = 'failed'

Recording failed for the call.

class wxc_sdk.telephony.calls.Personality(*values)[source]

Bases: str, SafeEnum

An enumeration.

originator = 'originator'

An outgoing call originated by the user.

terminator = 'terminator'

An incoming call received by the user.

click_to_dial = 'clickToDial'

A call that is alerting the user’s devices for a Click to Dial action. When the user answers on one of these alerting devices, the call’s personality is updated to originator.

class wxc_sdk.telephony.calls.CallState(*values)[source]

Bases: str, SafeEnum

An enumeration.

connecting = 'connecting'

The remote party is being alerted.

alerting = 'alerting'

The user’s devices are alerting for the incoming or Click to Dial call.

connected = 'connected'

The call is connected.

held = 'held'

The user has placed the call on hold.

remote_held = 'remoteHeld'

The remote party within the same organization has placed the call on hold.

disconnected = 'disconnected'

The call has been disconnected.

class wxc_sdk.telephony.calls.TelephonyCall(*, callId: str | None = None, id: str | None = None, callSessionId: str, personality: Personality, state: CallState, remoteParty: TelephonyParty, appearance: int | None = None, created: datetime, answered: datetime | None = None, redirections: list[Redirection] = <factory>, recall: Recall | None = None, recordingState: RecordingState | None = None, disconnected: datetime | None = None, muteCapable: bool | None = None, muted: bool | None = None, endpointId: str | None = None, completedElsewhere: bool | None = None, endpointType: str | None = None, allowedRecordingControls: str | None = None, **extra_data: Any)[source]

Bases: ApiModel

id_call_id: str | None
id_id: str | None
property call_id: str | None

The call identifier of the call.

call_session_id: str

The call session identifier of the call session the call belongs to. This can be used to correlate multiple calls that are part of the same call session.

personality: Personality

The personality of the call.

state: CallState

The current state of the call.

remote_party: TelephonyParty

The remote party’s details. For example, if user A calls user B then B is the remote party in A’s outgoing call details and A is the remote party in B’s incoming call details.

appearance: int | None

The appearance value for the call. The appearance value can be used to display the user’s calls in an order consistent with the user’s devices. Only present when the call has an appearance value assigned.

created: datetime

The date and time the call was created.

answered: datetime | None

The date and time the call was answered. Only present when the call has been answered.

redirections: list[Redirection]

The list of details for previous redirections of the incoming call ordered from most recent to least recent. For example, if user B forwards an incoming call to user C, then a redirection entry is present for B’s forwarding in C’s incoming call details. Only present when there were previous redirections and the incoming call’s state is alerting.

recall: Recall | None

The recall details for the incoming call. Only present when the incoming call is for a recall.

recording_state: RecordingState | None

The call’s current recording state. Only present when the user’s call recording has been invoked during the life of the call.

disconnected: datetime | None

The date and time the call was disconnected

mute_capable: bool | None

Indicates whether the call is capable of using the mute and unmute calls

muted: bool | None

Indicates whether the call is currently muted.

endpoint_id: str | None
completed_elsewhere: bool | None
endpoint_type: str | None
allowedRecordingControls: str | None
class wxc_sdk.telephony.calls.TelephonyEventData(*, callId: str | None = None, id: str | None = None, callSessionId: str, personality: Personality, state: CallState, remoteParty: TelephonyParty, appearance: int | None = None, created: datetime, answered: datetime | None = None, redirections: list[Redirection] = <factory>, recall: Recall | None = None, recordingState: RecordingState | None = None, disconnected: datetime | None = None, muteCapable: bool | None = None, muted: bool | None = None, endpointId: str | None = None, completedElsewhere: bool | None = None, endpointType: str | None = None, allowedRecordingControls: str | None = None, eventType: str, eventTimestamp: datetime, **extra_data: Any)[source]

Bases: WebhookEventData, TelephonyCall

data in a webhook ‘telephony_calls’ event

resource: ClassVar[str | None] = 'telephony_calls'
event_type: str
event_timestamp: datetime
wxc_sdk.telephony.calls.TelephonyEvent

alias of WebhookEvent

wxc_sdk.telephony.calls.DialResponse

alias of CallInfo

class wxc_sdk.telephony.calls.RejectAction(*values)[source]

Bases: str, SafeEnum

An enumeration.

busy = 'busy'

Send the call to busy.

temporarily_unavailable = 'temporarilyUnavailable'

Send the call to temporarily unavailable.

ignore = 'ignore'

Ignore the call by continuing ringback to the caller while no longer alerting the called user’s devices.

class wxc_sdk.telephony.calls.HistoryType(*values)[source]

Bases: str, SafeEnum

An enumeration.

placed = 'placed'

A call history record for an outgoing call placed by the user.

missed = 'missed'

A call history record for an incoming call to the user that was not answered.

received = 'received'

A call history record for an incoming call to the user that was answered.

class wxc_sdk.telephony.calls.CallHistoryRecord(*, type: HistoryType, name: str | None = None, number: str | None = None, privacyEnabled: bool, time: datetime, **extra_data: Any)[source]

Bases: ApiModel

call_type: HistoryType

The type of call history record.

name: str | None

The name of the called/calling party. Only present when the name is available and privacy is not enabled.

number: str | None

The number of the called/calling party. Only present when the number is available and privacy is not enabled. The number can be digits or a URI. Some examples for number include: 1234, 2223334444, +12223334444, *73, user@company.domain

privacy_enabled: bool

Indicates whether privacy is enabled for the name and number.

time: datetime

The date and time the call history record was created. For a placed call history record, this is when the call was placed. For a missed call history record, this is when the call was disconnected. For a received call history record, this is when the call was answered.

class wxc_sdk.telephony.calls.CallInfo(*, callId: str, callSessionId: str, **extra_data: Any)[source]

Bases: ApiModel

call_id: str

A unique identifier for the call which is used in all subsequent commands for this call.

call_session_id: str

A unqiue identifier for the call session the call belongs to. This can be used to correlate multiple calls that are part of the same call session.

class wxc_sdk.telephony.calls.CallsApi(*, session: RestSession, base: str = None)[source]

Bases: ApiChild

Call Controls

Call Control APIs in support of Webex Calling. All GET commands require the spark:calls_read scope while all other commands require the spark:calls_write scope.

Notes:

  • These APIs support 3rd Party Call Control only.

  • The Call Control APIs are only for use by Webex Calling Multi Tenant users and not applicable for users hosted on UCM, including Dedicated Instance users.

  • The Call Control APIs are not supported by Service Apps. Please see Call Control Members APIs for Service Apps support.

list_calls(line_owner_id: str = None) list[TelephonyCall][source]

List Calls

Get the list of details for all active calls associated with the user.

Parameters:

line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

list[Call]

answer(call_id: str, endpoint_id: str = None, line_owner_id: str = None)[source]

Answer

Answer an incoming call. When no endpointId is specified, the call is answered on the user’s primary device. When an endpointId is specified, the call is answered on the device or application identified by the endpointId. The answer API is rejected if the device is not alerting for the call or the device does not support answer via API.

Parameters:
  • call_id (str) – The call identifier of the call to be answered.

  • endpoint_id (str) – The ID of the device or application to answer the call on. The endpointId must be one of the endpointIds returned by the Get Preferred Answer Endpoint API.

  • line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

None

barge_in(target: str, endpoint_id: str = None, single_number_reach_phone_number: str = None, line_owner_id: str = None) CallInfo[source]

Barge In

Barge-in on another user’s answered call. A new call is initiated to perform the barge-in in a similar manner to the dial command.

Parameters:
  • target (str) – Identifies the user to barge-in on. The target can be digits or a URI. Some examples for target include: 1234, 2223334444, +12223334444, tel:+12223334444, user@company.domain, sip:user@company.domain

  • endpoint_id (str) –

    The ID of the device or application to use for the barge-in. The endpointId must be one of the endpointIds returned by the Get Preferred Answer Endpoint API. Mutually exclusive with singleNumberReachPhoneNumber.

  • single_number_reach_phone_number (str) – The Single Number Reach phone number to use for the barge-in. Mutually exclusive with endpointId.

  • line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

CallInfo

dial(destination: str, endpoint_id: str = None, single_number_reach_phone_number: str = None, line_owner_id: str = None) CallInfo[source]

Dial

Initiate an outbound call to a specified destination. This is also commonly referred to as Click to Call or Click to Dial. Alerts occur on all the devices belonging to a user unless an optional endpointId is specified in which case only the device or application identified by the endpointId is alerted. When a user answers an alerting device, an outbound call is placed from that device to the destination.

Parameters:
  • destination (str) – The destination to be dialed. The destination can be digits or a URI. Some examples for destination include: 1234, 2223334444, +12223334444, *73, tel:+12223334444, user@company.domain, and sip:user@company.domain.

  • endpoint_id (str) –

    The ID of the device or application to use for the call. The endpointId must be one of the endpointIds returned by the Get Preferred Answer Endpoint API. Mutually exclusive with singleNumberReachPhoneNumber.

  • single_number_reach_phone_number (str) – The Single Number Reach phone number to use for the call. Mutually exclusive with endpointId.

  • line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

CallInfo

divert(call_id: str, destination: str = None, to_voicemail: bool = None, line_owner_id: str = None)[source]

Divert

Divert a call to a destination or a user’s voicemail. This is also commonly referred to as a Blind Transfer.

Parameters:
  • call_id (str) – The call identifier of the call to divert.

  • destination (str) – The destination to divert the call to. If toVoicemail is false, destination is required. The destination can be digits or a URI. Some examples for destination include: 1234, 2223334444, +12223334444, *73, tel:+12223334444, user@company.domain, sip:user@company.domain

  • to_voicemail (bool) – If set to true, the call is diverted to voicemail. If no destination is specified, the call is diverted to the user’s own voicemail. If a destination is specified, the call is diverted to the specified user’s voicemail.

  • line_owner_id – str = None

Return type:

None

hangup(call_id: str, line_owner_id: str = None)[source]

Hangup

Hangup a call. If used on an unanswered incoming call, the call is rejected and sent to busy.

Parameters:
  • call_id (str) – The call identifier of the call to hangup.

  • line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

None

call_history(history_type: HistoryType = None) list[CallHistoryRecord][source]

List Call History

Get the list of call history records for the user. A maximum of 20 call history records per type (placed, missed, received) are returned.

Parameters:

history_type (CallHistoryRecordTypeEnum) – The type of call history records to retrieve. If not specified, then all call history records are retrieved.

Return type:

list[CallHistoryRecord]

hold(call_id: str, line_owner_id: str = None)[source]

Hold

Hold a connected call.

Parameters:
  • call_id (str) – The call identifier of the call to hold.

  • line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

None

mute(call_id: str, line_owner_id: str = None)[source]

Mute

Mute a call. This API can only be used for a call that reports itself as mute capable via the muteCapable field in the call details.

Parameters:
  • call_id (str) – The call identifier of the call to mute.

  • line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

None

park(call_id: str, destination: str = None, is_group_park: bool = None, line_owner_id: str = None) TelephonyParty[source]

Park

Park a connected call. The number field in the response can be used as the destination for the retrieve command to retrieve the parked call.

Parameters:
  • call_id (str) – The call identifier of the call to park.

  • destination (str) – Identifes where the call is to be parked. If not provided, the call is parked against the parking user. The destination can be digits or a URI. Some examples for destination include: 1234, 2223334444, +12223334444, *73, tel:+12223334444, user@company.domain, sip:user@company.domain

  • is_group_park (bool) – If set to`true`, the call is parked against an automatically selected member of the user’s call park group and the destination parameter is ignored.

  • line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

TelephonyParty

pause_recording(call_id: str = None, line_owner_id: str = None)[source]

Pause Recording

Pause recording on a call. Use of this API is only valid when a call is being recorded and the user’s call recording mode is set to “On Demand” or “Always with Pause/Resume”.

Parameters:
  • call_id (str) – The call identifier of the call to pause recording.

  • line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

None

pickup(target: str = None, endpoint_id: str = None, single_number_reach_phone_number: str = None, line_owner_id: str = None) CallInfo[source]

Pickup

Picks up an incoming call to another user. A new call is initiated to perform the pickup in a similar manner to the dial command. When target is not present, the API pickups up a call from the user’s call pickup group. When target is present, the API pickups an incoming call from the specified target user.

Parameters:
  • target (str) – Identifies the user to pickup an incoming call from. If not provided, an incoming call to the user’s call pickup group is picked up. The target can be digits or a URI. Some examples for target include: 1234, 2223334444, +12223334444, tel:+12223334444, user@company.domain, sip:user@company.domain

  • endpoint_id (str) –

    The ID of the device or application to use for the pickup. The endpointId must be one of the endpointIds returned by the Get Preferred Answer Endpoint API. Mutually exclusive with singleNumberReachPhoneNumber.

  • single_number_reach_phone_number (str) – The Single Number Reach phone number to use for the pickup. Mutually exclusive with endpointId.

  • line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

CallInfo

pull(endpoint_id: str = None, line_owner_id: str = None) CallInfo[source]

Pull

Pull a call from one device to another. A temporary new call is initiated to perform the call pull in a similar manner to the dial command. When a user answers an alerting device, the device is connected to the pulled call and the new call created for the call pull is released.

Parameters:
  • endpoint_id (str) –

    The ID of the device or application to use for the retrieval. The endpointId must be one of the endpointIds returned by the Get Preferred Answer Endpoint API.

  • line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

CallInfo

push(call_id: str = None, line_owner_id: str = None)[source]

Push

Pushes a call from the assistant to the executive the call is associated with. Use of this API is only valid when the assistant’s call is associated with an executive.

Parameters:
  • call_id (str) – The call identifier of the call to push.

  • line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

None

reject(call_id: str, action: RejectAction = None, line_owner_id: str = None)[source]

Reject

Reject an unanswered incoming call.

Parameters:
  • call_id (str) – The call identifier of the call to be rejected.

  • action (RejectAction) – The rejection action to apply to the call. The busy action is applied if no specific action is provided.

  • line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

None

resume(call_id: str, line_owner_id: str = None)[source]

Resume

Resume a held call.

Parameters:
  • call_id (str) – The call identifier of the call to resume.

  • line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

None

resume_recording(call_id: str = None, line_owner_id: str = None)[source]

Resume Recording

Resume recording a call. Use of this API is only valid when a call’s recording is paused and the user’s call recording mode is set to “On Demand” or “Always with Pause/Resume”.

Parameters:
  • call_id (str) – The call identifier of the call to resume recording.

  • line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

None

retrieve(destination: str = None, endpoint_id: str = None, single_number_reach_phone_number: str = None, line_owner_id: str = None) CallInfo[source]

Retrieve

Retrieve a parked call. A new call is initiated to perform the retrieval in a similar manner to the dial command. The number field from the park command response can be used as the destination for the retrieve command.

Parameters:
  • destination (str) – Identifies where the call is parked. The number field from the park command response can be used as the destination for the retrieve command. If not provided, the call parked against the retrieving user is retrieved. The destination can be digits or a URI. Some examples for destination include: 1234, 2223334444, +12223334444, *73, tel:+12223334444, user@company.domain, sip:user@company.domain

  • endpoint_id (str) –

    The ID of the device or application to use for the retrieval. The endpointId must be one of the endpointIds returned by the Get Preferred Answer Endpoint API. Mutually exclusive with singleNumberReachPhoneNumber.

  • single_number_reach_phone_number (str) – The Single Number Reach phone number to use for the retrieval. Mutually exclusive with endpointId.

  • line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

CallInfo

start_recording(call_id: str = None, line_owner_id: str = None)[source]

Start Recording

Start recording a call. Use of this API is only valid when the user’s call recording mode is set to “On Demand”.

Parameters:
  • call_id (str) – The call identifier of the call to start recording.

  • line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

None

stop_recording(call_id: str = None, line_owner_id: str = None)[source]

Stop Recording

Stop recording a call. Use of this API is only valid when a call is being recorded and the user’s call recording mode is set to “On Demand”.

Parameters:
  • call_id (str) – The call identifier of the call to stop recording.

  • line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

None

transfer(call_id1: str = None, call_id2: str = None, destination: str = None, line_owner_id: str = None) CallInfo[source]

Transfer

Transfer two calls together.

Unanswered incoming calls cannot be transferred but can be diverted using the divert API.

If the user has only two calls and wants to transfer them together, the callId1 and callId2 parameters are optional and when not provided the calls are automatically selected and transferred.

If the user has more than two calls and wants to transfer two of them together, the callId1 and callId2 parameters are mandatory to specify which calls are being transferred. Those are also commonly referred to as Attended Transfer, Consultative Transfer, or Supervised Transfer and will return a 204 response.

If the user wants to transfer one call to a new destination but only when the destination responds, the callId1 and destination parameters are mandatory to specify the call being transferred and the destination.

This is referred to as a Mute Transfer and is similar to the divert API with the difference of waiting for the destination to respond prior to transferring the call. If the destination does not respond, the call is not transferred. This will return a 201 response.

Parameters:
  • call_id1 (str) – The call identifier of the first call to transfer. This parameter is mandatory if either callId2 or destination is provided.

  • call_id2 (str) – The call identifier of the second call to transfer. This parameter is mandatory if callId1 is provided and destination is not provided.

  • destination (str) – The destination to be transferred to. The destination can be digits or a URI. Some examples for destination include: 1234, 2223334444, +12223334444, tel:+12223334444, user@company.domain, sip:user@company.domain. This parameter is mandatory if callId1 is provided and callId2 is not provided.

  • line_owner_id (str:rtype: CallInfo) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

transmit_dtmf(call_id: str = None, dtmf: str = None, line_owner_id: str = None)[source]

Transmit DTMF

Transmit DTMF digits to a call.

Parameters:
  • call_id (str) – The call identifier of the call to transmit DTMF digits for.

  • dtmf (str) – The DTMF digits to transmit. Each digit must be part of the following set: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, *, #, A, B, C, D]. A comma “,” may be included to indicate a pause between digits. For the value “1,234”, the DTMF 1 digit is initially sent. After a pause, the DTMF 2, 3, and 4 digits are sent successively.

  • line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

None

unmute(call_id: str, line_owner_id: str = None)[source]

Unmute

Unmute a call. This API can only be used for a call that reports itself as mute capable via the muteCapable field in the call details.

Parameters:
  • call_id (str) – The call identifier of the call to unmute.

  • line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

None

call_details(call_id: str, line_owner_id: str = None) TelephonyCall[source]

Get Call Details

Get the details of the specified active call for the user.

Parameters:
  • call_id (str) – The call identifier of the call.

  • line_owner_id (str) – The ID of a user, workspace, or virtual line for which there is a secondary line on a device owned by the user invoking the API.

Return type:

Call

update_external_voicemail_mwi(id: str, action: ExternalVoicemailMwiAction, org_id: str = None)[source]

Set or Clear Message Waiting Indicator (MWI) Status

Enables an external voicemail service to SET or CLEAR the Message Waiting Indicator (MWI) for a person or workspace.

Invoke the API using a bearer token from a Service App in the target organization, created by a full admin with the scope spark-admin:calls_write.

Specify the target user or workspace with the required id query parameter.

Optionally, use the orgId parameter to indicate the organization; if omitted, the Service App’s organization is used.

If orgId is provided, it must match the Service App’s organization or be a managed organization.

Set the desired action (SET or CLEAR) in the message body’s action field.

Learn more about using Webex Service Apps.

Parameters:
  • id (str) – Unique identifier for the user or workspace.

  • action (ExternalVoicemailMwiAction) – Indicates whether to SET or CLEAR the MWI status.

  • org_id (str) – Id of the organization to which the user or workspace belongs. If not provided, the orgId of the Service App is used. If provided, the organization must be the same as or managed by the Service App’s organization.

Return type:

None

base = 'telephony/calls'
class wxc_sdk.telephony.calls.RecallType(*values)[source]

Bases: str, SafeEnum

An enumeration.

park = 'park'

The user is being recalled for a call park they initiated.

class wxc_sdk.telephony.calls.ExternalVoicemailMwiAction(*values)[source]

Bases: str, SafeEnum

An enumeration.

set = 'SET'
clear = 'CLEAR'