
Combot
01.08.2018
13:56:40
Too fast! Try again later.

Mark
01.08.2018
13:56:55
В каком чатике обсуждали, что комбот фсё?


Павел
01.08.2018
13:59:42
Требуется возможность разместить в настройках АТС адрес Webhook, на который АТС будет передавать данные по звонкам на свои номера:
Webhook с данными на момент начала звонка:
номер телефона, с которого звонили;
номер АТС, на который звонили;
дата и время, когда был совершен звонок.
Webhook с данными после окончания звонка:
номер телефона, с которого звонили;
номер АТС, на который звонили;
дату и время, когда был совершен звонок;
продолжительность разговора;
ссылку на запись разговора;
статус звонка. Рекомендуем использовать следующие статусы:
ANSWER – звонок был принят и обработан сотрудником;
BUSY – входящий звонок был, но линия была занята;
NOANSWER – входящий вызов состоялся, но в течение времени ожидания ответа не был принят сотрудником;
CANCEL – входящий вызов состоялся, но был завершен до того, как сотрудник ответил;
CONGESTION – вызов не состоялся из-за технических проблем;
CHANUNAVAIL – вызываемый номер был недоступен;
DONTCALL – входящий вызов был отменен;
TORTURE – входящий вызов был перенаправлен на автоответчик.


Mark
01.08.2018
14:00:28
На вид как тз, за имплеминтацию которого кто-то получит бабло

Google

Павел
01.08.2018
14:01:35
да не, это требование к интеграции просто

Mark
01.08.2018
14:02:01
Ишо почем за такую интеграцию?

Павел
01.08.2018
14:02:17
тут как бы направить хотелось бы в нужное русло, делать то не треба
это просто требование к интеграции
я пытаюсь в нем разобраться

Mark
01.08.2018
14:02:47
Бррр. За еду штоле?

Павел
01.08.2018
14:03:10
говорят что два пальца об асфальт а я что та не могу пока уловить

Mark
01.08.2018
14:04:23
Неясно шотакое вебхук. По факту тут штатная выборка из бд астерисковской

Kirill
01.08.2018
14:04:25
Обработайте диалстатус и вызываете простой Аги скрипт например на phython а там уже дергаете url
И все

Mark
01.08.2018
14:05:23

Google

Kirill
01.08.2018
14:05:57
Что значит зачем?

Mark
01.08.2018
14:06:20

Павел
01.08.2018
14:06:36

Kirill
01.08.2018
14:07:39
Вот его задачу и решает

Mark
01.08.2018
14:07:59

Павел
01.08.2018
14:08:43

Kirill
01.08.2018
14:08:55
Да rest запрос ему надо

Павел
01.08.2018
14:09:26
эта сторона вообще не принимает участия,ей нужна только инфа
на начало звонка и на конец
типа
{
"callee" : "",
"caller" : "",
"date" : "",
"status" : "",
"duration" : "",
"link" : "" //link to record of call
}

Kirill
01.08.2018
14:10:18
Павел наиболее правильно будет решить через agi.

Павел
01.08.2018
14:10:36

Mark
01.08.2018
14:10:43

Павел
01.08.2018
14:10:44
или еще лучше на пример

Kirill
01.08.2018
14:10:52
На любом удобном для вас языке программирования

Павел
01.08.2018
14:11:35
я думаю тут реально подойдет что то на подобии уведомлении в телеграмм
надо наверное оттуда и содрать

Kirill
01.08.2018
14:12:13
Да вот
https://habr.com/sandbox/40265/?mobile=no?mobile=no
Как пример вызова скрипта

Google

Kirill
01.08.2018
14:13:17
Ваша задача распихать сие в нужные точки диалплана

Mark
01.08.2018
14:13:31
А, блин, ему вебхуки в прямом смысле

Kirill
01.08.2018
14:13:49
А в каком ещё?

Mark
01.08.2018
14:14:03
Да мало ли что они имеют ввиду кроме.
По-хорошему это вообще задача бекенда и вебсокетов. Нахер тут вебкухи, я хз

Павел
01.08.2018
14:15:24
ну замысел ясен, лучше конечно на php
попробую реализовать в бота сперва

Kirill
01.08.2018
14:15:52

AbdulAziz
01.08.2018
14:15:57
можно заюзать что нить из sipjs
только не юзать передачу голоса
а так agi и какойнить php

Павел
01.08.2018
14:17:03
system(curl) в общем и скрипт на php

Kirill
01.08.2018
14:17:08
Да это уже слишком. Задача то дёрнуть вебхук. В лоб решение-curl

AbdulAziz
01.08.2018
14:17:16
https://github.com/enniel/ami-hook

Mark
01.08.2018
14:17:22

Kirill
01.08.2018
14:17:27
Но сложнее с ошибками
Ну да
Это малость не совсем то

AbdulAziz
01.08.2018
14:18:52
убрал что бы не путать )

Kirill
01.08.2018
14:19:21
Это больше про написание своего приложения и написание своего callflow

Google

Mark
01.08.2018
14:23:22
По идее аги скрипт не решит его проблему.
Там их надо несколько: до, после, как минимум
Отдельный в мембер-макро, если очереди

Kirill
01.08.2018
14:24:40

Mark
01.08.2018
14:25:26
А где он промежуточные данные хранить будет?
Блин, я может это не так представляю, но, имхо, чет костыльно выходит всё.
По сути надо контролировать все основные состояния в реалтайме. Скрипт на входе, на выходе, или какой-то умный скрипт с временными таблицами. сложноватый костыль получается

Kirill
01.08.2018
14:28:54
Какие промежуточные данные?

Mark
01.08.2018
14:29:23
Уход в паузу, к примеру


