What does HRESULT 0x80EE0029 (RTC_E_INVALID_SESSION_TYPE) mean?

 
Previous Next
RTC_E_PRESENCE_NOT_ENABLED RTC_E_INVALID_SESSION_STATE

RTC_E_INVALID_SESSION_TYPE

What RTC_E_INVALID_SESSION_TYPE means in RTC

This code belongs to creating a session, adding or removing participants, and serializing operations that alter call topology: the requested session type is not a valid RTC session kind for this operation or platform.

For correlation, retain 0x80EE0029 in the RTC interface facility 0xEE together with this result; generic HRESULT text can otherwise hide the protocol family and the exact RTC branch.

The quickest way to localize this result is to capture the enumeration value, API entry point, selected profile, and platform version; the important boundary is that invalid type differs from a valid type that the current profile does not support.

Protocol and object state

RTC areaRTC session and participant state
Objects to correlateIRTCSession, session type/state, participant URI, dialog, pending INVITE or join operation
Condition to provethe requested session type is not a valid RTC session kind for this operation or platform
Safe corrective directionuse a defined RTC session type and ensure the profile advertises it

Adding the first participant starts an idle RTC session; later participant operations are constrained by the chosen session type. An outstanding INVITE, join, hold, or REFER operation owns part of the session state until its completion event arrives.

How to prove the condition

  1. Collect enough evidence to capture the enumeration value, API entry point, selected profile, and platform version.
  2. Test the competing explanation explicitly, because invalid type differs from a valid type that the current profile does not support.
  3. Apply the targeted fix — use a defined RTC session type and ensure the profile advertises and validate both protocol completion and object cleanup.

Minimum incident record

  • Code-specific proof: capture the enumeration value, API entry point, selected profile, and platform version.
  • Owning object: completion event and final response.
  • Wire evidence: session type and state.
  • Lifecycle state: participant URI and count.

Actions that do not address this condition

  • Do not issue overlapping topology changes from independent callbacks.
  • Do not create a second session until the first operation outcome is reconciled.

Correct application response

Resolve it at its producing layer: use a defined RTC session type and ensure the profile advertises it; after it, a separate UI or watchdog retry must wait until that layer reports a final state.

Example: A configuration integer outside the RTC_SESSION_TYPE enumeration reaches CreateSession.

Nearby failure modes

RTC_E_SIP_OTHER_PARTY_JOIN_IN_PROGRESSa join operation for another participant is already changing session topology
RTC_E_SIP_PEER_PARTICIPANT_IN_MULTIPARTY_SESSIONa peer-style participant cannot be inserted into the selected multiparty session topology
RTC_E_SIP_CALL_CONNECTION_NOT_ESTABLISHEDthe call has not reached the connected dialog/session state required by the requested operation

Technical references


Looking for a different code? Search another status or error code.