Size: a a a

2021 August 04

アルテム in Asterisker-ы
РАзобрался
источник

アルテム in Asterisker-ы
Блин, затуп какой-то. Переменная после запроса пустая
same => n,Dial(SIP/prov/${longNumerClear},300,g)
 same => n,Set(check=${ODBC_GROUPDSSELECTCHECK(${CHANNEL})})
 same => n,GotoIf($[ $["${check}" = "4"] ] ?batis)
источник

アルテム in Asterisker-ы
Прямой запрос делаю - ок. В логах видно, что попадает взапрос. Все переменные есть. А check пустой после запроса. Шо за дичб
источник

アルテム in Asterisker-ы
 Found no rows [select duration from cdr where dcontext = 'groupds' and channel like '%SIP/408859-00044b24%']
   -- Executing [h@groupds:2] Set("SIP/408859-00044b24", "check=") in new stack
источник

DK

Dmitry Kaydash in Asterisker-ы
Давно запрос в odbc добавили?
источник

アルテム in Asterisker-ы
Я релоад сразу делал
источник

アルテム in Asterisker-ы
odbc
источник

DK

Dmitry Kaydash in Asterisker-ы
В CLI появился? Через exec тоже работает?
источник

アルテム in Asterisker-ы
да
источник

DK

Dmitry Kaydash in Asterisker-ы
Так же, поскольку я не уверен, что функцию CHANNEL можно использовать без аргументов, я бы проверил вывод в лог этой переменной через NoOp
источник

DK

Dmitry Kaydash in Asterisker-ы
источник

アルテム in Asterisker-ы
ТАк, стоп, я же переменную беру channel
источник

DK

Dmitry Kaydash in Asterisker-ы
Ради интереса попробуйте переназвать) CHANNEL - зарезервированная функция asterisk
источник

アルテム in Asterisker-ы
same => n,Dial(SIP/prov/${longNumerClear},300,g)
 same => n,Set(chan=${CHANNEL})
 same => n,Set(check=${ODBC_GROUPDSSELECTCHECK(${chan})})
источник

アルテム in Asterisker-ы
Короче бред какой-то
источник

アルテム in Asterisker-ы
> Found no rows [select disposition from cdr where dcontext = 'groupds' and channel like '%SIP/408859-00044bae%']
   -- Executing [1111@groupds:7] Set("SIP/408859-00044bae", "check=") in new stack
источник

DK

Dmitry Kaydash in Asterisker-ы
Почему? Вам сказали, что запрос выполнился, но его результат содержит 0 строк

select disposition from cdr where dcontext = 'groupds' and channel like '%SIP/408859-00044bae%';


А вот это, намекаете, даст результат?
источник

アルテム in Asterisker-ы
Так в том-то и смысл, что я делаю прямой запрос и вижу значение. Теперь аопрос. Запись в CDR у меня идет до звонка.  ТО есть получается так, что в момент запроса астером, там пусто? А после моего прямого запроса появляется значение?\
источник

アルテム in Asterisker-ы
same => n,macro(set-monitor-absolute,${longNumerClear})
 same => n,Set(CDR(inexten)=groupds)
 same => n,Dial(SIP/prov/${longNumerClear},300,g)
 same => n,Set(chan=${CHANNEL})
 same => n,Set(check=${ODBC_GROUPDSSELECTCHECK(${chan})})
 same => n,GotoIf($[ $["${check}" = "ANSWERED"] ] ?batis)
источник

DK

Dmitry Kaydash in Asterisker-ы
Дело не в вашем запросе, а моменте в который asterisk сохраняет переменные канала в mysql. В момент его разрушения или изменения состояния
источник