Страница 2 из 2
Re: FreePBX выполнение скрипта из Context from-internal
Добавлено: 09 авг 2019, 15:30
ded
artemkol писал(а):Может я плохо объяснил,
да уж...
Три-четыре строчки диал-плана в контексте [from-trunk-short-number]
Код: Выделить всё
exten => 9090,1,Answer() ; где 9090 - ваш короткий номер
exten => 9090,n,NoOp(${CALLERID(all)})
exten => 9090,n,EAGI(dial-out,QUEUE,${CALLERID(num)}) ; где QUEUE - номер очереди, ${CALLERID(num)} - номер клиента, который позвонил
который помещаем в extensions_custom.conf и указываем этот контекст транку в качестве входящего.
dial-out.php уж напишите сами, он должен породить call file на основе переданных аргументов и поместить его в /var/spool/asterisk/outgoing
Re: FreePBX выполнение скрипта из Context from-internal
Добавлено: 09 авг 2019, 17:40
artemkol
Так, еще раз, то ли я не понимаю, то ли не могу нормально объяснить. Нам не надо отправлять json запрос на url сразу при входящем звонке. Нам надо отправлять только когда оператор (extension) на очереди поднимит трубку.
Вот еще раз последовательность звонка.
http://prntscr.com/oqkt77
Как только какой-нибудь оператор из группы 901-920 освободится и поднимит трубку, только тогда нужно пнуть урл.
Re: FreePBX выполнение скрипта из Context from-internal
Добавлено: 09 авг 2019, 17:55
ded
call file именно так и работает. Заряжает одно плечо вызова
artemkol писал(а): оператор (extension) на очереди поднимит трубку.
только правильней - поднимет, и по событию Answer у этого оператора заряжает второе плечо - Dial(SIP/trunk/${EXTEN})
Тут проблема у вас, потму что желаете в очередь направлять, а сама очередь в первую очередь делает Answer.
ded писал(а):dial-out.php уж напишите сами, он должен породить call file на основе переданных аргументов и поместить его в /var/spool/asterisk/outgoing
Никакой json запрос на url не нужен.
Параметр ${EXTEN} скрипт получит из переданного ему аргумента ${CALLERID(num)} при входящем вызове.
http://asterisk.ru/knowledgebase/Asterisk+auto-dial+out
Re: FreePBX выполнение скрипта из Context from-internal
Добавлено: 09 авг 2019, 18:12
artemkol
Вы не поняли, нам очень нужно чтоб он отправлял номер клиента, который звонит и оператора который принял этого клиента. У нас есть веб-морда на другом сервере, которой это нужно для отображения всей истории по клиенту.
artemkol писал(а):Добрый день! Пытаюсь уговорить FreePBX слать json-запросы при снятии трубки оператором. Есть скрипт который все шлет как надо, сам по себе работает, но FreePBX упортно не хочет его выполнять, подсовывал даже скрипт, который просто создает папку.
Re: FreePBX выполнение скрипта из Context from-internal
Добавлено: 09 авг 2019, 18:26
Zavr2008
ТС, Читать когда начнете что вам пишут?
ОПЦИЯ DIAL.
Код: Выделить всё
M(x): Заставляет выполнить macro (x) в момент ответа на вызов
Для тех кто в танке - Как только ваш горе-оператор снимет трубку, вызовется макрос x. Там в нем и делайте ваш json хоть system толь еще каким BSDM методом.
После return полетит в нормальный диалплан.
Да, в крайнем случае прийдется делать такой костыль, но хотелось бы обойтись средствами PBX
а php это не "костыль" - это ПРАВИЛЬНО так делать.
костыль скорее ваша "аля" CRM -система, что не понимает что звонки например могут быть переадресованными.
Re: FreePBX выполнение скрипта из Context from-internal
Добавлено: 25 сен 2019, 13:22
dos
Добрый день.
Может Dialplan and Operational -> Asterisk Dial Options HhTtrU(my-answer^s^1)
Создаете свой контекст my-answer и в нем рулите уже о поднятии трубки, не забывая про return
Просто стандартно freepbx добавляет M(выполнение макроса) уже к существующим опциям (пример M(confirm^^^000)" Можно и дров наломать(как мне кажется).