ВидеоКонф(ВКС)  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Падает астериск при получении dtmf

Новичком считается только что прочитавший «Астериск - будущее телефонии»
http://asterisk.ru/knowledgebase/books
и пытающийся сделать большее

Модераторы: april22, Zavr2008

Падает астериск при получении dtmf

Сообщение Mon4ik » 11 янв 2022, 19:09

Добрый вечер! Ситуация следующая. Имеем диалплан
[IVR]
exten => s,1,Answer()
same => n,Background(ivr/hello)
same => n,Background(ivr/menu)
same => n,Waitexten(6)
exten => 1,1,Dial(SIP/vladimir&SIP/ivan&SIP/denis,180,tr)
exten => 2,1,Dial(SIP/anton,180,tr)
exten => 3,1,Dial(SIP/kirillv&SIP/igor,180,tr)
exten => t,1,Dial(SIP/vladimir/ivan&SIP/denis,180,tr)
exten => i,1,Dial(SIP/vladimir/ivan&SIP/denis,180,tr)


При звонке на номер все корректно проигрывается, но при нажатии на любою кнопку на телефоне, астериск аварийно завершает работу.
Asterisk 13.38.3

В логах ничего интересного не пишет.
-- Executing [s@IVR:2] BackGround("Local/s@IVR-00000000;2", "ivr/hello") in new stack
-- Playing 'ivr/hello.alaw' (language 'en')
tver-gw*CLI>
Disconnected from Asterisk server
Asterisk cleanly ending (0).

Проверяли и с inband и с rfc2833
В чем может быть проблема?
Mon4ik
 
Сообщений: 5
Зарегистрирован: 11 янв 2022, 19:00

Re: Падает астериск при получении dtmf

Сообщение ded » 12 янв 2022, 12:06

1) Желательно смотреть с дебагом DTMF (Google => Как включить дебаг DTMF в Астриске?)

2) у вас два файла по сценарию воспроизводятся последовательно -
same => n,Background(ivr/hello)
same => n,Background(ivr/menu)

а падает после первого
-- Executing [s@IVR:2] BackGround("Local/s@IVR-00000000;2", "ivr/hello") in new stack
-- Playing 'ivr/hello.alaw' (language 'en')

Если ничего не нажимать - воспроизводится ivr/menu ?
Думаю, что нет, упадёт. Думаю его у вас просто нету, или битый, или не в том формате,
ded
 
Сообщений: 15801
Зарегистрирован: 26 авг 2010, 19:00

Re: Падает астериск при получении dtmf

Сообщение Vlad1983 » 12 янв 2022, 12:10

попробовать заменить
Код: выделить все
same => n,Background(ivr/hello)
same => n,Background(ivr/menu)

на
Код: выделить все
same => n,Background(ivr/hello&ivr/menu)
ЛС: @rostel
Vlad1983
 
Сообщений: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: Падает астериск при получении dtmf

Сообщение Mon4ik » 12 янв 2022, 12:48

Добрый день! Отладка DTMF включена, но ничего не пишет. Ради интереса пробовали оставить только один бэк
same => n,Background(ivr/menu)
, но ничего не поменялось.
Все беки проигрываются, если ничего не нажимать, то по таймауту переходит в нужную группу
exten => t,1,Dial(SIP/vladimir/ivan&SIP/denis,180,tr)
Mon4ik
 
Сообщений: 5
Зарегистрирован: 11 янв 2022, 19:00

Re: Падает астериск при получении dtmf

Сообщение ded » 12 янв 2022, 15:49

Ничего не пишет - неверно включена отладка, не сделан
CLI> logger reload

Увеличивайте вербозность и дебаг
CLI> core set verbose 10
CLI> core set debug 10
выводите сообщения debug тоже в CLI через логгер.
ded
 
Сообщений: 15801
Зарегистрирован: 26 авг 2010, 19:00

Re: Падает астериск при получении dtmf

Сообщение Mon4ik » 13 янв 2022, 12:06

Доброе утро! Логирование сделали. Может я чего-то не понимаю, но ничего в логах связанного с дтмф не видно.
Код: выделить все
Connected to Asterisk 13.38.3 currently running on tver-gw (pid = 23087)
tver-gw*CLI> dialplan reload
Dialplan reloaded.
  == Setting global variable 'CONSOLE' to 'Console/dsp'
  == Setting global variable 'IAXINFO' to 'guest'
  == Setting global variable 'TRUNK' to 'DAHDI/G2'
  == Setting global variable 'TRUNKMSD' to '1'
    -- Time to scan old dialplan and merge leftovers back into the new: 0.000200                                                                              sec
    -- Time to restore hints and swap in new dialplan: 0.000025 sec
    -- Time to delete the old dialplan: 0.000512 sec
    -- Total time merge_contexts_delete: 0.000737 sec
    -- pbx_config successfully loaded 18 contexts (enable debug for details).
