| Previous | Next |
| RTC_E_PROFILE_INVALID_SERVER_ROLE | RTC_E_PROFILE_INVALID_SESSION |
RTC_E_PROFILE_MULTIPLE_REGISTRARS
What RTC_E_PROFILE_MULTIPLE_REGISTRARS means in RTC
This HRESULT is emitted for a defined RTC state rather than an unspecified communications problem; that state is the profile defines more than one registrar server where RTC requires one unambiguous registrar.
At the HRESULT layer, this result appears as 0x80EE003A in the RTC interface facility 0xEE; preserving the facility and symbol prevents it from being grouped incorrectly with unrelated networking or media errors.
A defensible diagnosis of this result requires you to enumerate server roles and resolve duplicates introduced by merged provisioning; in the case, multiple proxies can be valid, but multiple registrar ownership is ambiguous in this profile contract.
Minimum incident record
- Code-specific proof: enumerate server roles and resolve duplicates introduced by merged provisioning.
- Owning object: session type and party attributes.
- Wire evidence: redacted profile
XMLpath/version. - Lifecycle state: user URI and profile key hash.
Protocol and object state
| RTC area | RTC provisioning profile validation |
|---|---|
| Objects to correlate | profile XML, provision/user/server/session elements, registrar and proxy roles, transport and authentication method |
| Condition to prove | the profile defines more than one registrar server where RTC requires one unambiguous registrar |
| Safe corrective direction | retain one authoritative registrar and express alternate routing through supported proxy/failover fields |
CreateProfile validates the provisioning schema and cross-field constraints; a field can be present yet still be unusable with the chosen transport or role. The enabled profile selected for a call must support both the destination and the requested session type.
Correct application response
The appropriate response to this result is not a blanket reconnect. Instead, retain one authoritative registrar and express alternate routing through supported proxy/failover fields, while preserving ownership of cleanup and any bounded retry.
Example: A configuration merge marks both primary and backup servers as registrar.
How to prove the condition
- Record it and
0x80EE003Aat the first RTC method or event that returns it. - Prove the condition by ensuring the trace can enumerate server roles and resolve duplicates introduced by merged provisioning.
- Apply one controlled change: retain one authoritative registrar and express alternate routing through supported proxy/failover fields; then verify the result return value and resulting RTC state.
Nearby failure modes
RTC_E_PROFILE_INVALID_SESSION_TYPE | the profile contains an invalid session type value or combination |
|---|---|
RTC_E_NO_TRANSPORT | a server is specified in the profile without a transport protocol RTC can use |
RTC_E_PROFILE_NO_SERVER_PROTOCOL | the provisioning profile omits the required server protocol field |
Actions that do not address this condition
- Do not insert placeholder values solely to pass schema validation.
- Do not log passwords or provisioning secrets from profile XML.
Technical references
Looking for a different code? Search another status or error code.
