Что такое SIP-ответ?

В процессе работы IP телефонией, облачными АТС и Оки-Токи в частности, Вы обязательно услышите или увидите что-то вроде "Мы видим SIP 404 с вашей стороны" или "Приходит 100 SIP и всё". Нет, это не всё, если вы остаетесь в недоумении.
27.02.2019

Часть 1:
Из чайников в электрочайники

То, что Вы видите как ошибку, - это последний sip-ответ, который приходит от поставщика завершения звонка. Звонок условно можно поделить на 5 этапов:

  1. Мы отправляем поставщику запрос на совершение звонка (так называемый INVITE)

  2. Мы получаем первый сип ответ "SIP 0" (пациент жив, запрос до них дошел)

  3. Мы получаем SIP 100 (поставщик нам сообщил, что соединение между оки-токи и поставщиком успешно совершено)

  4. А дальше уже по ситуации:

    • Изначально поставщик будет пытаться позвонить клиенту. И как только начнёт, то отправит нам SIP 100. Если не дозвонится за время вызова, то последним сип-ответом будет именно SIP18X : Нет ответа (SIP 180 или SIP 183).

    • Далее. бывает и Занято (SIP 486), хотя в современном мире многоканальной связи это случается все реже.

    • Чаще всего если что-то не так, то этому соответствует какая-то ошибка связи (403, 404, 503, 486, 480 и так далее), то она и будет последним ответом. (Примечание: по SIP ответу нельзя ничего сказать о качестве связи.)

    • Если клиент возьмет трубку, то последним его сип-ответом будет SIP 200.

  5. В случае успешного соединения (SIP 200), поставщик связи нам сообщает о том, что абонент взял трубку (в сип-телефонии это называется "connect")

  6. При завершения разговора, в техническом логе звонка мы можем определить сторону, завершившую звонок. Завершение со стороны Оки-Токи обозначается как "kill", а завершение со стороны поставщика или абонента - "finish".

Вот и все что нужно знать для начала. Резюме:

  • SIP-ответы при звонках - это не сообщения (или ошибки) Оки-Токи, а последние ответы от поставщика и только он точно может назвать точную причину их появления как результата звонка;
  • Есть причина, по которой мы отбиваем звонок ошибкой - это SIP9ХХ - или "Направление заблокировано". Ошибка происходит в случае, когда оператор совершает звонок на номер с префиксом, который не прописан в разрешенных направлениях подключенного SIP-шлюза (поставщика);
  • SIP-ответы сообщают о состоянии соединения и не содержат информацию о его качестве.

Если SIP 180/183 или SIP 200 могут и не вызвать дополнительных вопросов, то что означают остальные? Смотрите Часть 2.