Страница 1 из 1

sms уведомление если клиент броасет трубку

Добавлено: 23 авг 2020, 10:00
spider
подскажите как правильно прописать условие. значение оценки имею ввиду если клиенту предлагают выбрать от 1 до 5 но он просто бросает трубку
[opinion-rus]
exten => 1,1,NoOp(Client's service rate rus)
exten => 1,n,Read(digit,/var/lib/asterisk/sounds/ivr/rus_opinion,1,,2)
exten => 1,n,NoOp(Выбрана оценка ${digit})
exten => 1,n,MYSQL(Connect connid localhost **** **** asterisk)
exten => 1,n,MYSQL(Query resultid ${connid} INSERT INTO opinion (id, callerid, exten, queues, opinion, datetime) VALUES (NULL, '${CALLID}', '${MEMBERINTERFACE}', '${QUEUENAME}', '${digit}', '${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M)}'))
вот здесь надо выставить условие если значение оценки никакое то перейди в exten => 2 и отправь смс
exten => 2,n,System(python3 /root/send_sms.py smstraffic ${CALLID} ticket_price)
exten => 1,n,Playback(/var/lib/asterisk/sounds/ivr/rus_thank_you)
exten => 1,n,Hangup()
exten => 0,n,MYSQL(Disconnect ${connid})
exten => 0,n,Hangup()

Re: sms уведомление если клиент броасет трубку

Добавлено: 23 авг 2020, 12:48
ded
Лучше вместо exten => 1,n,MYSQL(Connect connid localhost **** **** asterisk)
exten => 1,n,MYSQL(Query resultid ${connid} INSERT написать AGI скрипт на эту тему и вызывать
exten => 1,n,AGI(
А когда человек просто бросает трубку, то обработка экстеном
exten => h,1,SendText(что-нить посылаем)
exten => h,n,Hangup

Re: sms уведомление если клиент броасет трубку

Добавлено: 23 авг 2020, 15:24
BorisTheBlade
Как-то так,

Код: Выделить всё

[opinion-rus]
...
exten => 1,n,Set(Selection=1)
...
exten => 2,n,Set(Selection=2)

exten => h,1,GotoIf($[${LEN(${Selection})}=0]?SendSMS:NeSendSMS)

Re: sms уведомление если клиент броасет трубку

Добавлено: 23 авг 2020, 16:40
spider
вот так в общем работает. только как можно правильно сделать. после h плэйбек уже не проигрывается ведь. как лучше это место расписать?
exten => 1,1,NoOp(Client's service rate rus)
exten => 1,n,Read(digit,/var/lib/asterisk/sounds/ivr/rus_opinion,1,,2)
exten => 1,n,NoOp(Selected ${digit})
exten => 1,n,MYSQL(Connect connid localhost *** *** ***)
exten => 1,n,MYSQL(Query resultid ${connid} INSERT INTO opinion (id, callerid, exten, queues, opinion, datetime) VALUES (NULL, '${CALLID}', '${MEMBERINTERFACE}', '${QUEUENAME}', '${digit}', '${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M)}'))
exten => h,1,GotoIf($[${LEN(${digit})} = 1]?3:2)
same => n,System(python3 /root/send_sms.py smstraffic ${CALLID} ticket_price)
same => n,Playback(/var/lib/asterisk/sounds/ivr/rus_thank_you)
same => n,Hangup()
same => n,MYSQL(Disconnect ${connid})
same => n,Hangup()

Re: sms уведомление если клиент броасет трубку

Добавлено: 23 авг 2020, 17:56
ded
Если человек положил трубку, как он услышит rus_thank_you?

Re: sms уведомление если клиент броасет трубку

Добавлено: 23 авг 2020, 17:59
spider
я хотел сделать условие: если клиент кладет трубку то отправляется смс, если все таки выбрал оценку то проигрывается запись. в этом и состоял вопрос. я спросил как это подкорректировать

Re: sms уведомление если клиент броасет трубку

Добавлено: 23 авг 2020, 18:56
BorisTheBlade
сразу после Read :
exten => 1,n,Playback(bla-bla)