1. Instalar o pacote libpri.
Entre no diretório '/usr/src/libpri-1.4.12/' e execute os comando:
# make
# make install
2. Instalar o pacote openr2.
# cd /usr/src/openr2-1.3.0/
# ./configure --prefix=/usr
# make
# make install
Obs.: Tem que ser nesse diretório para não ter problemas futuros.
3. Instalar o pacote do Asterisk.
# cd /usr/src/asterisk-1.6.2.20
# ./configure --prefix=/usr
# make
# make install
# make samples
# make config
Para saber se instalou o suporte a 'MFC/R2' execute:
# ldd channels/chan_dahdi.so | grep openr2
Obs.: Dentro do diretório onde está as fontes do Asterisk.
Se a resposta for: libopenr2.so.3 => /usr/lib/libopenr2.so.3 (0xb7ea9000)
Openr2 instalado, ok. E seu Asterisk com suporte a link r2d.
4. Configurar os canais para o Asterisk
Edite o arquivo:
# vi /etc/asterisk/chan_dahdi.conf
E cole o seguinte:
[trunkgroups]
[channels]
language=pt_BR
usecallerid=yes
hidecallerid=no
callwaiting=> yes
usecallingpres=> yes
callwaitingcallerid=yes
threewaycalling=yes
transfer=yes
cancallforward=yes
callreturn=yes
immediate=no
callerid=asreceived
faxdetect=both
loglevel=255
mfcr2_logging=all
mfcr2_call_files=yes
mfcr2_accept_on_offer=yes
dtmfmode=rfc2833
signalling=mfcr2
mfcr2_variant=br
mfcr2_get_ani_first=yes
mfcr2_max_ani=20
mfcr2_max_dnis=20
mfcr2_category=national_subscriber
mfcr2_allow_collect_calls=yes
mfcr2_double_answer=no
mfcr2_logdir=span1
mfcr2_advanced_protocol_file=/etc/asterisk/mfcr2_1.conf
rxgain=0.0
txgain=0.0
context=TR001
group=1
callgroup=1
pickupgroup=1
echocancel=no
echocancelwhenbridged=no
backwards=no
mfcr2_call_files=yes
channel => 1-15,17-31
signalling=mfcr2
mfcr2_variant=br
mfcr2_get_ani_first=yes
mfcr2_max_ani=20
mfcr2_max_dnis=20
mfcr2_category=national_subscriber
mfcr2_allow_collect_calls=yes
mfcr2_double_answer=no
mfcr2_logdir=span2
mfcr2_advanced_protocol_file=/etc/asterisk/mfcr2_2.conf
rxgain=0.0
txgain=0.0
context=TR002
group=2
callgroup=1
pickupgroup=1
echocancel=no
echocancelwhenbridged=no
backwards=no
mfcr2_call_files=yes
channel => 32-46,48-62
context=TR003
switchtype=euroisdn
signalling=pri_net
echocancel=yes
echocancelwhenbridged=yes
disallow=all
allow=ulaw
group=3
callgroup=0
pickupgroup=0
canpark=yes
amaflags=billing
accountcode=e1test
callprogress=yes
progzone=br
mohinterpret=default
mohsuggest=default
context=TR004
switchtype=euroisdn
signalling=pri_net
echocancel=yes
echocancelwhenbridged=yes
disallow=all
allow=ulaw
group=4
callgroup=0
pickupgroup=0
canpark=yes
amaflags=billing
accountcode=e1test
callprogress=yes
progzone=br
mohinterpret=default
mohsuggest=default
channel => 94-108,110-124
signalling=fxs_ks
context=analogico
busycount=5
busydetect=no
callprogress=no
pulsedial=no
echocancel=64
echocancelwhenbridged=64
rxgain=0.0
txgain=0.0
group=5
cidsignalling=dtmf
cidstart=polarity
relaxdtmf=yes
channel => 125-132
Depois crie o seguinte arquivo:
# vi /etc/asterisk/mfcr2_1.conf
E cole:
mf_gb_tones.unallocated_number=7
mf_gb_tones.reject_collect_call=7
timers.mf_back_resume_cycle=150
timers.mf_back_cycle=1500
timers.mf_fwd_safety=10000
timers.r2_metering_pulse=200
timers.r2_seize=8000
timers.r2_answer=80000
Salve e faça o seguinte:
# cp -p /etc/asterisk/mfcr2_1.conf /etc/asterisk/mfcr2_2.conf
Obs.: Teremos apenas 2 arquivos desses, pois só teremos as 2 primeiras posições como 'R2D'.
Reinicie a máquina.
Ao reiniciar entre no Asterisk.
# asterisk -rvvvvvvvv
CLI> dahdi show channels
Chan Extension Context Language MOH Interpret
pseudo default default
1 TR001 pt_BR default
2 TR001 pt_BR default
3 TR001 pt_BR default
4 TR001 pt_BR default
5 TR001 pt_BR default
CLI> mfcr2 show channels
Chan Variant Max ANI Max DNIS ANI First Immediate Accept Tx CAS Rx CAS
1 BR 20 10 Yes No IDLE IDLE
2 BR 20 10 Yes No IDLE IDLE
3 BR 20 10 Yes No IDLE IDLE
4 BR 20 10 Yes No IDLE IDLE
Se aparecer isso, aparecerão todos os seus canais, máquina OK para testes com E1.
Obs.1: Realizado testes com um PABX 141 Digital Intelbras com a sinalização R2D e Impacta 220 Intelbras nas 2 sinalizações (R2D e ISDN/RDSI) e testes ok.
Ligação de 5 horas sem quedas. Não foi possível um teste com Link E1 de uma operadora. Se tiver alguém que possa fazer esse cenário e postar pra gente como
foi a experiência será muito bom.
Obs.2: Para a Impacta funcionar corretamente em ISDN/RDSI fazer o seguinte, ir em: Portas -> Tronco E1 -> Link 1 (ser for o link 1) -> Programações
No item 'Tipo de sincronismo CRC 4', no item Plano de numeração padrão colocar dados e, por fim, no item 'Tipo de numeração padrão', colocar Nacional.