| Предыдущий | Следующий |
| RTC_E_SIP_NO_STREAM | RTC_E_SIP_HEADER_NOT_PRESENT |
RTC_E_SIP_PARSE_FAILED
Интерпретация результата
RTC_E_SIP_PARSE_FAILED (0X80EE0004) означает: RTC не смог разобрать SIP message из-за синтаксической или framing ошибки. Этот HRESULT описывает узкую границу, поэтому сначала фиксируйте producing method и объект, а затем уже интерпретируйте сообщение пользователя.
Английский маркер для сопоставления с исходной документацией: the RTC SIP parser could not construct a valid message from the received or generated bytes
. Используйте его как поисковый ключ вместе с 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.
Сохраните точное представление входа до нормализации: XML/SDP/SIP fragment, URI, address tuple или object state. Ошибку следует локализовать по первому отклонённому полю и offset, а не исправлять широким пересозданием профиля.
Практический сценарий из EN-описания: A TCP receiver combines two SIP messages incorrectly and the second start-line appears inside the first body.
. В воспроизведении меняйте только параметр или state, который отличает этот сценарий от рабочего.
Восстановление
Исправьте одно доказанно недопустимое поле или state transition. Контрольный запуск должен отличаться от исходного только этим изменением.
После изменения повторите тот же вызов и сравните первый HRESULT, достигнутую фазу и побочные эффекты. Исправление подтверждено только если прежнее условие «RTC не смог разобрать SIP message из-за синтаксической или framing ошибки» больше не возникает на сопоставимом входе.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.