Kirill
01.08.2018
14:30:08
В какую паузу
Вот же ТЗ
Павел:
Требуется возможность разместить в настройках АТС адрес Webhook, на который АТС будет передавать данные по звонкам на свои номера:
Webhook с данными на момент начала звонка:
номер телефона, с которого звонили;
номер АТС, на который звонили;
дата и время, когда был совершен звонок.
Webhook с данными после окончания звонка:
номер телефона, с которого звонили;
номер АТС, на который звонили;
дату и время, когда был совершен звонок;
продолжительность разговора;
ссылку на запись разговора;
статус звонка. Рекомендуем использовать следующие статусы:
ANSWER – звонок был принят и обработан сотрудником;
BUSY – входящий звонок был, но линия была занята;
NOANSWER – входящий вызов состоялся, но в течение времени ожидания ответа не был принят сотрудником;
CANCEL – входящий вызов состоялся, но был завершен до того, как сотрудник ответил;
CONGESTION – вызов не состоялся из-за технических проблем;
CHANUNAVAIL – вызываемый номер был недоступен;
DONTCALL – входящий вызов был отменен;
TORTURE – входящий вызов был перенаправлен на автоответчик.
Тут вопрос только один чем CANCEL отличается от NOANSWER
Хотя и это понятно


Mark
01.08.2018
14:32:16
Ну я в целом размышляю уже в потоке фантазии. Проблемно будет при трансфере по идее, так как аги скрипты должны будут как-то обмениваться инфой

Kirill
01.08.2018
14:32:34
Зачем?

Павел
01.08.2018
14:32:43
а может не в реал тайме то
надо просто два посыла делать

Kirill
01.08.2018
14:32:55
Не надо же

Павел
01.08.2018
14:32:57
в ачале и в конце разговора

Google

Mark
01.08.2018
14:33:08
В противном случе при переброске звонка он зайдет в очередь - и другой скрипт посчитает его как еще один входящий


Carrol
01.08.2018
14:34:44
Требуется возможность разместить в настройках АТС адрес Webhook, на который АТС будет передавать данные по звонкам на свои номера:
Webhook с данными на момент начала звонка:
номер телефона, с которого звонили;
номер АТС, на который звонили;
дата и время, когда был совершен звонок.
Webhook с данными после окончания звонка:
номер телефона, с которого звонили;
номер АТС, на который звонили;
дату и время, когда был совершен звонок;
продолжительность разговора;
ссылку на запись разговора;
статус звонка. Рекомендуем использовать следующие статусы:
ANSWER – звонок был принят и обработан сотрудником;
BUSY – входящий звонок был, но линия была занята;
NOANSWER – входящий вызов состоялся, но в течение времени ожидания ответа не был принят сотрудником;
CANCEL – входящий вызов состоялся, но был завершен до того, как сотрудник ответил;
CONGESTION – вызов не состоялся из-за технических проблем;
CHANUNAVAIL – вызываемый номер был недоступен;
DONTCALL – входящий вызов был отменен;
TORTURE – входящий вызов был перенаправлен на автоответчик.
Я бы сделал agi bash с получением переменных из диалплана и поставлял в curl, а потом возвращал бы ответы переменными обратно
Хотя... Я так и делаю ?


Kirill
01.08.2018
14:35:40

Павел
01.08.2018
14:35:45
неа
пока нет покрайней мере

Kirill
01.08.2018
14:36:03
Тогда вам хватит
https://wiki.asterisk.org/wiki/display/AST/Asterisk+Standard+Channel+Variables

Павел
01.08.2018
14:36:33
тут важно то с какого номера позвонили и о том что успешный был звонок или нет

Kirill
01.08.2018
14:36:39
https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Application_Dial


Carrol
01.08.2018
14:36:41
Павел:
Требуется возможность разместить в настройках АТС адрес Webhook, на который АТС будет передавать данные по звонкам на свои номера:
Webhook с данными на момент начала звонка:
номер телефона, с которого звонили;
номер АТС, на который звонили;
дата и время, когда был совершен звонок.
Webhook с данными после окончания звонка:
номер телефона, с которого звонили;
номер АТС, на который звонили;
дату и время, когда был совершен звонок;
продолжительность разговора;
ссылку на запись разговора;
статус звонка. Рекомендуем использовать следующие статусы:
ANSWER – звонок был принят и обработан сотрудником;
BUSY – входящий звонок был, но линия была занята;
NOANSWER – входящий вызов состоялся, но в течение времени ожидания ответа не был принят сотрудником;
CANCEL – входящий вызов состоялся, но был завершен до того, как сотрудник ответил;
CONGESTION – вызов не состоялся из-за технических проблем;
CHANUNAVAIL – вызываемый номер был недоступен;
DONTCALL – входящий вызов был отменен;
TORTURE – входящий вызов был перенаправлен на автоответчик.
Выглядит как CDR + CEL


Kirill
01.08.2018
14:37:02
Да нет же все проще
Пришел звонок дергаем agi

Carrol
01.08.2018
14:37:36
Может выгоднее писать в базу CDR и CEL, а из базы брать удобным инструментом

Kirill
01.08.2018
14:38:13
Там весь скрипт 30 строчек с логами
И диалплан 20

Carrol
01.08.2018
14:39:15

Kirill
01.08.2018
14:39:32

Carrol
01.08.2018
14:40:00
Как минимум из названия ARI ?

Mark
01.08.2018
14:40:08
Вангую, Паша к нам еще зайдет, когда после этих аги/хуяги, его попросят косы посчитать и докинуть аналитики. А там ужеи очереди подтянутся и весь велик с аги превратится в бал у сатаны