wxc_sdk.person_settings.hotdesking package

class wxc_sdk.person_settings.hotdesking.HotDeskingApi(*, session: RestSession, selector: ApiSelector = ApiSelector.person)[source]

Bases: PersonSettingsApiChild

API for hot desking settings; so far only used for persons

feature: str | None = 'hotDesking'
available_members(person_id: str, location_id: str = None, member_name: str = None, phone_number: str = None, extension: str = None, order: list[str] = None, org_id: str = None, **params: Any) Generator[HotDeskingAvailableMember, None, None][source]

Search Available Hot Desking Members

Retrieve members available for assignment to a person’s hot desking guest profile.

Available members can include people, workspaces, and virtual lines that can be added as shared lines on the hot desking profile.

This API requires a full, user, device, read-only, or location administrator auth token with a scope of spark-admin:telephony_config_read.

Parameters:
  • person_id (str) – Unique identifier for the entity.

  • location_id (str) – Return only available members in this location.

  • member_name (str) – Search for available members by name.

  • phone_number (str) – Search for available members by phone number.

  • extension (str) – Search for available members by extension.

  • order (list[str]) – Sort order for the available member list. Multiple order values may be provided.

  • org_id (str) – ID of the organization in which the person resides. Only admin users of another organization, such as partners, may use this parameter. If not specified, the organization from the OAuth token is used.

Returns:

Generator yielding HotDeskingAvailableMember instances

get_members(person_id: str, org_id: str = None) HotDeskingMembers[source]

Get Hot Desking Members

Retrieve the primary and shared-line members assigned to a person’s hot desking guest profile.

This API requires a full, user, device, read-only, or location administrator auth token with a scope of spark-admin:telephony_config_read.

Parameters:
  • person_id (str) – Unique identifier for the person.

  • org_id (str) – ID of the organization in which the person resides. Only admin users of another organization, such as partners, may use this parameter. If not specified, the organization from the OAuth token is used.

Return type:

HotDeskingMembers

update_members(person_id: str, members: list[HotDeskingMember], org_id: str = None) None[source]

Update Hot Desking Members

Modify the primary and shared-line members assigned to a person’s hot desking guest profile.

The request replaces the hot desking profile member list with the members supplied in the request body.

This API requires a full, user, device, or location administrator auth token with a scope of spark-admin:telephony_config_write.

Parameters:
  • person_id (str) – Unique identifier for the person.

  • members (list[HotDeskingMember]) – Members to assign to the person’s hot desking guest profile.

  • org_id (str) – ID of the organization in which the person resides. Only admin users of another organization, such as partners, may use this parameter. If not specified, the organization from the OAuth token is used.

Return type:

None

base = ''
class wxc_sdk.person_settings.hotdesking.HotDeskingAvailableMember(*, id: str | None = None, firstName: str | None = None, lastName: str | None = None, phoneNumber: str | None = None, extension: str | None = None, routingPrefix: str | None = None, esn: str | None = None, lineType: PrimaryOrShared | None = None, memberType: UserType | None = None, location: IdAndName | None = None, **extra_data: Any)[source]

Bases: ApiModel

id: str | None

Unique identifier for the member.

first_name: str | None

First name of the member.

last_name: str | None

Last name of the member.

phone_number: str | None

Phone number of the member. Currently, E.164 format is not supported.

extension: str | None

Phone extension of the member.

routing_prefix: str | None

Routing prefix of the location.

esn: str | None

Routing prefix plus extension of a person or workspace.

line_type: PrimaryOrShared | None

Indicates if the line is acting as a primary line or a shared line for this device.

member_type: UserType | None
location: IdAndName | None

Location object containing a unique identifier for the location and its name.

class wxc_sdk.person_settings.hotdesking.HotDeskingMember(*, id: str | None = None, firstName: str | None = None, lastName: str | None = None, phoneNumber: str | None = None, extension: str | None = None, routingPrefix: str | None = None, esn: str | None = None, primaryOwner: bool | None = None, port: int | None = None, t38FaxCompressionEnabled: bool | None = None, lineType: PrimaryOrShared | None = None, lineWeight: int | None = None, hostIP: str | None = None, remoteIP: str | None = None, hotlineEnabled: bool | None = None, hotlineDestination: str | None = None, allowCallDeclineEnabled: bool | None = None, memberType: UserType | None = None, location: IdAndName | None = None, **extra_data: Any)[source]

Bases: ApiModel

id: str | None

Unique identifier for the assigned member.

first_name: str | None

First name of the person or workspace.

last_name: str | None

Last name of the person or workspace.

phone_number: str | None

Phone number of the person or workspace. Currently, E.164 format is not supported. This will be supported in a future update.

extension: str | None

Phone extension of the person or workspace.

routing_prefix: str | None

Routing prefix of the location.

esn: str | None

Routing prefix plus extension of a person or workspace.

primary_owner: bool | None

If true, the person or workspace is the owner of the device. Points to the primary line/port of the device.

port: int | None

Device port number assigned to the person or workspace.

t38_fax_compression_enabled: bool | None

T.38 Fax Compression setting. Valid only for ATA Devices. Overrides user-level compression options.

line_type: PrimaryOrShared | None

Indicates if the line is acting as a primary line or a shared line for this device.

line_weight: int | None

Number of lines configured for the member on the hot desking guest profile endpoint.

host_ip: str | None

Registration home IP address for the line port.

remote_ip: str | None

Registration remote IP address for the line port.

hotline_enabled: bool | None

Configure this line to automatically call a predefined number whenever taken off-hook. Once enabled, the line can only make calls to the predefined number set in hotlineDestination.

hotline_destination: str | None

Preconfigured number for the hotline. Required when hotlineEnabled is true.

allow_call_decline_enabled: bool | None

Set how a device behaves when a call is declined. When set to true, a call decline request is extended to all endpoints on the device. When set to false, a call decline request is only declined at the current endpoint.

member_type: UserType | None

Indicates if the member is of type PEOPLE or PLACE.

location: IdAndName | None

Location object containing a unique identifier for the location and its name.

classmethod from_available_member(available_member: HotDeskingAvailableMember) HotDeskingMember[source]

Create a HotDeskingMember instance from a HotDeskingAvailableMember instance.

Parameters:

available_member (HotDeskingAvailableMember) – The available member to convert.

Returns:

A new HotDeskingMember instance with data copied from the available member.

Return type:

HotDeskingMember

class wxc_sdk.person_settings.hotdesking.HotDeskingMembers(*, model: str | None = None, members: list[HotDeskingMember] | None = None, maxLineCount: int | None = None, **extra_data: Any)[source]

Bases: ApiModel

model: str | None

Name of the hot desking guest profile endpoint.

members: list[HotDeskingMember] | None

List of primary and shared-line members assigned to the person’s hot desking guest profile.

max_line_count: int | None

Maximum number of lines that can be configured on the hot desking guest profile endpoint.