| Previous | Next |
| RTC_E_SIP_STREAM_NOT_PRESENT | RTC_E_SIP_PARSE_FAILED |
RTC_E_SIP_NO_STREAM
Where the state changes: RTC_E_SIP_NO_STREAM
Diagnosis begins inside parsing, constructing, or reconciling SIP signaling and the SDP offer/answer carried by it, where the relevant condition for this HRESULT is the operation requires at least one active media stream but the session currently has none.
The numeric form of this result is 0x80EE0003 in the RTC interface facility 0xEE; an exception translator handling it should preserve this value before converting it into application-facing call or presence states.
Evidence should show that you enumerate negotiated and locally enabled media types before invoking stream-dependent work; the diagnostic distinction is that no active stream can be a valid signaling state, especially for text-only or held sessions.
Telemetry and packet evidence
- Code-specific proof: enumerate negotiated and locally enabled media types before invoking stream-dependent work.
- Addressing context: each m= line and codec mapping.
- RTC callback state: message direction and transport.
- Transaction boundary: start-line plus header names.
- Media or profile detail: Content-Type and Content-Length.
Protocol and object state
| RTC area | SIP message and SDP negotiation |
|---|---|
| Condition to prove | the operation requires at least one active media stream but the session currently has none |
| Objects to correlate | SIP start-line and headers, message body framing, SDP session and media sections, offer/answer generation |
| Safe corrective direction | add or negotiate the required stream, or skip the media-only operation for this session type |
SIP transaction state and media negotiation are separate: a syntactically valid SIP request can still contain absent or unacceptable SDP. An SDP update must be checked against the previous offer/answer state, not merely parsed as a standalone text document.
Actions that do not address this condition
- Do not log credentials or an unredacted SDP body from production calls.
- Do not repair malformed signaling by silently deleting unknown headers or media sections.
Step-by-step isolation
- Record it and
0x80EE0003at the first RTC method or event that returns it. - Apply one controlled change: add or negotiate the required stream, or skip the media-only operation for this session type; then verify the result return value and resulting RTC state.
Recovery
Recovery should be narrow: add or negotiate the required stream, or skip the media-only operation for this session type; while handling this result, do not let a higher layer simultaneously recreate the same session, registration, listener, or profile.
Example: An audio-control command is sent to an IM-only session with no audio media.
Comparison with adjacent codes
RTC_E_SDP_MULTICAST | the SDP describes a multicast connection that the RTC Client API path does not support |
|---|---|
RTC_E_SDP_UPDATE_FAILED | a new SDP description is incompatible with the prior negotiated offer/answer state |
RTC_E_SIP_STREAM_NOT_PRESENT | code attempted to stop or remove a stream that is not active in the current session generation |
Technical references
Looking for a different code? Search another status or error code.