SIP Error 603 Decline: ручной сброс вызова абонентом и черные списки
- Вызов мгновенно завершается статусом
603 Declineпосле нажатия кнопки отбоя вызываемым абонентом. - Звонки с определенных номеров (Caller ID) не проходят, сразу возвращая 603 отбой.
- Интеграции со СКУД или домофонами (SIP Intercom) сбрасывают вызов при отклонении открытия двери.
- Маршрутизация вызова через транк прерывается без попытки перехода на резервного провайдера.
1. Природа статуса SIP 603 Decline
Код 603 Decline означает, что конечный терминал получил запрос, уведомил пользователя, но пользователь (или локальное программное правило) явно отклонил данный вызов (нажал кнопку 'Отклонить / Reject / Decline'). Как и любой 6xx код, он информирует АТС о нежелании принимать вызов на любых других устройствах пользователя.
2. Анализ журнала вызовов в sngrep / Wireshark
sngrep -c -d any "603 Decline"Пример дампа пакета:
SIP/2.0 603 Decline
Via: SIP/2.0/UDP 10.10.10.1:5060;branch=z9hG4bK4f7a
From: "Customer" ;tag=as7b1
To: ;tag=789a6c
Call-ID: 4129b8c19a0@10.10.10.1
CSeq: 102 INVITE
Reason: Q.850;cause=21;text="Call rejected" 3. Проверка черных списков на конечном оборудовании
Если вызовы сбрасываются автоматически без участия человека:
- На IP-телефоне: проверьте разделы Contacts -> Blacklist или Block Anonymous Calls.
- На SIP-домофоне / СКУД: проверьте White-list разрешенных номеров инициации открытия замка (DTMF Relay).
- На софтфонах (MicroSIP, Zoiper, Linphone): отключите опцию «Reject calls from unregistered domains».
4. Переопределение поведения 603 в диалплане Asterisk
Если бизнес-логика требует при нажатии кнопки 'Сброс' переводить клиента на другого оператора вместо полного разрыва связи:
[outbound-route]
exten => _89XXXXXXXXX,1,NoOp(Исходящий вызов на ${EXTEN})
same => n,Dial(PJSIP/${EXTEN}@provider_primary,30)
same => n,GotoIf($["${HANGUPCAUSE}" = "21"]?try_backup:hangup)
same => n(try_backup),NoOp(Вызов отклонен 603/Cause 21 - пробуем резерв)
same => n,Dial(PJSIP/${EXTEN}@provider_secondary,30)
same => n(hangup),Hangup() Частые вопросы (FAQ)
Какой код Q.850 соответствует ответу SIP 603 Decline?
SIP 603 мапится в Q.850 Cause Code 21 (Call rejected).
Почему оператор связи возвращает 603 Decline на наш исходящий транк?
Операторы часто возвращают 603, если номер звонящего (CallerID A-number) заблокирован системой антифрода, не прошел проверку в базе данных перенесенных номеров (MNP) или не принадлежит вашей номерной емкости.
Можно ли настроить переадресацию на голосовую почту при ответе 603?
Да. В диалплане АТС необходимо перехватить hangup cause 21 и вместо команды Hangup() отправить вызов в приложение VoiceMail() или Queue().
Чем отличается 603 Decline от 403 Forbidden?
403 Forbidden сообщает об ошибке аутентификации/авторизации или нехватке прав на уровне сервера/аккаунта. 603 Decline — это сознательный отказ конкретного абонента или его локального фильтра принять звонок.