These errors give you information about playback errors while starting playback and after playback has begun. These include:
- Connectivity, or readability errors, including read/write timeouts, DNS errors, etc.
- HTTP transport errors, such as 404, 500, etc.
- Decoding errors. For example, when Sonos detects badly encoded files or files that Sonos framers were not able to handle.
- Buffering errors. For example, anything that creates audio interrupts or causes audio to stop all together.
Field | Type | Description |
---|---|---|
type | string | The type of error being reported. Values include: http, transport, or playback. |
status | string | Status code pertinent to error type . See the table of values below. |
HTTP type errors
Valid HTTP status codes.
Example
Dereferenced URI returned in getMediaURI
is no longer accessible due to security restrictions. For example, an expired URI.
POST /v2.3/report/timePlayed HTTP/1.1
CONNECTION: close
ACCEPT: */*
ACCEPT-ENCODING: gzip
HOST: 192.168.0.10:8223
USER-AGENT: Linux UPnP/1.0 Sonos/46.2-56030-ci-517-content-ux-414254 (ZPS1)
AUTHORIZATION: 1533680812459_7
CONTENT-TYPE: application/json
CONTENT-LENGTH: 251
X-Sonos-Playback-Id: RINCON_B8E937C0011801400:3876374424
X-Sonos-Device-Id: Sonos_MTM_0fQXuhqKvFlHJJoBrRhH1e_38a8f8e0
X-Sonos-CorrId: 6f14bb40-b3a5-45ae-be86-de3a7a41cbb1
X-MockSMAPI-ApiKey: F118580B-8A55-4A3E-85BE-3D69191AC35F
{
"items": [
{
"containerId": "al:54",
"durationPlayedMillis": 0,
"error": {
"type": "http",
"status" : "403"
},
"mediaUrl": "x-sonos-http:tr%3a582.mp4?sid=255&flags=32800&sn=13",
"objectId": "tr:582",
"positionMillis": 0,
"positionMillisAtSegmentStart": 0,
"timeSincePlaybackMillis": 0,
"type": "final"
}
]
}
Transport type errors
These include connectivity, framers, SMAPI and other channel source errors that were not a result of an HTTP error.
Code | Description |
---|---|
ERROR_OCCURRED | Unknown error. |
ERROR_LOST_CONNECTION | Unexpected network error. |
ERROR_CANT_REACH_SERVER | Network timeout. |
ERROR_UNSUPPORTED_FORMAT | Sonos can not play this content. |
ERROR_CORRUPT_FILE | Detected a known content type but could not play it. |
ERROR_TOO_MANY_USERS | SMAPI server reported too many users. |
ERROR_CANT_RESOLVE_NAME | DNS error. |
ERROR_SONOS_NO_ACCOUNT | Account was removed from the Sonos household. |
ERROR_SONOS_BAD_ACCOUNT | SMAPI server reported the user has no access to the content. |
ERROR_SONOS_STREAM_LIMIT | SMAPI server detected multiple stream limit reached for a particular account. |
ERROR_ACCESS_DENIED_EXPLICIT | Unable to play track because parental controls are enabled. |
ERROR_SONOS_TOKEN_EXPIRED | SMAPI OAuth token is expired, and user must re-authorize the account. |
ERROR_SONOSAPI_X | Custom SMAPI fault, where X = [0, 999]. |
Example
Custom SOAP Fault with error code “9” returned from SMAPI server.
{
"items": [
{
"containerId": "tr:25",
"durationPlayedMillis": 0,
"error": {
"type": "transport",
"status": "ERROR_SONOSAPI_9"
},
"mediaUrl": "x-sonos-http:tr%3a25.mp3?sid=255&flags=32&sn=13",
"objectId": "tr:25",
"positionMillis": 0,
"positionMillisAtSegmentStart": 0,
"timeSincePlaybackMillis": 0,
"type": "final"
}
]
}
Playback type errors
These include Channel Sink errors. Currently this only includes ERROR_LSE
, Large Sync Errors.