ServicesAndActions - SonosCollaboration/SonosProtocol GitHub Wiki

Table of contents

AVTransport

The AVTransport service has the following actions:

SetAVTransportURI

Direction Name Type
input InstanceID ui4
input CurrentURI string
input CurrentURIMetaData string

SetNextAVTransportURI

Direction Name Type
input InstanceID ui4
input NextURI string
input NextURIMetaData string

AddURIToQueue

Direction Name Type
input InstanceID ui4
input EnqueuedURI string
input EnqueuedURIMetaData string
input DesiredFirstTrackNumberEnqueued ui4
input EnqueueAsNext boolean
output FirstTrackNumberEnqueued ui4
output NumTracksAdded ui4
output NewQueueLength ui4

AddMultipleURIsToQueue

Direction Name Type
input InstanceID ui4
input UpdateID ui4
input NumberOfURIs ui4
input EnqueuedURIs string
input EnqueuedURIsMetaData string
input ContainerURI string
input ContainerMetaData string
input DesiredFirstTrackNumberEnqueued ui4
input EnqueueAsNext boolean
output FirstTrackNumberEnqueued ui4
output NumTracksAdded ui4
output NewQueueLength ui4
output NewUpdateID ui4

ReorderTracksInQueue

Direction Name Type
input InstanceID ui4
input StartingIndex ui4
input NumberOfTracks ui4
input InsertBefore ui4
input UpdateID ui4

RemoveTrackFromQueue

Direction Name Type
input InstanceID ui4
input ObjectID string
input UpdateID ui4

RemoveTrackRangeFromQueue

Direction Name Type
input InstanceID ui4
input UpdateID ui4
input StartingIndex ui4
input NumberOfTracks ui4
output NewUpdateID ui4

RemoveAllTracksFromQueue

Direction Name Type
input InstanceID ui4

SaveQueue

Direction Name Type
input InstanceID ui4
input Title string
input ObjectID string
output AssignedObjectID string

BackupQueue

Direction Name Type
input InstanceID ui4

CreateSavedQueue

Direction Name Type
input InstanceID ui4
input Title string
input EnqueuedURI string
input EnqueuedURIMetaData string
output NumTracksAdded ui4
output NewQueueLength ui4
output AssignedObjectID string
output NewUpdateID ui4

AddURIToSavedQueue

Direction Name Type
input InstanceID ui4
input ObjectID string
input UpdateID ui4
input EnqueuedURI string
input EnqueuedURIMetaData string
input AddAtIndex ui4
output NumTracksAdded ui4
output NewQueueLength ui4
output NewUpdateID ui4

ReorderTracksInSavedQueue

Direction Name Type
input InstanceID ui4
input ObjectID string
input UpdateID ui4
input TrackList string
input NewPositionList string
output QueueLengthChange i4
output NewQueueLength ui4
output NewUpdateID ui4

GetMediaInfo

Direction Name Type
input InstanceID ui4
output NrTracks ui4
output MediaDuration string
output CurrentURI string
output CurrentURIMetaData string
output NextURI string
output NextURIMetaData string
output PlayMedium string
output RecordMedium string
output WriteStatus string

GetTransportInfo

Direction Name Type
input InstanceID ui4
output CurrentTransportState string
output CurrentTransportStatus string
output CurrentSpeed string

GetPositionInfo

Direction Name Type
input InstanceID ui4
output Track ui4
output TrackDuration string
output TrackMetaData string
output TrackURI string
output RelTime string
output AbsTime string
output RelCount i4
output AbsCount i4

GetDeviceCapabilities

Direction Name Type
input InstanceID ui4
output PlayMedia string
output RecMedia string
output RecQualityModes string

GetTransportSettings

Direction Name Type
input InstanceID ui4
output PlayMode string
output RecQualityMode string

GetCrossfadeMode

Direction Name Type
input InstanceID ui4
output CrossfadeMode boolean

Stop

Direction Name Type
input InstanceID ui4

Play

Direction Name Type
input InstanceID ui4
input Speed string

Pause

Direction Name Type
input InstanceID ui4

Seek

Direction Name Type
input InstanceID ui4
input Unit string
input Target string

Next

Direction Name Type
input InstanceID ui4

NextProgrammedRadioTracks

Direction Name Type
input InstanceID ui4

Previous

Direction Name Type
input InstanceID ui4

NextSection

Direction Name Type
input InstanceID ui4

PreviousSection

Direction Name Type
input InstanceID ui4

SetPlayMode

