Home » Asterisk » Не передаются нажатия клавиш в IVR в asterisk

Не передаются нажатия клавиш в IVR в asterisk

Столкнулся с неожиданной проблемой при подключении нового транка от MANGO. При входящем звонке абонент попадает в голосовое меню, где ему проигрывается приветствие. В это время можно набрать внутренний номер сотрудника и сразу позвонить ему, не дожидаясь ответа секретаря. Так вот набор внутреннего номера как раз и не работал, хотя с другими транками все было в порядке.

Теоретический курс по основам сетевых технологий. Позволит системным администраторам упорядочить и восполнить пробелы в знаниях. Цена очень доступная, есть бесплатный доступ. Все подробности по . Можно пройти тест на знание сетей, бесплатно и без регистрации.

Вообще, Манго достаточно странная система. Если у других sip операторов ты покупаешь номер, и тебе присылают учетки и пример конфигурации под asterisk, то тут не все так просто. По факту ты покупаешь услугу виртуальной АТС и тебе дают к ней доступ. А дальше ты уже сам все настраиваешь в ней. По идее, это даже удобно и круто, но не совсем. Например, по-умолчанию, после покупки нового номера и создания первого пользователя, если вы захотите позвонить на него, то попадете на факс!!! Да, по-умолчанию у них так устроено. Если руками не указать принимать звонок новому пользователю, то примет его факс. Сам бы я не догадался, позвонил в техподдержку, там объяснили.

Рассказать я хотел не об этом. При входящих звонках от манго у меня не работал тональный набор. Причем я не сразу понял, что проблема именно в нем. В логе астера было странное предупреждение:

WARNING[24680][C-0000000f]: chan_sip.c:18071 get_rdnis: Huh?  Not an RDNIS SIP header (tel:74995185726)?

Я грешил на него и долго пытался понять, что это такое и с чем связано. Но реально не смог понять до конца, о чем тут идет речь и в чем проблема. Полный лог больше ничего подозрительного не показывал и это навело на мысль, что причина все же не в этом сообщении. Смущало то, что в астериске вообще не было никакой реакции на тоновый набор, как-будто сигнал просто не доходил. Как только я это понял, сразу стало очевидно, куда копать.

По факту у меня просто не передавался через транк тональный сигнал, или dtfm. Стал смотреть, какие настройки пира за это отвечают. Сразу же нашел - dtmfmode. В манговской wiki написано:

Метод передачи DTMF - INBAND, RFC_2833 (не рекомендуется)

Я человек не глупый, фразу не рекомендуется понимаю буквально и не использую. В итоге у меня стояло dtmfmode=inband. После того, как поменял на rfc2833 все заработало. В конечном счете у меня работает Манго (Mango office) с asterisk с такими настройками пира:

[74995185726]
type=peer
secret=password
username=user1
host=vpbx400091290.mangosip.ru
fromuser=user1
fromdomain=vpbx400091290.mangosip.ru
insecure=invite
useragent=JopAster
directmedia=yes
nat=force_rport
context=call-in-mango
dtmfmode=rfc2833
qualify=300
disallow=all
allow=alaw

Они не соответствуют полностью тому, что рекомендуется у них в примерах конфигурации астериск - http://wiki.mangotele.com/index.php/Asterisk. Но тем не менее, все работает нормально.

Для отладки и тестирования работы voip я рекомендую сервис Zadarma. Плюс его в том, что после регистрации вы получите настройки пира для внутренней сети оператора. И внутри этой сети вы можете бесплатно звонить. Например, я одного пира регистрирую на sip клиенте смартфона и с него звоню на второй аккаунт, пир от которого настроен в астериске. Таким образом эмулирую внешний звонок. Удобно отлаживать различные конфигурации звонков, не требуя платного подключения.

Другие материалы по asterisk:

Онлайн курс по Linux

Если вы хотите стать специалистом по отказоустойчивым виртуальным и кластерным средам, рекомендую познакомиться с онлайн-курсом Администратор Linux. Виртуализация и кластеризация в OTUS. Курс не для новичков, для поступления нужны хорошие знания по Linux. Обучение длится 5 месяцев, после чего успешные выпускники курса смогут пройти собеседования у партнеров. Что даст вам этот курс:
  • Умение строить отказоустойчивые кластера виртуализации для запуска современных сервисов, рассчитанных под высокую нагрузку.
  • Будете разбираться в современных технологиях кластеризации, оркестрации и виртуализации.
  • Научитесь выбирать технологии для построения отказоустойчивых систем под высокую нагрузку.
  • Практические навыки внедрения виртуализации KVM, oVirt, Xen.
  • Кластеризация сервисов на базе pacemaker,k8s, nomad и построение дисковых кластеров на базе ceph, glaster, linstore.
Проверьте себя на вступительном тесте и смотрите подробнее программу по .

Помогла статья? Подписывайся на telegram канал автора

Анонсы всех статей, плюс много другой полезной и интересной информации, которая не попадает на сайт.

Автор Zerox

Zerox
Владимир, системный администратор, автор сайта. Люблю настраивать сервера, изучать что-то новое, делиться знаниями, писать интересные и полезные статьи. Открыт к диалогу и сотрудничеству. Если вам интересно узнать обо мне побольше, то можете послушать интервью. Запись на моем канале - https://t.me/srv_admin/425 или на сайте в контактах.

One comment

  1. Аватар

    Здравствуйте, подскажите пожалуйста, у меня провайдер МТС.
    Поддерживаемые кодеки: G.729, G711A-Law, G.711Mu-Law
    Метод передачи частотных сигналов DTMF: RFC-2833, INFO
    В итоге что получается: если я ставлю dtmfmode=info, то любые нажатия на клавиши терминируют звонок, если я ставлю dtmfmode=rfc2833, то никакой реакции не происходит вообще. Вместе, как я понял их вообще нельзя использовать (например dtmfmode=info,rfc2833).
    Перерыл весь инет, в итоге запутался, почему у меня ни в том, ни в другом случае dtmf не работает. В логах конкретики никакой не нашёл...
    Буду рад любым советам...

Добавить комментарий

Ваш адрес email не будет опубликован.

Нажимая кнопку "Отправить комментарий" Я даю согласие на обработку персональных данных.