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

не отрабатывает CURLOPT(httptimeout)

Добавлено: 11 авг 2016, 15:45
flyntus
Добрый день. Столкнулся с проблемой что не отрабатывает CURLOPT(httptimeout) после завершения Dial c опцией g
когда абонент абонент кладет трубку должен вызываться GET запрос на урл. но скрипт на урл выполняется порядка 1-2секунд. А астериск сбрасывает раньше, поэтому переменная push пустая.
Также пробовал делать все в контексте h тоже самое.
Вот дила план:
exten => _X.,1,Set(fname=${STRFTIME(${EPOCH},,%s)}-${CALLERID(number)})
exten => _X.,n,Set(whenin=${STRFTIME(${EPOCH},,%s)})
exten => _X.,n,Set(CURLOPT(httptimeout)=20)
exten => _X.,n,mixMonitor(/var/www/html/rec/${fname}.wav)
exten => _X.,n,Dial(SIP/701/${EXTEN},35,g)
exten => _X.,n,GotoIf($["${DIALSTATUS}" = "CANCEL"]?1000)
exten => _X.,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?1000)
exten => _X.,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?1000)
exten => _X.,n,GotoIf($["${DIALSTATUS}" = "FAILED"]?1000)
exten => _Х.,n,Set(push=${CURL(http://127.0.0.1/abo.php?uid=${CHANNEL( ... e=${whenin})})

Астериск 13.2 ктонибуть сталкивался с подобным?

Re: не отрабатывает CURLOPT(httptimeout)

Добавлено: 11 авг 2016, 15:52
april22
по всей видимости дубль

Re: не отрабатывает CURLOPT(httptimeout)

Добавлено: 12 авг 2016, 08:38
virus_net
flyntus писал(а):астериск сбрасывает раньше, поэтому переменная push пустая
логи где ?

я бы переделал это все на AGI и вызывал бы AGI, который гарантировано отработает и dialplan далее точно не поедет, пока AGI не закончит исполнение.

Re: не отрабатывает CURLOPT(httptimeout)

Добавлено: 12 авг 2016, 10:34
ded
+++
Аппликации и функции типа CURL, MYSQL прямо из диалплана можно делать напрямую только к localhost, или к соседней машине.