Direction Name Type
input InstanceID ui4
input NewPlayMode string

SetCrossfadeMode

Direction Name Type
input InstanceID ui4
input CrossfadeMode boolean

NotifyDeletedURI

Direction Name Type
input InstanceID ui4
input DeletedURI string

GetCurrentTransportActions

Direction Name Type
input InstanceID ui4
output Actions string

BecomeCoordinatorOfStandaloneGroup

Direction Name Type
input InstanceID ui4

DelegateGroupCoordinationTo

Direction Name Type
input InstanceID ui4
input NewCoordinator string
input RejoinGroup boolean

BecomeGroupCoordinator

Direction Name Type
input InstanceID ui4
input CurrentCoordinator string
input CurrentGroupID string
input OtherMembers string
input TransportSettings string
input CurrentURI string
input CurrentURIMetaData string
input SleepTimerState string
input AlarmState string
input StreamRestartState string
input CurrentQueueTrackList string

BecomeGroupCoordinatorAndSource

Direction Name Type
input InstanceID ui4
input CurrentCoordinator string
input CurrentGroupID string
input OtherMembers string
input CurrentURI string
input CurrentURIMetaData string
input SleepTimerState string
input AlarmState string
input StreamRestartState string
input CurrentAVTTrackList string
input CurrentQueueTrackList string
input CurrentSourceState string
input ResumePlayback boolean

ChangeCoordinator

Direction Name Type
input InstanceID ui4
input CurrentCoordinator string
input NewCoordinator string
input NewTransportSettings string

ChangeTransportSettings

Direction Name Type
input InstanceID ui4
input NewTransportSettings string
input CurrentAVTransportURI string

ConfigureSleepTimer

Direction Name Type
input InstanceID ui4
input NewSleepTimerDuration string

GetRemainingSleepTimerDuration

Direction Name Type
input InstanceID ui4
output RemainingSleepTimerDuration string
output CurrentSleepTimerGeneration ui4

RunAlarm

Direction Name Type
input InstanceID ui4
input AlarmID ui4
input LoggedStartTime string
input Duration string
input ProgramURI string
input ProgramMetaData string
input PlayMode string
input Volume ui2
input IncludeLinkedZones boolean

StartAutoplay

Direction Name Type
input InstanceID ui4
input ProgramURI string
input ProgramMetaData string
input Volume ui2
input IncludeLinkedZones boolean
input ResetVolumeAfter boolean

GetRunningAlarmProperties

Direction Name Type
input InstanceID ui4
output AlarmID ui4
output GroupID string
output LoggedStartTime string

SnoozeAlarm

Direction Name Type
input InstanceID ui4
input Duration string

AlarmClock

The AlarmClock service has the following actions:

SetFormat

Direction Name Type
input DesiredTimeFormat string
input DesiredDateFormat string

GetFormat

Direction Name Type
output CurrentTimeFormat string
output CurrentDateFormat string

SetTimeZone

Direction Name Type
input Index i4
input AutoAdjustDst boolean

GetTimeZone

Direction Name Type
output Index i4
output AutoAdjustDst boolean

GetTimeZoneAndRule

Direction Name Type
output Index i4
output AutoAdjustDst boolean
output CurrentTimeZone string

GetTimeZoneRule

Direction Name Type
input Index i4
output TimeZone string

SetTimeServer

Direction Name Type
input DesiredTimeServer string

GetTimeServer

Direction Name Type
output CurrentTimeServer string

SetTimeNow

Direction Name Type
input DesiredTime string
input TimeZoneForDesiredTime string

GetHouseholdTimeAtStamp

Direction Name Type
input TimeStamp string
output HouseholdUTCTime string

GetTimeNow

Direction Name Type
output CurrentUTCTime string
output CurrentLocalTime string
output CurrentTimeZone string
output CurrentTimeGeneration ui4

CreateAlarm

Direction Name Type
input StartLocalTime string
input Duration string
input Recurrence string
input Enabled boolean
input RoomUUID string
input ProgramURI string
input ProgramMetaData string
input PlayMode string
input Volume ui2
input IncludeLinkedZones boolean
output AssignedID ui4

UpdateAlarm

Direction Name Type
input ID ui4
input StartLocalTime string
input Duration string
input Recurrence string
input Enabled boolean
input RoomUUID string
input ProgramURI string
input ProgramMetaData string
input PlayMode string
input Volume ui2
input IncludeLinkedZones boolean

DestroyAlarm

Direction Name Type
input ID ui4

ListAlarms

Direction Name Type
output CurrentAlarmList string
output CurrentAlarmListVersion string

SetDailyIndexRefreshTime

Direction Name Type
input DesiredDailyIndexRefreshTime string

GetDailyIndexRefreshTime

Direction Name Type
output CurrentDailyIndexRefreshTime string

ContentDirectory

The ContentDirectory service has the following actions:

GetSearchCapabilities

Direction Name Type
output SearchCaps string

GetSortCapabilities

Direction Name Type
output SortCaps string

GetSystemUpdateID

Direction Name Type
output Id ui4

GetAlbumArtistDisplayOption

Direction Name Type
output AlbumArtistDisplayOption string

GetLastIndexChange

Direction Name Type
output LastIndexChange string

Browse

Direction Name Type
input ObjectID string
input BrowseFlag string
input Filter string
input StartingIndex ui4
input RequestedCount ui4
input SortCriteria string
output Result string
output NumberReturned ui4
output TotalMatches ui4
output UpdateID ui4

FindPrefix

Direction Name Type
input ObjectID string
input Prefix string
output StartingIndex ui4
output UpdateID ui4

GetAllPrefixLocations

Direction Name Type
input ObjectID string
output TotalPrefixes ui4
output PrefixAndIndexCSV string
output UpdateID ui4

CreateObject

Direction Name Type
input ContainerID string
input Elements string
output ObjectID string
output Result string

UpdateObject

Direction Name Type
input ObjectID string
input CurrentTagValue string
input NewTagValue string

DestroyObject

Direction Name Type
input ObjectID string

RefreshShareList

Direction Name Type

RefreshShareIndex

Direction Name Type
input AlbumArtistDisplayOption string

RequestResort

Direction Name Type
input SortOrder string

GetShareIndexInProgress

Direction Name Type
output IsIndexing boolean

GetBrowseable

Direction Name Type
output IsBrowseable boolean

SetBrowseable

Direction Name Type
input Browseable boolean

DeviceProperties

The DeviceProperties service has the following actions:

SetLEDState

Direction Name Type
input DesiredLEDState string

GetLEDState

Direction Name Type
output CurrentLEDState string

SetInvisible

Direction Name Type
input DesiredInvisible boolean

GetInvisible

Direction Name Type
output CurrentInvisible boolean

AddBondedZones

Direction Name Type
input ChannelMapSet string

RemoveBondedZones

Direction Name Type
input ChannelMapSet string

CreateStereoPair

Direction Name Type
input ChannelMapSet string

SeparateStereoPair

Direction Name Type
input ChannelMapSet string

SetZoneAttributes

Direction Name Type
input DesiredZoneName string
input DesiredIcon string
input DesiredConfiguration string

GetZoneAttributes

Direction Name Type
output CurrentZoneName string
output CurrentIcon string
output CurrentConfiguration string

GetHouseholdID

Direction Name Type
output CurrentHouseholdID string

GetZoneInfo

Direction Name Type
output SerialNumber string
output SoftwareVersion string
output DisplaySoftwareVersion string
output HardwareVersion string
output IPAddress string
output MACAddress string
output CopyrightInfo string
output ExtraInfo string
output HTAudioIn ui4

SetAutoplayLinkedZones

Direction Name Type
input IncludeLinkedZones boolean

GetAutoplayLinkedZones

Direction Name Type
output IncludeLinkedZones boolean

SetAutoplayRoomUUID

Direction Name Type
input RoomUUID string

GetAutoplayRoomUUID

Direction Name Type
output RoomUUID string

SetAutoplayVolume

Direction Name Type
input Volume ui2

GetAutoplayVolume

Direction Name Type
output CurrentVolume ui2

ImportSetting

Direction Name Type
input SettingID ui4
input SettingURI string

SetUseAutoplayVolume

Direction Name Type
input UseVolume boolean

GetUseAutoplayVolume

Direction Name Type
output UseVolume boolean

AddHTSatellite

Direction Name Type
input HTSatChanMapSet string

RemoveHTSatellite

Direction Name Type
input SatRoomUUID string

GroupManagement

The GroupManagement service has the following actions:

AddMember

Direction Name Type
input MemberID string
output CurrentTransportSettings string
output GroupUUIDJoined string
output ResetVolumeAfter boolean
output VolumeAVTransportURI string

RemoveMember

Direction Name Type
input MemberID string

ReportTrackBufferingResult

Direction Name Type
input MemberID string
input ResultCode i4

GroupRenderingControl

The GroupRenderingControl service has the following actions:

GetGroupMute

Direction Name Type
input InstanceID ui4
output CurrentMute boolean

SetGroupMute

Direction Name Type
input InstanceID ui4
input DesiredMute boolean

GetGroupVolume

Direction Name Type
input InstanceID ui4
output CurrentVolume ui2

SetGroupVolume

Direction Name Type
input InstanceID ui4
input DesiredVolume ui2

SetRelativeGroupVolume

Direction Name Type
input InstanceID ui4
input Adjustment i4
output NewVolume ui2

SnapshotGroupVolume

Direction Name Type
input InstanceID ui4

MR_ConnectionManager

The MR_ConnectionManager service has the following actions:

MS_ConnectionManager

The MS_ConnectionManager service has the following actions:

MusicServices

The MusicServices service has the following actions:

GetSessionId

Direction Name Type
input ServiceId i2
input Username string
output SessionId string

ListAvailableServices

Direction Name Type
output AvailableServiceDescriptorList string
output AvailableServiceTypeList string
output AvailableServiceListVersion string

UpdateAvailableServices

Direction Name Type

QPlay

The QPlay service has the following actions:

QPlayAuth

Direction Name Type
input Seed string
output Code string
output MID string
output DID string

Queue

The Queue service has the following actions:

AddURI

Direction Name Type
input QueueID ui4
input UpdateID ui4
input EnqueuedURI string
input EnqueuedURIMetaData string
input DesiredFirstTrackNumberEnqueued ui4
input EnqueueAsNext boolean
output FirstTrackNumberEnqueued ui4
output NumTracksAdded ui4
output NewQueueLength ui4
output NewUpdateID ui4

AddMultipleURIs

Direction Name Type
input QueueID ui4
input UpdateID ui4
input ContainerURI string
input ContainerMetaData string
input DesiredFirstTrackNumberEnqueued ui4
input EnqueueAsNext boolean
input NumberOfURIs ui4
input EnqueuedURIsAndMetaData string
output FirstTrackNumberEnqueued ui4
output NumTracksAdded ui4
output NewQueueLength ui4
output NewUpdateID ui4

AttachQueue

Direction Name Type
input QueueOwnerID string
output QueueID ui4
output QueueOwnerContext string

Backup

Direction Name Type

Browse

Direction Name Type
input QueueID ui4
input StartingIndex ui4
input RequestedCount ui4
output Result string
output NumberReturned ui4
output TotalMatches ui4
output UpdateID ui4

CreateQueue

Direction Name Type
input QueueOwnerID string
input QueueOwnerContext string
output QueueID ui4

RemoveAllTracks

Direction Name Type
input QueueID ui4
input UpdateID ui4
output NewUpdateID ui4

RemoveTrackRange

Direction Name Type
input QueueID ui4
input UpdateID ui4
input StartingIndex ui4
input NumberOfTracks ui4
output NewUpdateID ui4

ReorderTracks

Direction Name Type
input QueueID ui4
input StartingIndex ui4
input NumberOfTracks ui4
input InsertBefore ui4
input UpdateID ui4
output NewUpdateID ui4

ReplaceAllTracks

Direction Name Type
input QueueID ui4
input UpdateID ui4
input ContainerURI string
input ContainerMetaData string
input CurrentTrackIndex ui4
input NewCurrentTrackIndices string
input NumberOfURIs ui4
input EnqueuedURIsAndMetaData string
output NewQueueLength ui4
output NewUpdateID ui4

SaveAsSonosPlaylist

Direction Name Type
input QueueID ui4
input Title string
input ObjectID string
output AssignedObjectID string

RenderingControl

The RenderingControl service has the following actions:

GetMute

Direction Name Type
input InstanceID ui4
input Channel string
output CurrentMute boolean

SetMute

Direction Name Type
input InstanceID ui4
input Channel string
input DesiredMute boolean

ResetBasicEQ

Direction Name Type
input InstanceID ui4
output Bass i2
output Treble i2
output Loudness boolean
output LeftVolume ui2
output RightVolume ui2

ResetExtEQ

Direction Name Type
input InstanceID ui4
input EQType string

GetVolume

Direction Name Type
input InstanceID ui4
input Channel string
output CurrentVolume ui2

SetVolume

Direction Name Type
input InstanceID ui4
input Channel string
input DesiredVolume ui2

SetRelativeVolume

Direction Name Type
input InstanceID ui4
input Channel string
input Adjustment i4
output NewVolume ui2

GetVolumeDB

Direction Name Type
input InstanceID ui4
input Channel string
output CurrentVolume i2

