Este é mais um artigo sobre Asterisk mais agora mostrando como configurar para que ele salve as ligações direto no banco de dados Mysql.
Primeiramente presumo que você já tenha o asterisk instalado em sua máquina, se não tem leia o artigo de como instalar que segue abaixo:
http://paulogvaz.blogspot.com/2012/02/asterisk-debian-dahdi.html
Com o asterisk instalado vamos ao passo seguinte:
1 - Instalar os pacotes para o mysql
# apt-get install mysql-common libmysqlclient15-dev mysql-client mysql-server
Ao instalar o mysql-server ele irá pedir uma senha para o administrador root, não perca a senha pois vamos necessitar.
2 - Criar uma base de dados
# mysqladmin create asteriskcdr -u root -psenha
3 - Conecte a base de dados com usuário root e a senha que vc definiu ao instalar o mysql
# mysql -u root -psenha
Agora vamos criar uma tabela utilizando a base de dados asteriskcdr
mysql> use asteriskcdr
mysql> CREATE TABLE cdr (
calldate datetime NOT NULL default '0000-00-00 00:00:00',
clid varchar(80) NOT NULL default '',
src varchar(80) NOT NULL default '',
dst varchar(80) NOT NULL default '',
dcontext varchar(80) NOT NULL default '',
channel varchar(80) NOT NULL default '',
dstchannel varchar(80) NOT NULL default '',
lastapp varchar(80) NOT NULL default '',
lastdata varchar(80) NOT NULL default '',
duration int(11) NOT NULL default '0',
billsec int(11) NOT NULL default '0',
disposition varchar(45) NOT NULL default '',
amaflags int(11) NOT NULL default '0',
accountcode varchar(20) NOT NULL default '',
uniqueid varchar(32) NOT NULL default '',
userfield varchar(255) NOT NULL default ''
);
Atenção: cuidado ao copiar e colar essas linhas acima para criar a tabela cdr, pois o mesmo pode ao colar alterar o formato de algum símbolo feito o "''" (aspasimples), ocorre muito erro ao colar podendo trocar de aspas simples para craze ou outro símbolo.
3 - Agora que criamos vamos nossa tabela cdr vamos agorar criar um usuário e dar permissão par gerenciar a base de dados:
mysql>GRANT ALL PRIVILEGES ON asteriskcdr.* TO asterisk IDENTIFIED BY '12345';
mysql>flush privileges;
mysql>quit;
A primeira linha acima cria um usuário asterisk com senha 12345 e que total permissão para a base asteriskcdr, você pode utilizar um usuário e uma senha a seu critério.
4 - Agora precisamos alterar o arquivo cdr_mysql.conf para que o asterisk possa se conectar ao mysql.
# view /etc/asterisk/crd_mysql.conf
[global]
hostname=127.0.0.1
dbname=asteriskcdr
table=cdr
password=12345
user=asterisk
port=3306
sock=/tmp/mysql.sock
userfield=1
;charset = latin1
Para ver se está tudo funcionando entre no asterisk e execute o seguinte comando:
#asterisk -r
CLI> cdr mysql status
Irá aparecer uma mensagem assim:
Connected to asteriskcdr@localhost, port 3306 using table cdr for 45 seconds.
Wrote 0 records since last restart.
Wrote 0 records since last restart.
Se esta mensagem aparecer é porque o asterisk se conectou com sucesso a base de dados:
Pronto seu asterisk já está bilhetando as ligações.
O
asterisk por padrão ele não bilheta ligações não atendidas, mais
necessitar que grave tambem essas ligações, altere o seguinte arquivo
#view /etc/asterisk/cdr.conf
e altere a lina
;unanswered = no
para
unanswered = yes
Salve e restarte o asteisk
#asterisk -r
CLI>restart now
Proto asterisk bilhetando tudo...
Boa sorte.
Nenhum comentário:
Postar um comentário