Как стать автором
Обновить

Комментарии 17

Asterisk кладёт информацию о звонках CDR в mysql в стандартной комплектации, даже в Trixbox и других версиях.
ну тут база не слишком важна впринципе, он и в pgsql может писать. Может еще добавите в статью пару фишек(полезных мини скриптов в быту) каких-то?
Делал интеграцию в ИМ, где по uniqueid дергалась запись с сервера *, и менеждер может её прослушать в браузере.

Еще интересным будет сразу ссылка в письме на обратный звонок (на форму или сразу на генерацию call-файла или agi).
Ээто готовый функционал автоответчика в астериске.
я это еще в 2005 году настраивал по готовому куску конфига
uniqueid совсем не unique, а цифры в записи wav могут на единицу, но отличаться от uniqueid.
Пришлось городить своё макро, которое пишет имя записываемого файла в userfield.
Вообще вся таблица cdr — одно большое индусское недоразумение, без индексов, без enum, без уникальных полей.
Не зря разработчик того же asternic всё парсит в свою таблицу с нормальными индексами и быстрой выборкой.
Кстати, в * 11 уже есть поле в таблице — recordingfile, и содержит нужное значение: exten-105-302-20130330-152308-1364642588.33.wav
Интересно зачем минусуют? Не нужен скрипт, так не нужен. Или еще что?
Наверное, потому что сильно просто. Две азбучные функции объединенные в одном, так сказать, скрипте. Ни тебе изюминки, ни тебе какого-нибудь хитрого подхода. Почти <?php echo "Hello, world!"; ?>
Ну иногда и простое писать лень, когда есть готовое
Пардон, но это совсем не готовое. Нет никаких обвязок, не оформлено ни как класс, ни как модуль или не знаю библиотека, непонятно кто и когда этот скрипт запускает. Здесь изложен схематический алгоритм. Но он настолько простой, просто как два примера использования функций из документации на php.net скопировано и под одним заголовком подано.
Нужно из командной строки набрать php myscript.php или добавить эту команду в cron. Какие классы, какие обвязки? Рабочий скрипт с сервера asterisk.
«номерация у нас трехзначная, поэтому LENGTH( `src` ) >3, отсекаем исходящие вызовы»

Это рабочий скрипт, который работает для вашей конфигурации. Соглашусь, что тривиальный запрос + тривиальный код вокруг него — не такая и проблема, чтобы искать и подпиливать его под себя, вместо того, чтобы написать на коленке за 15 минут.
Когда потребуется подобный скрипт, его быстрее написать, чем найти этот топик.
Ну я об этом и сказал «вместо того, чтобы написать на коленке за 15 минут.» :-)
Подобные вещи, кстати говоря, удобно хранить и управлять в gist.github.com/
Я считаю что привызяваться к `disposition` = 'NO ANSWER' не совсем корректно.

Считаю что правильнее делать проверку на billsec = 0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации