AF
Asterisk Forum
обсуждения телефонии, VoIP и IP-PBX
12разделов
5 423тем
34 385сообщений
← К списку тем

IVR соединение входящего звонка с внешним номером

Newbies/FAQ Forum 2 сообщений -
#1

нужно извне(например с мобильного) набрать номер, который приходит на Asterisk с IVR, прослушать контент и его же отправить.

пока что, смог добится что после нажатия на 8 из IVR entries, переходит на контекст из файла extensions_custom.conf.

вот сырой контекст данного файла:

[afterpressing8_tabrik]
exten=>8,1,Set(home="/var/lib/asterisk/sounds/custom")
exten=>8,n,Answer()
exten=>8,n,Wait(1)
exten=>8,n,Background(${home}/ivr_tabrik5) (наберите номер в конце решетка на который хотите отправить поздравление)
exten=>8,n,Read(digits, ,12)
exten=>8,n,Wait(1)
exten=>8,n,Set(CHANNEL(language)=ru)
exten=>8,n,Background(${home}/ivr_tabrik6) (номер на который вы отправляете: )
exten=>8,n,Saydigits(${digits}) (номер на который отправляется)
exten=>8,n,Read(digit, ,1)
exten=>8,n,Gotoif($[${digit=1}?10:20])
exten=>8,10,Dial()

сейчас переход есть по 8, но диалплан пока полностью не рабочий.

хочется на данном моменте реализовать чтобы после" введите номер телефона в конце с решеткой". насколько я понял нужно использовать команду read().

но, после предложения ввести номер телефона с решеткой в конце, у меня проигрывается начало ivr из другого контекста. если не набирать номер то проигрывается то что после команды read(), т.е. exten=>8,n,Background(${home}/ivr_tabrik6)

прошу совета,
с премногим благодарством,
#2

Совет тут может быть только один: прочитать про основы dialplan`а в Asterisk, т.к. есть явное непонимание.

kamilchik писал(а):
exten=>8,10,Dial()

Вы уверены что оно тут должно быть ? Посчистайте кол-во "n" до этого.
Затем зайдите в CLI и выполните:
Код:
dialplan show 8@afterpressing8_tabrik

и посмотрите каким выглядит ваш контекст для *

Почему Dial вызывается без каких либо параметров ? Asterisk cmd Dial

kamilchik писал(а):
exten=>8,n,Gotoif($[${digit=1}?10:20])

Вы точно понимаете что производится в этой строке ? Asterisk cmd GotoIf
В вашем контексте нет лейблов 10 и/или 20.