| Предыдущий | Следующий |
| RTC_E_SIP_NEED_MORE_DATA | RTC_E_SIP_REQUEST_DESTINATION_ADDR_NOT_PRESENT |
RTC_E_SIP_CALL_DISCONNECTED
Интерпретация результата
RTC_E_SIP_CALL_DISCONNECTED (0X80EE0019) означает: SIP call/dialog уже завершён, а код пытается продолжить связанную операцию. Этот HRESULT описывает узкую границу, поэтому сначала фиксируйте producing method и объект, а затем уже интерпретируйте сообщение пользователя.
Английский маркер для сопоставления с исходной документацией: the call dialog or session was disconnected before the requested call operation could complete
. Используйте его как поисковый ключ вместе с timestamp и transaction/session ID.
Что сохранить
- SIP method, Request-URI domain, Call-ID/CSeq и dialog tags.
- Via/Route/Contact и transport (UDP/TCP/TLS) с responding hop.
- transaction state, relevant header/SDP hash и первый RTC event/HRESULT.
Код-специфическая проверка
Сохраните raw start-line и относящиеся к ошибке headers до нормализации RTC; Call-ID/CSeq и responding Via связывают локальный callback с конкретной SIP transaction.
Проверка должна подтвердить именно условие «SIP call/dialog уже завершён, а код пытается продолжить связанную операцию» в текущем RTC object generation. Не используйте успешный retry после широкого reset как доказательство причины.
Практический сценарий из EN-описания: A user hangs up while a hold operation is still pending.
. В воспроизведении меняйте только параметр или state, который отличает этот сценарий от рабочего.
Восстановление
Измените только состояние или вход, непосредственно связанный с этой границей, и сравните первый HRESULT до и после исправления.
После изменения повторите тот же вызов и сравните первый HRESULT, достигнутую фазу и побочные эффекты. Исправление подтверждено только если прежнее условие «SIP call/dialog уже завершён, а код пытается продолжить связанную операцию» больше не возникает на сопоставимом входе.
Технические ссылки
- Microsoft RTC return constants.
- SIP transport behavior.
- Locating SIP servers.
- SIP and TEL URLs in RTC.
Нужно найти другой код? Найти другой код состояния или ошибки.
