A publisher sends a SUBSCRIBE_ERROR control message in response to a failed SUBSCRIBE.
SUBSCRIBE_ERROR Message {
Type (i) = 0x5,
Length (i),
Request ID (i),
Error Code (i),
Error Reason (Reason Phrase),
Track Alias (i),
}
-
Request ID: The Request ID of the SUBSCRIBE this message is replying to Section 8.7.
-
Error Code: Identifies an integer error code for subscription failure.
-
Error Reason: Provides the reason for subscription error. See Section 1.3.3.
-
Track Alias: When Error Code is 'Retry Track Alias', the subscriber SHOULD re-issue the SUBSCRIBE with this Track Alias instead. If this Track Alias is already in use, the subscriber MUST close the connection with a Duplicate Track Alias error (Section 3.4).
The application SHOULD use a relevant error code in SUBSCRIBE_ERROR, as defined below:
| Code | Reason |
|---|---|
| 0x0 | Internal Error |
| 0x1 | Unauthorized |
| 0x2 | Timeout |
| 0x3 | Not Supported |
| 0x4 | Track Does Not Exist |
| 0x5 | Invalid Range |
| 0x6 | Retry Track Alias |
| 0x10 | Malformed Auth Token |
| 0x11 | Unknown Auth Token Alias |
| 0x12 | Expired Auth Token |
-
Internal Error - An implementation specific or generic error occurred.
-
Unauthorized - The subscriber is not authorized to subscribe to the given track.
-
Timeout - The subscription could not be completed before an implementation specific timeout. For example, a relay could not establish an upstream subscription within the timeout.
-
Not Supported - The endpoint does not support the SUBSCRIBE method.
-
Track Does Not Exist - The requested track is not available at the publisher.
-
Invalid Range - The end of the SUBSCRIBE range is earlier than the beginning, or the end of the range has already been published.
-
Retry Track Alias - The publisher requires the subscriber to use the given Track Alias when subscribing.
-
Malformed Auth Token - Invalid Auth Token serialization during registration (see Section 8.2.1.1).
-
Unknown Auth Token Alias - Authorization Token refers to an alias that is not registered (see Section 8.2.1.1).
-
Expired Auth Token - Authorization token has expired Section 8.2.1.1).