[[ Asterisk CDR на MySQL в Gentoo Linux ]]

GentooAsterisk

Asterisk CDR на MySQL в Gentoo Linux

Asterisk/1.6.2.5

Установка

echo net-misc/asterisk-addons >> /etc/portage/package.keywords
echo net-misc/asterisk-addons mysql >> /etc/portage/package.use

Настройка

cp /usr/share/doc/asterisk-addons-1.6.2.0/cdr_mysql.conf.sample.bz2 /etc/asterisk/
bzip2 -d /etc/asterisk/cdr_mysql.conf.sample.bz2
mv /etc/asterisk/cdr_mysql.conf.sample /etc/asterisk/cdr_mysql.conf

/etc/asterisk/cdr_mysql.conf

[global]
hostname=localhost
dbname=asterisk
table=cdr
user=asterisk
password=PasSw0dr
;port=3306
;sock=/tmp/mysql.sock

[columns]
;static "<value>" => <column>
;alias <cdrvar> => <column>
alias start => calldate
alias callerid => clid
alias src => src
alias dst => dst
alias dcontext => dcontext
alias channel => channel
alias dstchannel => dstchannel
alias lastapp => lastapp
alias lastdata => lastdata
alias duration => duration
alias billsec => billsec
alias disposition => disposition
alias amaflags => amaflags
alias accountcode => accountcode
alias userfield => userfield
alias uniqueid => uniqueid

Дамп таблицы cdr

SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for cdr
-- ----------------------------
CREATE TABLE `cdr` (
  `key` INT(11) NOT NULL AUTO_INCREMENT,
  `calldate` datetime DEFAULT NULL,
  `clid` VARCHAR(255) DEFAULT '',
  `src` VARCHAR(255) DEFAULT '',
  `dst` VARCHAR(255) DEFAULT '',
  `dcontext` VARCHAR(255) DEFAULT '',
  `channel` VARCHAR(255) DEFAULT '',
  `dstchannel` VARCHAR(255) DEFAULT '',
  `lastapp` VARCHAR(255) DEFAULT '',
  `lastdata` VARCHAR(255) DEFAULT '',
  `duration` INT(11) DEFAULT '0',
  `billsec` INT(11) DEFAULT '0',
  `disposition` VARCHAR(255) DEFAULT '',
  `amaflags` INT(11) DEFAULT '0',
  `accountcode` VARCHAR(255) DEFAULT '',
  `uniqueid` VARCHAR(255) DEFAULT NULL,
  `userfield` VARCHAR(255) DEFAULT '',
  PRIMARY KEY  (`key`),
  KEY `accountcode` (`accountcode`),
  KEY `calldate` (`calldate`),
  KEY `dst` (`dst`),
  KEY `src` (`src`)
) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

Загрузка модулей

/etc/asterisk/modules.conf

[modules]
autoload=yes

; Отключаем запись в файл
noload => cdr_csv.so

; При autoload можно не указывать загрузку модуля
;load => cdr_addon_mysql.so

...

Информация по таблице

Поле Комментарий
calldate Дата и время
clid Caller ID
src Кто звонит
dst Куда звонят
dcontext Диал план
channel Используемый канал от вызывающего абонента
dstchannel Используемый канал к вызываемому абоненту
lastapp Последняя команда (Dial, BackGround и т.п.)
lastdata Аргументы или данные для lastapp
duration Полное время в секундах, от начала набора номера до окончания звонка
billsec Время вызова в секундах, от ответа (Answer) до окончания звонка.
disposition Статус вызова
amaflags AMA = Automated Message Accounting
accountcode Параметр файла sip.conf. Значение этого параметра, если указано, используется при заполнении CDR. Записывается значение пира, который принимает звонок.
uniqueid Можно записать что угодно туда

exten => _8904XXXXXXX,n,Set(CDR(userfield)=Тele2)











Обсуждение

lexa, 2010/03/12 16:47, 2010/03/12 16:48
asterisk -rx "cdr mysql status"
Ваш комментарий. Вики-синтаксис разрешён:
70 +4 =᠎
 
howto/asterisk/asterisk-cdr-mysql.txt · Последнее изменение: 2024/01/15 11:03 — lexa
Gentoo Linux Gentoo Linux Driven by DokuWiki