What does HRESULT 0x80EE0072 (RTC_E_REFER_NOT_EXIST) mean?

 
Previous Next
RTC_E_REFER_NOT_ALLOWED RTC_E_SIP_HOLD_OPERATION_PENDING

RTC_E_REFER_NOT_EXIST

Operational meaning: RTC_E_REFER_NOT_EXIST

This result is useful only when preserved with its producing phase; in starting, accepting, rejecting, or completing a REFER operation and its associated event subscription, it denotes the REFER operation or refer session being queried has already ended or was never created.

The machine-readable identity of this result is 0x80EE0072 in the RTC interface facility 0xEE; the result identity matters because RTC uses separate facilities for API conditions, SIP final responses, and PINT service statuses.

Before changing configuration, record operation ID, dialog, last NOTIFY, completion event, and object instance; the RTC codes surrounding this result are not equivalent because missing REFER state differs from remote rejection of an existing request.

Signals worth preserving

  • Code-specific proof: record operation ID, dialog, last NOTIFY, completion event, and object instance.
  • Correlation key: refer subscription state.
  • Protocol or object snapshot: NOTIFY status body.
  • Last completed transition: referred-session identity and final state.
  • Expected output: original dialog and REFER CSeq.

Protocol and object state

RTC areaSIP REFER and call-transfer
Condition to provethe REFER operation or refer session being queried has already ended or was never created
Objects to correlateRTC session, REFER request, Refer-To URI, refer subscription, NOTIFY outcome and referred session
Safe corrective directionmake cleanup idempotent and do not reuse stale transfer objects

Interpreting it requires both of these facts: REFER acceptance means the recipient accepted responsibility for attempting the referenced action; it does not prove that the transferred call succeeded; also, the result branch assumes that The operation has its own lifetime and completion notifications, which can outlive the original call-control method invocation.

Verification workflow

  1. Record it and 0x80EE0072 at the first RTC method or event that returns it.
  2. Apply one controlled change: make cleanup idempotent and do not reuse stale transfer objects; then verify the result return value and resulting RTC state.

Do not confuse it with

RTC_E_REFER_NOT_ACCEPTEDthe remote party did not accept responsibility for the REFER operation
RTC_E_REFER_NOT_ALLOWEDRTC session type, state, or policy does not permit REFER for this call
RTC_E_SIP_REFER_OPERATION_PENDINGanother REFER operation still owns the session’s transfer state

Recovery and control flow

Recovery should be narrow: make cleanup idempotent and do not reuse stale transfer objects; while handling this result, do not let a higher layer simultaneously recreate the same session, registration, listener, or profile.

Example: A late timer tries to cancel a transfer after its final NOTIFY completed.

Actions that do not address this condition

  • Do not tear down the original session solely because the REFER request was accepted.
  • Do not issue a second REFER while the first operation is still pending.

Technical references


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