tver-gw*CLI> logger reload
Asterisk Queue Logger restarted
tver-gw*CLI> core set verbose 10
Console verbose was 4 and is now 10.
tver-gw*CLI> core set debug 10
Core debug was OFF and is now 10.
  == Using SIP RTP CoS mark 5
       > 0x7f85d4023630 -- Strict RTP learning after remote address set to: 193.105.11.99:54568
    -- Executing [398025@town-in:1] Dial("SIP/tver-398025-00000016", "Local/s@IVR") in new stack
    -- Called Local/s@IVR
    -- Executing [s@IVR:1] Answer("Local/s@IVR-00000000;2", "") in new stack
    -- Local/s@IVR-00000000;1 answered SIP/tver-398025-00000016
    -- Channel Local/s@IVR-00000000;1 joined 'simple_bridge' basic-bridge <954396cd-5794-49f6-9921-f25d3e0c542a>
    -- Channel SIP/tver-398025-00000016 joined 'simple_bridge' basic-bridge <954396cd-5794-49f6-9921-f25d3e0c542a>
    -- Executing [s@IVR:2] BackGround("Local/s@IVR-00000000;2", "ivr/hello") in new stack
    -- <Local/s@IVR-00000000;2> Playing 'ivr/hello.alaw' (language 'en')
       > 0x7f85d4023630 -- Strict RTP switching to RTP target address 193.105.11.99:54568 as source
       > 0x7f85d4023630 -- Strict RTP learning complete - Locking on source address 193.105.11.99:54568
    -- Executing [s@IVR:3] BackGround("Local/s@IVR-00000000;2", "ivr/menu") in new stack
    -- <Local/s@IVR-00000000;2> Playing 'ivr/menu.alaw' (language 'en')
tver-gw*CLI>
Disconnected from Asterisk server
Asterisk cleanly ending (0).
Executing last minute cleanups
Mon4ik
 
Сообщений: 5
Зарегистрирован: 11 янв 2022, 19:00

Re: Падает астериск при получении dtmf

Сообщение Vlad1983 » 13 янв 2022, 13:10

проверьте загружен ли модуль res_timing_timerfd
Код: выделить все
asterisk -rx "module show"| grep res_timing_timerfd
ЛС: @rostel
Vlad1983
 
Сообщений: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: Падает астериск при получении dtmf

Сообщение ded » 13 янв 2022, 13:23

1) Непонятно, зачем IVR вызывать в локальном канале? "Local/s@IVR
Проще обрабатывать его в том же town-in
И попробуйте принять входящий в приложение Echo, и там понажимать кнопки чтобы увидеть логгирование dtmf в логе:
Код: выделить все
[town-in]
exten => 398025,1,Answer()
exten => 398025,n,Echo()
exten => 398025,n,Hangup()

2) Если всё ОК - перенести ваш IVR в контекст town-in
Код: выделить все
[town-in]
exten => 398025,1,Answer()
same => n,Background(ivr/hello)
same => n,Background(ivr/menu)
same => n,Waitexten(6)
exten => 1,1,Dial(SIP/vladimir&SIP/ivan&SIP/denis,180,tr)
exten => 2,1,Dial(SIP/anton,180,tr)
exten => 3,1,Dial(SIP/kirillv&SIP/igor,180,tr)
exten => t,1,Dial(SIP/vladimir/ivan&SIP/denis,180,tr)
exten => i,1,Dial(SIP/vladimir/ivan&SIP/denis,180,tr)

Более подробный дебаг смотреть в файле /var/log/asterisk/full
ded
 
Сообщений: 15801
Зарегистрирован: 26 авг 2010, 19:00

Re: Падает астериск при получении dtmf

Сообщение Mon4ik » 13 янв 2022, 17:04

Попробовали demo контексте

[demo]

exten => 600,1,Playback(demo-echotest) ; Let them know what's going on
exten => 600,n,Echo() ; Do the echo test
exten => 600,n,Playback(demo-echodone) ; Let them know it's over
exten => 600,n,Goto(s,6) ; Start over

exten => 650,1,Answer()
same => n,Background(ivr/hello)
same => n,Background(ivr/menu)
same => n,Waitexten(6)
exten => 1,1,Dial(SIP/vladimir&SIP/ivan&SIP/denis,180,tr)
exten => 2,1,Dial(SIP/anton,180,tr)
exten => 3,1,Dial(SIP/kirill.k&SIP/igor,180,tr)
exten => t,1,Dial(SIP/vladimir&SIP/ivan&SIP/denis,180,tr)
exten => i,1,Dial(SIP/vladimir&SIP/ivan&SIP/denis,180,tr)


Всё точно также, падает...
В консоли ничего нет

asterisk -rx "module show"| grep res_timing_timerfd - Пусто. Это может быть причиной падения?
Mon4ik
 
Сообщений: 5
Зарегистрирован: 11 янв 2022, 19:00

Re: Падает астериск при получении dtmf

Сообщение Mon4ik » 13 янв 2022, 17:49

Друзья, всем большое спасибо за помощь!
Помогла установка модуля res_timing_timerfd
Mon4ik
 
Сообщений: 5
Зарегистрирован: 11 янв 2022, 19:00


Вернуться в Вопросы новичков

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 35

© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH