Telefonia - 11 min de leitura

Como Configurar o Asterisk para Gravar o CDR no Banco de Dados MySQL via ODBC

2 de maio de 2025
Como Configurar o Asterisk para Gravar o CDR no Banco de Dados MySQL via ODBC

Como Configurar o Asterisk para Gravar o CDR no Banco de Dados MySQL via ODBC

Na continuidade da nossa série sobre o Asterisk, hoje vamos abordar um dos temas mais importantes para quem está desenvolvendo um PABX corporativo ou de call center: o registro das chamadas. Em outras palavras, vamos entender como configurar o Asterisk para gravar os dados de bilhetagem (CDR - Call Detail Records) em um banco de dados MySQL utilizando ODBC.

O CDR é essencial para monitorar e auditar chamadas, com informações como número de origem, destino, tempo de duração, horários de atendimento e desligamento, entre outras. Com esses dados salvos em um banco relacional, torna-se possível integrá-los a sistemas de relatórios, BI e até mesmo CRM.

Esse conteúdo nasceu a partir de um comentário deixado pelo Leandro em um vídeo no canal Gnew no YouTube sobre criação de ramais e dialplans no Asterisk. Por isso, reforçamos: sua interação é muito importante! Sempre que possível, traremos vídeos dedicados para dúvidas mais complexas da comunidade.

Como integrar o Asterisk com MySQL via ODBC para registro de chamadas

Se você utiliza o Asterisk como PABX IP e deseja registrar seus dados de chamadas (CDRs) de forma estruturada e integrada a um banco de dados, essa integração com o MySQL via ODBC é ideal para você.

Neste post, mostramos o passo a passo para configurar o Asterisk com MySQL utilizando o conector ODBC. Essa prática é fundamental para empresas que desejam auditar, armazenar ou até mesmo integrar chamadas com sistemas corporativos como CRMs, ERPs e BI.


1. Atualize o sistema

Antes de tudo, mantenha seu sistema atualizado:

apt-get update 

2. Preparando o ambiente LAMP

Vamos seguir o padrão mais comum de ambiente para quem utiliza PHP e MySQL. Instale os pacotes essenciais:

apt-get install mysql-server unixodbc 

3. Instalando o conector ODBC do MySQL

Baixe o conector ODBC diretamente do site oficial:

MySQL ODBC Connector Downloads

Depois de baixar o .deb, envie para o servidor com o FileZilla (ou outro cliente SFTP).

Instale com:

dpkg -i mysql-connector-odbc_9.2.0-1ubuntu24.04_amd64.deb 

4. Configurando os arquivos ODBC

Edite o arquivo de drivers ODBC:

vi /etc/odbcinst.ini 

(Verifique se o driver do MySQL está listado.)

Agora configure a fonte de dados:

vi /etc/odbc.ini 

Exemplo de configuração:

[asterisk-connector] 
Description = MySQL Asterisk CDR 
Driver = MySQL 
Database = asterisk_db 
Server = localhost 
User = asterisk 
Password = senha123 
Port = 3306 

5. Configurando o banco de dados

Execute os seguintes comandos para preparar o banco e usuário:

mysql -u root -e "CREATE DATABASE asterisk_db" 
mysql -u root -e "CREATE USER 'asterisk'@'localhost' IDENTIFIED BY 'senha123'" 
mysql -u root -e "GRANT ALL PRIVILEGES ON asterisk_db.* TO 'asterisk'@'localhost'" 
mysql -u root -e "FLUSH PRIVILEGES" 

6. Testando a conexão ODBC

Use o isql para testar:

isql -v asterisk-connector 

7. Criando as tabelas do Asterisk (CDR)

Instale ferramentas para manipular o banco com Alembic:

apt install python3-venv python3-dev 
python3 -m venv venv 
. venv/bin/activate 
pip install alembic mysqlclient 

Navegue até o diretório de migrações:

cd /usr/src/asterisk-22.1.1/contrib/ast-db-manage 
cp cdr.ini.sample cdr.ini 
vi cdr.ini 

No cdr.ini, edite a URL:

sqlalchemy.url = mysql://asterisk:senha123@localhost/asterisk_db 

Execute a migração:

alembic -c cdr.ini upgrade head 

8. Configurando o Asterisk

Altere os arquivos de configuração para apontar para o ODBC:

cd /etc/asterisk/ 

# res_odbc
mv res_odbc.conf res_odbc.conf.old 
vi res_odbc.conf 
[asterisk] 
enabled => yes 
dsn => asterisk-connector 
username => asterisk 
password => senha123 
pre-connect => yes 
# cdr_adaptive_odbc 

mv cdr_adaptive_odbc.conf cdr_adaptive_odbc.conf.old 
vi cdr_adaptive_odbc.conf 
[adaptive_connection] 
connection=asterisk 
table=cdr 

Reinicie o Asterisk:

/etc/init.d/asterisk restart 

Conclusão

Com esses passos, o Asterisk estará devidamente configurado para registrar todas as chamadas no banco de dados MySQL, acessível por aplicações PHP, dashboards de BI, ou qualquer outro sistema que consuma dados via SQL.

Isso abre portas para criar relatórios customizados, filtros por ramal, horários, gravações, entre outros recursos poderosos de análise e integração.

Se você quiser ajuda para automatizar relatórios ou integrar com o seu sistema, fale com a equipe da Gnew Tech. Somos especialistas em telefonia IP, desenvolvimento sob demanda e soluções corporativas.

Importante destacar: o passo a passo técnico completo com todos os comandos e configurações está demonstrado no vídeo, por isso, recomendamos assisti-lo até o final.

Assista ao vídeo completo

No vídeo abaixo, você confere todos os detalhes técnicos do processo, desde a instalação dos pacotes necessários até a verificação dos registros das chamadas no banco de dados.

 

 

Assuntos relacionados



Soluções Baseadas em Asterisk: GUI, Nuvem e Soluções Híbridas
Telefonia - 5 min de leitura
Soluções Baseadas em Asterisk: GUI, Nuvem e Soluções Híbridas

O Asterisk é uma poderosa ferramenta de código aberto para construção de soluções de telefonia, e ao longo dos nossos vídeos já mostramos como...

Desafios e Vantagens de Trabalhar com Asterisk e Soluções VoIP
Telefonia - 7 min de leitura
Desafios e Vantagens de Trabalhar com Asterisk e Soluções VoIP

À medida que a tecnologia evolui e a comunicação digital se torna cada vez mais integrada, soluções como o Asterisk ganham destaque no universo das...

Internet 10G é Lançada na China: Entenda o Que É, Como Funciona e os Impactos para Usuários e Empresas
Transformação Digital - 7 min de leitura
Internet 10G é Lançada na China: Entenda o Que É, Como Funciona e os Impactos para Usuários e Empresas

A China deu um passo significativo rumo ao futuro da conectividade ao lançar a primeira rede comercial de internet 10G do mundo. O marco foi atingido em...

A Evolução do PABX Virtual: Tendências, Integrações e Futuro da Telefonia Corporativa
Telefonia - 6 min de leitura
A Evolução do PABX Virtual: Tendências, Integrações e Futuro da Telefonia Corporativa

Em setembro de 2023, explicamos no artigo “O que é um PABX Virtual e suas Vantagens para Empresas” como a telefonia em nuvem revolucionou a forma como...

Saiba mais sobre as nossas experiências

Ou entre em contato com um de nossos consultores (11) 3709-2380

Informe seus dados e aguarde o nosso contato!

Ao preencher este formulário, você está ciente e concorda que poderá ser contatado por mensagens ou telefone pela nossa equipe!

Sucesso!

Entraremos em contato em breve!

Ops!

Não foi possivel enviar sua solicitação.

Tente novamente!