Если это сервер астерик, то ни каких требований нет, он умеет работать по sip. Вопрос в том какие требования к Вашему voip приложению. Что оно должно делать и как взаимодействовать с сервером атериск.
Простите, не прочитал заголовок. У Вас же FreePBX скорее всего cdr пишутся непосредственно в mysql базу.
Тогда смотрите тут "Reports" -> "CDR Reports" если звонки есть, значит cdr благополучно хранятся в базе.
"Длительность" может в одном файле быть на 20 позиции, а в другом на 15, в третьем на 19 с другими полями такая же фигня. простым awk -F "," {'print $2 $3'} и awk '{s += $1} END {print s}' не обойтись.
Но если вы говорите что разница однозначно будет, то попробую сделать с помощью awk , посмотрю что получится.
Лог файл несколько сложнее чем три поля "время, имя, длительность". Выцеплять эти поля с помощью grepов и awk оказалось несколлько сложнее чем написать скрип на питоне.
А почему прирост в скорости будет значительный?
Дальнейшая задача, на основе полученных данных строить графики загрузки, поэтому нужно знать сколько одновременных вызовов было в конкретную минуту.
Ссылку изучу, не исключено, что в дальнейшем правильнее будет хранить логи в БД.
В вопросе не указал, мне не столько интересно готовое решение, сколько мысли по поводу того как подобное реализовать, хотел бы итоговое решение сделать самостоятельно.
Пока у меня мысли только в направлении - разбить минуту на интервалы, по 5,10 или 30 секунд (в зависимости от точности которую хочу получить), далее для каждого звонка понять попадает ли он в заданный интервал. И посчитать количество таких таких звонков, которые попали.
Но может кто-то может подсказать более изящное решение.
Спасибо, за предложение.
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
ipmatika.ru/products/desktop/yealink-sip-t19-e2