SIP response codes

Протокол SIP/2.0 определяет шесть типов кодов ответа:
1xx: Промежуточные коды — подтверждают прием запроса, продолжается его обработка;
Промежуточные коды ответа, еще называемые информационными сообщениями, информируют, что сервер, который получил запрос, продолжает выполнять какие-либо действия и на данный момент не имеет окончательного ответа на полученный запрос. Сервер отправляет 1xx ответ, если приблизительное время выполнения запроса, для получения окончательного результата, займет у него больше чем 200 ms. Обратите внимание, что отправка сообщений с кодом ответа 1xx – не гарантируется. Получение сообщения с этим кодом не заставляет клиента отправлять сообщение ACK. Сообщения с промежуточным кодом ответа (1xx) МОГУТ содержать тело сообщения, включая дескриптор сеанса.
2xx: Успешное выполнение — запрос был успешно принят, распознан и подтвержден;
3xx: Переадресация — для завершения выполнения запроса должны быть предприняты дополнительные действия;
4xx: Ошибка клиента — в запросе содержаться ошибки синтаксиса или он не может быть обработан данным сервером;
5xx: Ошибка сервера — сервер не смог выполнить правильно сформированный запрос;
6xx: Глобальная ошибка — запрос не может быть выполнен ни одним сервером.
Рассмотрим их более детально:

1xx = информационные ответы
100 Trying – запрос обрабатывается
180 Ringing – местоположение вызываемого пользователя определено. Выдан сигнал о входящем вызове
181 Call is Being Forwarded – прокси,сервер переадресует вызов к другому пользователю
182 Call is Queued – вызываемый абонент временно не доступен, вызов поставлен в очередь
183 Session Progress – используется для того, чтобы заранее получить описание сеанса информационного обмена от шлюзов на пути к вызываемому пользователю
199 Early Dialog Terminated – используется UAS для оповещения вышестоящим SIP участникам (включая UAC) что ранее начатый диалог прерван (RFC 6228)

2xx = ответы о завершении запроса
200 OK – успешное завершение
204 No Notification – запрос был успешным, но соответствующий ответ не будет получен(RFC 5839)

3xx = сообщения о переадресации
300 Multiple Choices – указывает несколько SIP-адресов, по которым можно найти вызываемого пользователя
301 Moved Permanently – вызываемый пользователь больше не находится по адресу, указанному в запросе
302 Moved Temporarily – пользователь временно сменил местоположение
305 Use Proxy – вызываемый пользователь не доступен непосредственно, входящий вызов должен пройти через прокси-сервер
380 Alternative Service – запрошенная услуга недоступна, но доступны альтернативные услуги

4xx = невозможность обработать запрос
400 Bad Request – запрос не понят из-за синтаксических ошибок в нем, ошибка в сигнализации, скорее всего что-то с настройками оборудования
401 Unauthorized – нормальный ответ сервера о том, что пользователь еще не авторизировался; обычно после этого абонентское оборудование отправляет на сервер новый запрос, содержащий логин и пароль
401 Expired Authorization – время регистрации истекло
402 Payment Required – требуется оплата (зарезервирован для использования в будущем)
403 No Such User – нет такого пользователя, ошибка в номере, логине или пароле
403 User Disabled – пользователь отключен
403 Wrong Guess – ошибка в пароле
403 Conflict – такой SIP-номер уже используется
403 Forbidden – абонент не зарегистрирован
403 Empty Route Set – нет ни одного шлюза в роутинге
403 Caller Not Registered – нет такого пользователя
403 Out of Look-Ahead Retries – перебор узлов закончен
403 Invalid Phone Number – нет такого направления
403 No Money Left on RFC Account – на счету нет денег для совершения звонка
404 Not found – вызываемый абонент не найден, нет такого SIP-номера
404 Undefined Reason – неопределенное направление
404 Unknown user account – логин и пароль не найдены
404 Out of Order – в заявке на маршрутизацию по этому направлению нет ни одного шлюза, проверьте настройку маршрутизации по этому направлению.
405 Method Not Allowed – метод не поддерживается, может возникать если пользователь пытается отправлять голосовую почту и т.п.
406 No codecs match – неправильная конфигурация кодеков
406 Not Acceptable – Устройство которому направлен запрос, может сгенерировать ответ, но он запрещен в Accept header(неприемлемый запрос )
407 Proxy Authentication Required – необходима аутентификация на прокси-сервере
408 Request Timeout – время обработки запроса истекло: Абонента не удалось найти за отведенное время
408 Login timed out – за отведенное время не получен ответ от сервера на запрос авторизации
410 Gone (Отсутствует): Пользователь существовал, но в данный момент недоступен.
412 Conditional Request Failed – данное условие не выполняется(RFC3903)
413 Request Entity Too Large – размер запроса слишком велик для обработки на сервере
414 Request-URI Too Long – Запрашиваемый URI слишком длинный
415 No Media – звонок совершается неподдерживаемым кодеком
416 Unsupported Scheme – сервер не может обработать запрос из-за того, что схема адреса получателя ему непонятна
417 Unknown Resource-Priority – была метка resource-priority, но не было Resource-Priority header(RFC4412)
420 Bad extension – неизвестное расширение: Сервер не понял расширение протокола SIP
421 Extension Required – в заголовке запроса не указано, какое расширение сервер должен применить для его обработки
422 Session Interval Too Small полученный запрос содержит в поле Session-Expires значение которое меньше минимального таймера(RFC4028)
423 Interval Too Brief – слишком короткое время действия ресурса
424 Bad Location Information – Содержание location в запросе имеет неправильную форму.(RFC6442)
428 Use Identity Header – Политика сервера требуют заголовок Identity,и не был предоставлен(RFC4474)
429 Provide Referrer Identity – Сервер не получил Referred-By в запросе.(RFC3892)
430 Flow Failed – Спец поток к UA неудачен, но другие потоки могут быть успешны. Этот запрос должен исп между проксями и не должен быть виден конечным пользователям. (но если видим, должен трактоваться как ответ 400 Bad Request).(RFC5626)
433 Anonymity Disallowed – запрос отклонен потому что он анонимный.(RFC5079)
436 Bad Identity-Info – Поле Identity-Info запроса и URI схема не могут различаться!(RFC4474)
437 Unsupported Certificate – сервер не может проверить сертификат для домена, которым подписан запрос. (RFC4474)
438 Invalid Identity Header – сервер получил правильный сертификат, которым был подписан запрос, но не может проверить сам сертификат. (RFC4474)
439 First Hop Lacks Outbound Support – Первый исходящий прокси сервер на котором пытается зарегистрироваться пользователь не поддерживает “outbound” фичу по RFC 5626, хотя registrar поддерживает.
470 Consent Needed – источник запроса не имеет прав от получателя на такой запрос(RFC 5360)
480 Invalid Phone Number – неправильный номер телефона, не соответствует к-во цифр или неправильный код страны или города
480 Destination Not Found In Client Plan – направления нет в тарифном плане абонента
480 Wrong DB Response – проблемы с центральной базой сети
480 DB Timeout – проблемы с центральной базой сети
480 Database Error – проблемы с центральной базой сети
480 Codec Mismatch – несоответствие кодеков
480 No Money Left on RFC Account – нет денег на счету, обратитесь к администратору сети!!!
480 Empty Route Set – пустое направление, нет принимающих шлюзов
480 No money left – недостаточно денег на счете
480 Temporarily Unavailable – временно недоступное направление попробуйте позвонить позже
481 Call Leg/Transaction Does Not Exist – сервер получил запрос, который не относится ни к одному диалогу или транзакции
482 Loop Detected – петля маршрутизации
483 Too Many Hops – запрос на своем пути прошел через большее число прокси-серверов, чем разрешено в поле Max-Forwards
484 Address Incomplete – принят запрос с неполным адресом
485 Ambiguous – адрес вызываемого пользователя не однозначен
486 Busy Here – абонент занят
487 Request Terminated – запрос отменен, с помощью bye или cancel
488 Not Acceptable Here – какой то параметр описания сессии или Request-URI неприменим
488 Codec Mismatch -нет шлюзов с поддержкой заказанного кодека
488 Private IP Address – адрес RTP media из сетей RFC1918
489 Bad Event – Сервер не понял событие в поле Event.
491 Request Pending – запрос поступил в то время, когда сервер еще не закончил обработку другого запроса, относящегося к тому же диалогу.
493 Undeciperable – сервер не в состоянии подобрать ключ дешифрования: невозможно декодировать тело S/MIME сообщения
494 Security Agreement Required – Сервер получил запрос, для установления режима безопасности, ответ содержит список подходящих режимов безопасности RFC3329 или digest authentication.

5xx = ошибки сервера
500 Internal Server Error – внутренняя ошибка сервера
500 DB Timeout – нет ответа от базы данных
500 Database Error – то же самое, но в другой момент
500 Wrong DB Response – неправильный ответ базы данных, редкая ошибка
500 Undefined Reason – неопределенная причина
500 account has been moved to a remote system – аккаунт перенесен в удаленную систему (дословно)
501 Not Implemented: (Метод не поддерживается) Запрашиваемый по протоколу SIP метод не распознан данным сервером, в отличии от 405 ошибки, где метод запрещен
501 Method Not Supported Here – в сервере не реализованы какие-либо функции, необходимые для обслуживания запроса: Метод запроса SIP не поддерживается
502 Bad Gateway – сервер, функционирующий в качестве шлюза или прокси-сервера, принимает некорректный ответ от сервера, к которому он направил запрос
503 Service Unavailable – сервер не может в данный момент обслужить вызов вследствие перегрузки или проведения технического обслуживания, поле “Retry-After” указывает через сколько клиент может повторить свой запрос.
504 Server time-out – сервер не получил ответа в течение установленного промежутка времени от сервера, к которому он обратился для завершения вызова
505 SIP Version not supported – версия не поддерживается: Сервер не поддерживает эту версию протокола SIP
513 Message too big – сервер не в состоянии обработать запрос из-за большой длины сообщения
580 Precondition Failure – Сервер не может или не желает, принимать некоторые ограничения в запросе (RFC3312)

6xx = глобальная ошибка
600 Busy everywhere – вызываемый пользователь занят и не желает принимать вызов в данный момент, в отличии от 486 ошибки, вызываемая сторона знает что нет альтернативных путей обработки звонка(например голосовая почта)
603 Decline – вызываемый пользователь не желает принимать входящие вызовы, или не может этого сделать, и вызываемый пользователь не знает альтернативного пути обработки звонка(например голосовая почта)
604 Does Not Exist Anywhere – вызываемого пользователя не существует
606 Not Acceptable – соединение с сервером было установлено, но отдельные параметры, такие как тип запрашиваемой информации, полоса пропускания, вид адресации недопустимы.

http://wiki.sipnet.ru/index.php/SIP_%D0%BE%D1%82%D0%B2%D0%B5%D1%82%D1%8B_%D0%B8_%D0%B8%D1%85_%D0%B7%D0%BD%D0%B0%D1%87%D0%B5%D0%BD%D0%B8%D1%8F
http://voip.rus.net/tiki-index.php?page=SIP+Response+class6
http://en.wikipedia.org/wiki/List_of_SIP_response_codes

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *