Страница 1 из 1
выборочный cdr+mysql
Добавлено: 05 май 2015, 00:24
Dima
Приветствую всех присутствующих!! Подскажите как можно писать цдр в mysql, но только определенных каналов(сип-линий)? Весь нельзя, сейчас цдр отключен вообще, т.к. это сильно бы грузило сервер(нагружается а2биллингом). Возможно можно через CEL как-то указать конкретные каналы? Если нет, то возможно в диалплане в "ручном" режиме как-то писать лог? Мне главное надо знать имя канала, начало/конец звонка, соответственно длительность, ну и а-номер, б-номер
Re: выборочный cdr+mysql
Добавлено: 05 май 2015, 08:11
virus_net
Dima писал(а):писать цдр в mysql, но только определенных каналов(сип-линий)
Возможно. Там где не надо писать применять
Asterisk cmd NoCDR
Dima писал(а):через CEL как-то указать конкретные каналы
CEL это Channel Event Logging и "через него" ничего не указать.
Dima писал(а):возможно в диалплане в "ручном" режиме как-то писать лог?
Возможно, например с помощью
AGI.
Dima писал(а):Мне главное надо знать имя канала, начало/конец звонка
Тогда наверно лучше слушать события в
AMI и по нужному событию писать в лог или в mysql.
Re: выборочный cdr+mysql
Добавлено: 06 май 2015, 11:54
Dima
Спасибо за развернутый ответ!
NoCDR использовать не буду, т.к. добавлять везде эту строчку в диалплане, кроме пары нужных строк - долго и не правильно, имхо
CEL, как я понял, - это более расширенный цдр с отображением транзитных екстеншенов. Мне тоже не подходит.
С AMI, если честно, не понял как можно решить эту задачу.
Для себя подчеркнул только вариант с AGI скриптами, т.е. до Dial вызывается скрипт, который просто записывает имя канала и время начала разговора в БД, потом идет разговор, далее запускается скрипт с добавлением времени завершения звонка, потом скрипт для определения длительности
Re: выборочный cdr+mysql
Добавлено: 07 май 2015, 07:29
virus_net
Dima писал(а):С AMI, если честно, не понял как можно решить эту задачу.
Точно так же как с AGI. Скрипт читает события, которые предоставляет AMI и по нужным вам событиям, в вашем примере поднятие/опускание канала до каких то номеров, что-то выполняет, в вашем примере - пишет в БД.