| Предыдущий | Следующий |
| RTC_E_SIP_TRANSPORT_NOT_SUPPORTED | RTC_E_SIP_CALL_DISCONNECTED |
RTC_E_SIP_NEED_MORE_DATA
Что означает RTC_E_SIP_NEED_MORE_DATA
RTC_E_SIP_NEED_MORE_DATA означает, что SIP parser ещё не получил достаточно байтов для завершения текущего сообщения.
Нормально ли это
Для TCP/TLS один read не обязан совпадать с границей SIP message, поэтому промежуточное состояние может быть нормальным. Для UDP неполная datagram чаще указывает на ошибку формирования/размера.
- Сохраняйте receive buffer между чтениями.
- Проверьте конец заголовков и соответствие
Content-Lengthфактическому body. - Логируйте размер каждого read и ожидаемую общую длину.
- Не передавайте остаток как новый SIP request.
Контроль
После прихода недостающих байтов parser должен завершить то же сообщение. Если состояние не исчезает, сравните Content-Length и фактический поток для поиска потери данных.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.