| Previous | Next |
| RTC_E_PINT_STATUS_REJECTED_CANCELLED | EVT_WDSMCS_W_CP_DLL_LOAD_FAILED_NOT_CRITICAL |
RTC_E_PINT_STATUS_REJECTED_BADNUMBER
Protocol boundary: RTC_E_PINT_STATUS_REJECTED_BADNUMBER
RTC_E_PINT_STATUS_REJECTED_BADNUMBER marks a specific boundary in a PINT gateway reporting the PSTN-side result of a requested telephone service: the supplied telephone destination could not be accepted as a routable number for the PINT service; treating RTC_E_PINT_STATUS_REJECTED_BADNUMBER as a generic RTC failure loses the state needed to choose a safe next action.
For correlation, retain 0x80F0000B in the RTC PINT-status facility together with RTC_E_PINT_STATUS_REJECTED_BADNUMBER; for RTC_E_PINT_STATUS_REJECTED_BADNUMBER, generic HRESULT text can otherwise hide the protocol family and the exact RTC branch.
The quickest way to localize RTC_E_PINT_STATUS_REJECTED_BADNUMBER is to capture a redacted normalized number, numbering plan/context, service type, and gateway validation result; the important RTC_E_PINT_STATUS_REJECTED_BADNUMBER boundary is that Bad Number concerns addressing or numbering-plan validity rather than a reachable line being busy or unanswered.
Protocol and object boundary
| RTC area | PINT telephone-service outcome boundary |
|---|---|
| Objects to correlate | PINT request, gateway, primary and secondary PSTN legs, switch outcome and cancellation state |
| Condition to prove | the supplied telephone destination could not be accepted as a routable number for the PINT service |
| Safe corrective direction | correct normalization, country/area context, or user input before creating another request |
The surrounding protocol rule for RTC_E_PINT_STATUS_REJECTED_BADNUMBER is that PINT extends SIP/SDP to request telephone-network services; these status values describe PSTN execution rather than ordinary SIP proxy routing; in addition, the RTC_E_PINT_STATUS_REJECTED_BADNUMBER path requires that A signaling request can be accepted by the gateway yet later fail because one leg is busy, unanswered, invalid, or rejected by the switch.
How to prove the condition
- Record
RTC_E_PINT_STATUS_REJECTED_BADNUMBERand0x80F0000Bat the first RTC method or event that returns it. - Identify the client, profile, session, participant, presence object, terminal, or port manager that owns this
RTC_E_PINT_STATUS_REJECTED_BADNUMBERoccurrence. - Place
RTC_E_PINT_STATUS_REJECTED_BADNUMBERin its exact phase: parsing, discovery, transport, authentication, profile validation, dialog control, media, roaming, registration, redirection, or final response handling. - For
RTC_E_PINT_STATUS_REJECTED_BADNUMBER, prove the condition by ensuring the trace can capture a redacted normalized number, numbering plan/context, service type, and gateway validation result. - Apply one controlled change for
RTC_E_PINT_STATUS_REJECTED_BADNUMBER: correct normalization, country/area context, or user input before creating another request; then verify theRTC_E_PINT_STATUS_REJECTED_BADNUMBERreturn value and resulting RTC state.
For RTC_E_PINT_STATUS_REJECTED_BADNUMBER, a SIP capture without RTC callback state cannot show which local object accepted or rejected the transition; for RTC_E_PINT_STATUS_REJECTED_BADNUMBER, an HRESULT-only log has the opposite weakness: it cannot show whether the result was generated before transmission or mapped from the peer.
Minimum incident record
Do not wait for a generic failure notification to log RTC_E_PINT_STATUS_REJECTED_BADNUMBER; preserve the API call or event producing RTC_E_PINT_STATUS_REJECTED_BADNUMBER together with the RTC object and transaction state visible at that moment.
- Code-specific proof for
RTC_E_PINT_STATUS_REJECTED_BADNUMBER: capture a redacted normalized number, numbering plan/context, service type, and gateway validation result. - Owning object for
RTC_E_PINT_STATUS_REJECTED_BADNUMBER: gateway and switch timestamps. - Wire evidence for
RTC_E_PINT_STATUS_REJECTED_BADNUMBER: cancellation or final indication. - Lifecycle generation for
RTC_E_PINT_STATUS_REJECTED_BADNUMBER:PINTrequest/correlation ID.
When recording RTC_E_PINT_STATUS_REJECTED_BADNUMBER, redact credentials, full telephone numbers, private contact lists, and message bodies; for RTC_E_PINT_STATUS_REJECTED_BADNUMBER, retain permitted URI domains, header names, byte counts, hashes, transaction identifiers, timestamps, and state transitions.
Actions that do not address this condition
- The following shortcut is unsafe for
RTC_E_PINT_STATUS_REJECTED_BADNUMBER: do not do not expose complete telephone numbers in general application logs. - Another non-solution for
RTC_E_PINT_STATUS_REJECTED_BADNUMBERis to do not reinterpret a PSTN leg result as a SIP transport outage. - Keep
RTC_E_PINT_STATUS_REJECTED_BADNUMBERintact through exception and UI layers; a generic parameter or network message is insufficient for diagnosis.
Correct application response
Resolve RTC_E_PINT_STATUS_REJECTED_BADNUMBER at its producing layer: correct normalization, country/area context, or user input before creating another request; after RTC_E_PINT_STATUS_REJECTED_BADNUMBER, a separate UI or watchdog retry must wait until that layer reports a final state.
Before retrying RTC_E_PINT_STATUS_REJECTED_BADNUMBER, classify the previous operation as definitely failed, definitely completed, or remotely uncertain; for RTC_E_PINT_STATUS_REJECTED_BADNUMBER, that distinction prevents duplicate dialogs, bindings, transfers, or roaming mutations.
Example for RTC_E_PINT_STATUS_REJECTED_BADNUMBER: A request supplies a local number without the dialing context required by the selected gateway.
Nearby failure modes
Use the following contrast when classifying RTC_E_PINT_STATUS_REJECTED_BADNUMBER: No Answer and Busy require a number that was routable enough to attempt; for RTC_E_PINT_STATUS_REJECTED_BADNUMBER, similar subsystem names do not imply identical recovery.
RTC_E_PINT_STATUS_REJECTED_BUSY | the selected PSTN destination returned a busy indication |
|---|---|
RTC_E_PINT_STATUS_REJECTED_PL_FAILED | the primary telephone leg failed before the requested PINT service could be completed |
RTC_E_PINT_STATUS_REJECTED_ALL_BUSY | every eligible PSTN destination or attempted leg was busy |
The comparison prevents RTC_E_PINT_STATUS_REJECTED_BADNUMBER from being flattened into a subsystem-wide error bucket with unsafe generic remediation.
Verification after a fix
A useful RTC_E_PINT_STATUS_REJECTED_BADNUMBER regression does more than expect an exception; the RTC_E_PINT_STATUS_REJECTED_BADNUMBER test constructs “the supplied telephone destination could not be accepted as a routable number for the PINT service”, checks the exact HRESULT at the producing RTC boundary, and verifies state ownership before and after the targeted correction.
Technical references
- Microsoft RTC return constants — definitions relevant when reproducing
RTC_E_PINT_STATUS_REJECTED_BADNUMBER. - PINT service protocol — API or protocol rules used to interpret
RTC_E_PINT_STATUS_REJECTED_BADNUMBER.
Looking for a different code? Search another status or error code.