SetVolumeDB

Direction Name Type
input InstanceID ui4
input Channel string
input DesiredVolume i2

GetVolumeDBRange

Direction Name Type
input InstanceID ui4
input Channel string
output MinValue i2
output MaxValue i2

GetBass

Direction Name Type
input InstanceID ui4
output CurrentBass i2

SetBass

Direction Name Type
input InstanceID ui4
input DesiredBass i2

GetTreble

Direction Name Type
input InstanceID ui4
output CurrentTreble i2

SetTreble

Direction Name Type
input InstanceID ui4
input DesiredTreble i2

GetEQ

Direction Name Type
input InstanceID ui4
input EQType string
output CurrentValue i2

SetEQ

Direction Name Type
input InstanceID ui4
input EQType string
input DesiredValue i2

GetLoudness

Direction Name Type
input InstanceID ui4
input Channel string
output CurrentLoudness boolean

SetLoudness

Direction Name Type
input InstanceID ui4
input Channel string
input DesiredLoudness boolean

GetSupportsOutputFixed

Direction Name Type
input InstanceID ui4
output CurrentSupportsFixed boolean

GetOutputFixed

Direction Name Type
input InstanceID ui4
output CurrentFixed boolean

SetOutputFixed

Direction Name Type
input InstanceID ui4
input DesiredFixed boolean

GetHeadphoneConnected

Direction Name Type
input InstanceID ui4
output CurrentHeadphoneConnected boolean

RampToVolume

Direction Name Type
input InstanceID ui4
input Channel string
input RampType string
input DesiredVolume ui2
input ResetVolumeAfter boolean
input ProgramURI string
output RampTime ui4

RestoreVolumePriorToRamp

Direction Name Type
input InstanceID ui4
input Channel string

SetChannelMap

Direction Name Type
input InstanceID ui4
input ChannelMap string

Service

The Service service has the following actions:

SystemProperties

The SystemProperties service has the following actions:

SetString

Direction Name Type
input VariableName string
input StringValue string

SetStringX

Direction Name Type
input VariableName string
input StringValue string

GetString

Direction Name Type
input VariableName string
output StringValue string

GetStringX

Direction Name Type
input VariableName string
output StringValue string

Remove

Direction Name Type
input VariableName string

RemoveX

Direction Name Type
input VariableName string

GetWebCode

Direction Name Type
input AccountType ui4
output WebCode string

ProvisionTrialAccount

Direction Name Type
input AccountType ui4

ProvisionCredentialedTrialAccountX

Direction Name Type
input AccountType ui4
input AccountID string
input AccountPassword string
output IsExpired boolean

MigrateTrialAccountX

Direction Name Type
input TargetAccountType ui4
input TargetAccountID string
input TargetAccountPassword string

AddAccountX

Direction Name Type
input AccountType ui4
input AccountID string
input AccountPassword string

AddAccountWithCredentialsX

Direction Name Type
input AccountType ui4
input AccountToken string
input AccountKey string

RemoveAccount

Direction Name Type
input AccountType ui4
input AccountID string

EditAccountPasswordX

Direction Name Type
input AccountType ui4
input AccountID string
input NewAccountPassword string

EditAccountMd

Direction Name Type
input AccountType ui4
input AccountID string
input NewAccountMd string

DoPostUpdateTasks

Direction Name Type

ResetThirdPartyCredentials

Direction Name Type

EnableRDM

Direction Name Type
input RDMValue boolean

GetRDM

Direction Name Type
output RDMValue boolean

ApplyRDMDefaultSettings

Direction Name Type

ZoneGroupTopology

The ZoneGroupTopology service has the following actions:

CheckForUpdate

Direction Name Type
input UpdateType string
input CachedOnly boolean
input Version string
output UpdateItem string

BeginSoftwareUpdate

Direction Name Type
input UpdateURL string
input Flags ui4

ReportUnresponsiveDevice

Direction Name Type
input DeviceUUID string
input DesiredAction string

ReportAlarmStartedRunning

Direction Name Type

SubmitDiagnostics

Direction Name Type
output DiagnosticID ui4

RegisterMobileDevice

Direction Name Type
input MobileDeviceName string
input MobileDeviceUDN string
input MobileIPAndPort string

GetZoneGroupAttributes

Direction Name Type
output CurrentZoneGroupName string
output CurrentZoneGroupID string
output CurrentZonePlayerUUIDsInGroup string

GetZoneGroupState

Direction Name Type
output ZoneGroupState string