wxc_sdk.device_configurations package

class wxc_sdk.device_configurations.DeviceConfigurationsApi(*, session: RestSession, base: str | None = None)[source]

Bases: ApiChild

The Device Configurations API allows developers to view and modify configurations on Webex Rooms devices, as well as other devices that use the configuration service.

Viewing the list of all device configurations in an organization requires an administrator auth token with the spark-admin:devices_read scope. Adding, updating, or deleting configurations for devices in an organization requires an administrator auth token with both the spark-admin:devices_write and the spark-admin:devices_read scope.

list(device_id: str, key: str | None = None) DeviceConfigurationResponse[source]

Lists all device configurations associated with the given device ID. Administrators can list configurations for all devices within an organization.

Parameters:
  • device_id (str) – List device configurations by device ID.

  • key (str) –

    This can optionally be used to filter configurations. Keys are composed of segments. It’s possible to use absolute paths, wildcards or ranges.

    Absolute gives only one configuration as a result. Conference.MaxReceiveCallRate for example gives the ConferenceMaxReceiveCallRate configuration.

    Wildcards (*) can specify multiple configurations with shared segments. Audio.Ultrasound.* for example will filter on all Audio Ultrasound configurations.

    Range ([number]) can be used to filter numbered segments. FacilityService.Service[1].Name for instance only shows the first FacilityService Service Name configuration, FacilityService.Service[*].Name shows all, FacilityService.Service[1..3].Name shows the first three and FacilityService.Service[2..n].Name shows all starting at 2.

Returns:

device configurations

update(device_id: str, operations: List[DeviceConfigurationOperation]) DeviceConfigurationResponse[source]

Update Device Configurations

Parameters:
  • device_id – Update device configurations by device ID.

  • operations – list if operations to apply

base = 'deviceConfigurations'
class wxc_sdk.device_configurations.DeviceConfiguration(*, value: Any | None = None, source: Literal['default', 'configured'], sources: DeviceConfigurationSources, valueSpace: Any)[source]

Bases: ApiModel

value: Any | None
source: Literal['default', 'configured']

The source of the current value that is applied to the device.

sources: DeviceConfigurationSources
value_space: Any

JSON Schema describing the data format of the configuration as specified by the device.

class wxc_sdk.device_configurations.DeviceConfigurationSourceEditability(*, isEditable: bool, reason: str | None = None)[source]

Bases: ApiModel

is_editable: bool

Whether or not the value is editable on this source (always false for default).

reason: str | None

The reason value is not editable on this source (always FACTORY_DEFAULT for default). The reason the value is not editable on this source. * NOT_AUTHORIZED - User is not authorized to edit any values. * CONFIG_MANAGED_BY_DIFFERENT_AUTHORITY - The configuration is managed by a different authority. For example CUCM.

class wxc_sdk.device_configurations.DeviceConfigurationSources(*, default: DeviceConfigurationSource, configured: DeviceConfigurationSource)[source]

Bases: ApiModel

default: DeviceConfigurationSource
configured: DeviceConfigurationSource
class wxc_sdk.device_configurations.DeviceConfigurationSource(*, value: Any, editability: DeviceConfigurationSourceEditability, level: str, enforced: bool | None = None)[source]

Bases: ApiModel

value: Any
editability: DeviceConfigurationSourceEditability
level: str
enforced: bool | None
class wxc_sdk.device_configurations.DeviceConfigurationResponse(*, deviceId: str, items: dict[str, DeviceConfiguration])[source]

Bases: ApiModel

device_id: str

ID of the device that the configurations are for.

items: dict[str, DeviceConfiguration]
class wxc_sdk.device_configurations.DeviceConfigurationOperation(op, key, value)[source]

Bases: NamedTuple

op: Literal['remove', 'replace']

remove - Remove the configured value and revert back to the default from schema, if present. replace - Set the configured value.

key: str

device configuration key

value: Any | None

value, only required for ‘replace’