40 просмотров
от (300 баллов) в категории Тонкая настройка
Добрый день.

Имеется некоторая задача по маршрутзации звонков. Понятно, что делать ее придется с помощью скриптов и кастомизации. Но у меня вопрос: использует ли MikoPBX базу данных(MariaDB, SQLite & etc) для хранения звонков и маршрутов звонков.

И если не использует - каким образом можно сделать временную выборку по номерам, звонкам?

Нам для написания приложения нужно делать выборку за 12 часов по внутренним и внешним звонкам и на основе этой выборки формировать IVR.

1 Ответ

от (87.4 тыс. баллов)
выбран назад от
 
Лучший ответ

История храниться в базе данных sqlite3. Из за особенностей данной СУБД, с файлом единовременно может работать только один процесс. 

Файл базы данных расположен тут:

/storage/usbdisk1/mikopbx/astlogs/asterisk/cdr.db

Напрямую к базе данных обращаться не рекомендую. Правильно:

Сперва описываем запрос:

$miko_result_in_file           = true;
$filter                        = [
    'start BETWEEN :date1: AND :date2: AND (src_num IN ({numbers:array}) OR dst_num IN ({numbers:array}) )',
    'bind'    => [
        'numbers' => $this->vars['numbers'],
        'date1'   => $this->vars['date1'],
        'date2'   => $this->vars['date2'],
    ],
    'group'   => 'linkedid',
    'columns' => 'linkedid',
];
$add_query                     = [
    'columns' => 'start,src_num,dst_num,src_chan,dst_chan,billsec,disposition,UNIQUEID,recordingfile,linkedid,did',
    'linkedid IN ({linkedid:array})',
    'bind'    => [
        'linkedid' => null,
    ],
    'limit'   => 300,
];
$filter['add_pack_query']      = $add_query;
$filter['miko_result_in_file'] = $miko_result_in_file;

Далее выполняем его через сервер очередей

$client  = new BeanstalkClient(WorkerCdr::SELECT_CDR_TUBE);
$message = $client->request(json_encode($filter, JSON_THROW_ON_ERROR), 2);

Примеры можно посмотреть в исходном коде:

  1. Последовательная загрузка истории в Панель телефонии ред. 1.0
  2. Запрос по периоду 
от (87.4 тыс. баллов)
Выполнять тяжелые запросы крайне не рекомендую, можете сломать работу легирования истории звонков.
от (300 баллов)
Да там не тяжелые запросы, но частые. Идея проста - менеджер позвонил клиенту. Тот не взял трубку или быстро ответил что перезвонит. После, если он перезванивает в течении 3-4 часов, его, минуя IVR, перебрасывает на нужного менеджера, который в курсе.
от (300 баллов)
Еще момент - ваша сборка без тюнинга вытянет соединений 40-60 разговоров в момент времени (при соответсвующих мощностях сервера)? Или придется тюнить и допиливать?
от (87.4 тыс. баллов)

сложно сказать однозначно., вызовы разные бывают. 

Искусственный тест:

  • Входящие на очередь с музыкой на удержании
  • 1 процессор
  • 1 Гигабайт оперативки
Держал 30 параллельных звонков. 
от (300 баллов)
Спасибо. Вполне. Есть в планах на ARM сделать сборку? Очень любим Raspberry PI :)
от (87.4 тыс. баллов)
пока только планы, но не приступили к реализации.

начать планируем с docker под Arm, пока есть только docker под x64
На этом сайте можно бесплатно задать вопрос разработчикам MikoPBX и другим членам сообщества. Время ответа не регламентированно, но мы стараемся несколько раз в день заглядывать сюда. Для срочного решения проблем обращайтесь на платную линию поддержки

Популярные теги

askozia входящие-вызовы настройка провайдер запись-разговоров ivr маршрутизация исходящие исходящие-звонки провайдеры обновление очередь запись маршрут askozia7 askozia6 транк очередь-вызовов переадресация входящие логи перевод-вызова перевод callerid факс перехват-вызова ростелеком история-звонков веб-интерфейс настройка-провайдер релиз история установка голосовая-почта gsm панель-телефонии-1с звонок nat pjsip запись-разговора ascozia goip мобильный интеграция почта редактор asterisk mikopbx битрикс24 телефонная-книга аон маршруты провайдеров ошибка диалплан время вызовы разговоров панель внешние-номера web-интерфейс нерабочее-время битрикс bitrix24 переадресация-мобильный beeline тишина smtp cdr sip лицензия askozia-5 распределение донабор префиксы статистика альтернативный monitoring оповещения голосовая cisco модуль парковка перехват вызовов номер vmware мультифон мегафон #mikopbx дополнительный-диск билайн beta задержки сетевые регистрация взлом dialplan звонков

2.1 тыс. вопросов

1.8 тыс. ответов

4.7 тыс. комментариев

9.5 тыс. пользователей

...