Для работы с cdr файлами существует программа cdr_analyzerПрограмма может запускаться как с cron так и работать в режиме демона.

Установка

cp cdr_analyzer /usr/abills/Abills/modules/Voip/
ln -s /usr/abills/Abills/modules/Voip/cdr_analyzer  /usr/abills/libexec/cdr_analyzer

Аргументы программы

helpСправка
CDR_FILE=Путь к файлу или каталогу содержащему cdr файлы (По умолчанию: /home/asm/abills/var/log/cdr/)
CDR_EXPR='expr' 

CALLER_NUMBER 
CALLED_NUMBER
DATE 
TIME 
START (2012-01-01 00:00:00) 
DURATION sec or (00:11:11) 
UNIX_TIME 
ACCT_SESSION_ID 
IP
Выражение для анализа файла
UNKNOWN_CDR_FILE=…Путь к файлу, куда складываются неопределённые записи анализируемого cdr файла
CALLER_NUMBER=Анализировать только звонки с номера. Остальные записи игнорировать
CALL_DATE=«xxxx-xx-xx»Добавить дату к вызову если в cdr файле только время звонка
LOG_FILE=…Путь к лог файлу программы
-dРежим демона
UPDATE_TIME=…Время обновление при работе в режиме демона
BACKUP_DIR=[DIR]Каталог для проанализированных файлов
DEBUG=…Режим отладки 1..8
NAS_IDS=Прикрепить записи о звонкам к определённым серверам доступа

Пример выражения 

cdr Файл

2012-06-09;15:54:00;2037197;3878718;15238
2012-06-10;09:23:00;2037197;3878718;53
2012-06-10;10:34:00;2038938;2662996;840
2012-06-14;15:43:00;2030393;3435545;9
2012-06-14;16:00:00;2030393;3435545;6
2012-06-14;11:38:00;2037047;3376251;16

Выражение 

/usr/abills/libexec/cdr_analyzer CDR_EXPR="(\d{4}-\d{2}-\d{2});(\d{2}:\d{2}:\d{2});(\d+);(\d+);(\d+)|DATE,TIME,CALLER_NUMBER,CALLED_NUMBER,DURATION"