Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

SIP_EARLY_MEDIA_SILENCE IP-Телефония и СКУД

Траблшутинг раннего медиа (Early Media): гудки и автоответчики (183 vs 180)

Обновлено: 24.08.2026 · Официальная документация ↗
  • Тишина вместо длинных гудков (КПВ) при исходящем звонке вплоть до момента снятия трубки.
  • Абонент не слышит голосовые сообщения оператора ('Абонент временно недоступен', 'Неверно набран номер').
  • Первые секунды приветствия автоответчика срезаются при ответе 200 OK.
  • Ранний медиапоток блокируется межсетевым экраном до подтверждения соединения.

1. Архитектурная разница между 180 Ringing и 183 Session Progress

  • 180 Ringing (без SDP): указание вызывающему телефону генерировать стандартный тональный сигнал КПВ (гудки) локально из своей памяти.
  • 183 Session Progress (с телом SDP): указание немедленно открыть RTP-сессию и воспроизводить медиапоток из сети (Early Media) — реальные гудки АТС оператора или голосовые фразы.

2. Анализ пакета 183 в дампе Wireshark

Убедитесь, что пакет 183 содержит валидный блок SDP:

SIP/2.0 183 Session Progress
Via: SIP/2.0/UDP 192.168.1.10:5060;rport;branch=z9hG4bK123
Content-Type: application/sdp

v=0
c=IN IP4 203.0.113.50
m=audio 16420 RTP/AVP 8 101

3. Принудительная генерация Early Media на Asterisk

Если оператор шлет 183, но RTP не передает (в трубке тишина), используйте команды диалплана для принудительного прогрева медиа или подстановки тонов:

# Генерация КПВ для вызывающего абонента
exten => _X.,1,Progress() ; Отправляет 183 с SDP
exten => _X.,n,Ringing()  ; Отправляет 180 Ringing
exten => _X.,n,Dial(PJSIP/${EXTEN}@trunk,,r) ; Флаг 'r' генерирует гудки принудительно

4. Настройка надежной доставки через PRACK (RFC 3262)

Если промежуточный 183 теряется на UDP, включите механизм PRACK на транке:

# Asterisk pjsip.conf
[endpoint]
100rel = yes
💡 Практика специалистов: Если мобильные абоненты жалуются на глухую тишину до ответа — проверьте сопряжение 180 и 183. Если от оператора приходит 180 с SDP, многие старые софтфоны входят в ступор, не зная, играть локальный КПВ или слушать RTP.

Частые вопросы (FAQ)

Почему флаг 'r' в команде Dial в Asterisk может мешать?

Флаг 'r' принудительно заглушает Early Media от оператора и заменяет его стандартными гудками, из-за чего абонент не услышит реальное сообщение 'Номер заблокирован' или 'Недостаточно средств'.

Что такое Early Bridge?

Это соединение медиапотоков вызывающего и вызываемого абонентов до отправки окончательного ответа 200 OK (на этапе 183 Session Progress).

Почему фаервол сбрасывает RTP-пакеты раннего медиа?

Некоторые Statefull Firewall не пропускают входящий UDP-трафик на порт, пока от внутреннего клиента не уйдет хотя бы один исходящий UDP-пакет (требуется symmetric RTP).

Что означает заголовок Require: 100rel в INVITE?

Он требует обязательной поддержки механизма надежной доставки предварительных ответов (18x) с использованием квитирования запросом PRACK.

Полезные материалы
Рекомендуем