Size: a a a

2021 August 04

アルテム in Asterisker-ы
После того, как пришел вывод лампа, консоль молчит. Секунд через пять в вербос вывод о запросе
источник

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

DK

Dmitry Kaydash in Asterisker-ы
Если я правильно понимаю, вы пытаетесь сделать звонок и получить данные из CDR в процессе. А давайте провернём эксперимент?

Пропишите сейчас в диалплан вместо переменной - старое значение, которое мы обсуждали в чате выше
источник

アルテム in Asterisker-ы
Да да. Я пытаюсь ансверд получить
источник

DK

Dmitry Kaydash in Asterisker-ы
select disposition from cdr where dcontext = 'groupds' and channel like '%SIP/408859-00044bae%'


Статично в диалплане укажите "SIP/408859-00044bae" и давайте посмотрим в лог
источник

DK

Dmitry Kaydash in Asterisker-ы
Сейчас уже запись того звонка 100% находится в базе
источник

アルテム in Asterisker-ы
Executing [1111@groupds:7] Set("SIP/408859-00044c14", "check=BUSY") in new stack
источник

アルテム in Asterisker-ы
Теперь появилось
источник

DK

Dmitry Kaydash in Asterisker-ы
Тогда у меня хорошая и плохая новости: ваш механизм полностью исправен, и необходимых ему данных  ещё нет в CDR в момент запроса
источник

アルテム in Asterisker-ы
ОТлично. А как понять state канала.  Что 100 процентов CDR уже есть это значение
источник

TZ

Trushakov Zheny in Asterisker-ы
А задача то какая?
источник

DK

Dmitry Kaydash in Asterisker-ы
Правильно уточняют - реализация зависит от назначения. Проверить наличие в БД - непосредственно запросом в БД, имея идентификатор звонка.

Примитивный способ определить был ли ответ на вызов средствами диалплана и выполнить некоторые последующие действия - поможет опция Dial

U(x[^arg[^…]]): - Выполнить GoSub маршрут, после ответа вызываемой стороны. синтаксис: U(sub^ARG1^ARG2). После выполнения возвращает переменную ${GOSUB_RESULT}:
GOSUB_RESULT
ABORT - Всем отбой.
CONGESTION - Канал переполнен.
BUSY - Канал занят.
CONTINUE - Выполнить следующий приоритет. если вызываемая сторона положила трубку.
GOTO:[[<CONTEXT>^]<EXTEN>^]<PRIORITY> - перейти на указанный контекст.
x - имя контекста GoSub.
arg - аргументы GoSub
источник

アルテム in Asterisker-ы
Если звонок обзвонщика и вызываемого абонента состоялся (моб номер). ОТправить черз agi номер, по которому пойдет смска. Механиз передачи ноемра я реализовал. Все работает
источник

アルテム in Asterisker-ы
А вот с проверкой успешностью звонка, чет никак((((
источник

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

TZ

Trushakov Zheny in Asterisker-ы
Ну а в чем проблема , диалстатус в диалпоане проверить. Если ансвер - кидай смс свои
источник

TZ

Trushakov Zheny in Asterisker-ы
Не надо лезть в cdr
источник

TZ

Trushakov Zheny in Asterisker-ы
А это уже про анализ - кто именно ответил - человек или робот
источник

アルテム in Asterisker-ы
same => n,Dial(SIP/obit/${longNumerClear},15)
 same => n,GotoIf($["${DIALSTATUS}" = "ANSWER"]?post)
 same => n(post),AGI(groupds.php,${longNumerClear})
 same => n,hangup()

То ли меня кроет, то ли пздц какой-то. ИНициирую звонок. Звонит мобильник. Отбиваю его. AGI всеравно выполняется😔
источник
2021 August 05

アルテム in Asterisker-ы
Усе. Пора домой. Все сделаль. Неправильно чет условие написал до этого. Всем спасибо Ребята и доброй ночи
источник