Asterisk realtime e Trunk

Instalação do Asterisk em realtime utilizando o MySQL e Trunk.

[ Hits: 39.908 ]

Por: Ulisses Cantanhede dos Santos em 19/07/2010 | Blog: https://www.axiatec.com.br/


Configurando a comunicação Asterisk entre dois servidores (Trunk)



Para a comunicação entre dois servidores Asterisk deve-se configurar os ramais entre os servidores primário (MATRIZ) e secundário (FILIAL) no arquivo iax.conf e no arquivo extensions.conf configuramos a rota do ramal juntamente com o registro no servidor no qual ocorrerá a comunicação.

Configuração do servidor primário matriz:

No arquivo iax.conf do servidor da matriz deve-se configurar como mostrado abaixo, sendo o ramal 2000 do servidor da filial e o 1000 da matriz, da seguinte forma:

iax.conf:

[general]
bindport=4569
bindaddr=0.0.0.0
disallow=all
allow=ulaw
allow=gsm
[2000]
username=2000
secret=2000
host=dynamic
type=friend
auth=md5
trunk=yes
callerid="2000"
[1000]
username=100
secret=1000
host=dynamic
type=friend
context=cluster
auth=md5
trunk=yes
callerid="1000"

No arquivo extensions.conf, ainda do servidor matriz, deve-se colocar o seguinte plano de discagem, sendo um caminho para todos os ramais IAX iniciado com o dígito 1 e seguidos de 3 quaisquer dígitos que ligando entre eles mesmo, e o outro com o dígito 2 seguido de quaisquer dígitos que ligaram para o servidor da filial, nota-se que no plano para filial tem a declaração do ramal seguido de dois pontos, a senha do ramal e após o IP do servidor filial, para autenticação entre os 2 servidores.

extensions.conf:

[general]
static=yes
writeprotect=no
priorityjumping=no
autofallthrough=yes
clearglobalvars=no
[globals]
[cluster]
exten => _1xxx,1,Dial(IAX2/${EXTEN},20,tT)
exten => _1xxx,n,Hangup()
exten => _2xxx,1,Dial(IAX2/2000:2000@10.1.1.5/${EXTEN})
exten => _2xxx,n,hangup()

Configuração do servidor secundário filial:

Agora no arquivo iax.conf do servidor filial deve-se colocar os ramais de uma forma parecida, mas invertendo os ramais, declarando o 2000 como do servidor da filial e 1000 da matriz, da seguinte forma:

iax.conf:

[general]
bindport=4569
bindaddr=0.0.0.0
disallow=all
allow=ulaw
allow=gsm
[1000]
username=1000
secret=1000
host=dynamic
type=friend
auth=md5
trunk=yes
callerid="1000"
[2000]
username=2000
secret=2000
host=dynamic
type=friend
context=cluster
auth=md5
trunk=yes
callerid="2000"

No arquivo extensions.conf do servidor filial deve-se colocar o seguinte plano de discagem, sendo um caminho para todos os ramais IAX iniciado com o dígito 2 e seguidos de 3 quaisquer dígitos ligando entre eles mesmo, e o outro com o dígito 1 seguido de quaisquer dígitos que ligaram para o servidor da matriz.

Nota-se que no plano para os ramais da matriz tem a declaração do ramal seguido de dois pontos, a senha do ramal e após o IP do servidor matriz, para autenticação entre os 2 servidores.

extensions.conf:

[general]
static=yes
writeprotect=no
priorityjumping=no
autofallthrough=yes
clearglobalvars=no
[globals]
[cluster]
exten => _25x,1,Dial(SIP/${EXTEN},20,tT) ;Ramais SIP
exten => _25x,n,Hangup()
exten => _2xxx,1,Dial(IAX2/${EXTEN},20,tT)
exten => _2xxx,n,Hangup()
exten => _1xxx,1,Dial(IAX2/1000:1000@10.1.1.4/${EXTEN})
exten => _1xxx,n,hangup()

Página anterior    

Páginas do artigo
   1. Asterisk realtime e Trunk
   2. Configurando a comunicação Asterisk entre dois servidores (Trunk)
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Novo método de instalação do Arch Linux (systemd)

Como criar uma distribuição baseada no Debian usando o programa Live-Build

Configurando Wireless-USB Bright-0091

Passando o Slackware 10.2 em Inglês para o Português

Configuração para desligamento automatizado de Computadores em um Ambiente Comercial

  
Comentários
[1] Comentário enviado por tutu_bh em 26/07/2010 - 11:43h

Amigo ulisses.santos antes de qualquer coisa gostaria de parabenizar pela iniciativa e qualidade do artigo, com sua autorizacao gostaria de fazer algumas observacoes que sao uteis na implentacao do ARA.

1º Tive que acresentar os modulos no arquivo /etc/asterisk/modules.conf

load => cdr_addon_mysql.so
load => res_config_mysql.so

so depois disso ele comecou a fazer a busca dos ramais no mysql.

2º No arquivo res_mysql.conf.

o contexto deve ser alterado para [asterisk] ao inves de [default] .

3º outro parametro que pode ser alterado no sql e no numero de casas do campo language, esta setado apenas 2 impossibilitado o pt_br

4º acrescentei o campo " allowsubscribe " como NO padrao para evitar toda hora a mensagem:

NOTICE[14725]: chan_sip.c:21470 handle_request_subscribe: Received SIP subscribe for peer without mailbox:

5º o campo "qualify" da tabela sip_buddies deve ser retirado ou setado como NULL pois o parametro "qualify" no Asterisk Realtime não é ultilizado, deve-se substituir pelo rtcachefriends = yes/no .

Ou ira ocorre o erro:
WARNING[14705]: chan_sip.c:24215 build_peer: Qualify is incompatible with dynamic uncached realtime. Please either turn rtcachefriends on or turn qualify off on peer 'ramal' .


Estava pensando depois para complementar seu artigo fazer um sobre filas no mysql.

qualquer duvida estou a disposicao. e espero ter ajudado alguem com essas dias.

qualquer contato profissional ou network ..rs..

alessandro.santos{arroba}teknisa.com
abraços;

OBS: para quem estar comecando, recomendo o livro " Asterisk na pratica " da editora " novatec " o auto é " Alexandre Keller", eu tambem fiz o curso na 4linux em SP. recomendo mas o curso tem 2 modulos sendo que poderia ser somente 1 pois o segundo modulo na pratica se aprende tranquilamente...

[2] Comentário enviado por ulisses.santos em 26/07/2010 - 13:12h

Valeu pela contribuição, eu usei este livro que você esta indicando para fazer a minha monografia muito bom mesmo.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts