soco.music_services.accounts module

This module contains classes relating to Third Party music services.

class soco.music_services.accounts.Account[source]

An account for a Music Service.

Each service may have more than one account: see the Sonos release notes for version 5-2

service_type

A unique identifier for the music service to which this account relates, eg '2311' for Spotify.

Type

str

serial_number

A unique identifier for this account

Type

str

nickname

The account’s nickname

Type

str

deleted

True if this account has been deleted

Type

bool

username

The username used for logging into the music service

Type

str

metadata

Metadata for the account

Type

str

oa_device_id

Used for OpenAuth id for some services

Type

str

key

Used for OpenAuthid for some services

Type

str

classmethod get_accounts(soco=None)[source]

Get all accounts known to the Sonos system.

Parameters

soco (SoCo, optional) – a SoCo instance to query. If None, a random instance is used. Defaults to None.

Returns

A dict containing account instances. Each key is the account’s serial number, and each value is the related Account instance. Accounts which have been marked as deleted are excluded.

Return type

dict

Note

Any existing Account instance will have its attributes updated to those currently stored on the Sonos system.

classmethod get_accounts_for_service(service_type)[source]

Get a list of accounts for a given music service.

Parameters

service_type (str) – The service_type to use.

Returns

A list of Account instances.

Return type

list