Lomadee, uma nova espécie na web. A maior plataforma de afiliados da América Latina.

sexta-feira, maio 02, 2008

Asterisk com MFC/R2 - OpenR2

Durante muito tempo, manter um servidor Asterisk utilizando links de telefonia com sinalização MFC/R2 era uma dor de cabeça para qualquer um que fosse responsável pelo sistema.

A única solução disponível por muito tempo foi a Unicall desenvolvida pelo Steve Underwood, um conjunto de bibliotecas e um channel driver para Asterisk, com dependências complexas entre suas versões. Não era simples manter um sistema com esta solução, e, era comum problemas com o sistema, muitas vezes, tornnando-o indisponível.

Eis que há umas três semanas, estava discutindo sobre o assunto no #asterisk-br e resolvi baixar a última versão do código do Steve para criar pacotes de simples instalação e manutenção para aqueles que dependem desta sinalização (MFC/R2). Após algum tempo analisando o código, e consultando informações no Google, me foi inidicado o pacote mantido pelo Moisés Silva, o qual rapidamente baixei para verificar.

Instalei-o em um sistema de testes e senti a necessidade de atualizar alguns componentes, e eis que me veio o problema das depenências entre as versões das diversas bibliotecas que compõem a Unicall.

Parei um pouco para consultar o andamento da solução de um bug junto ao Mantis da Digium e me surpreendi com um patch implementando uma nova feature no chan_zap/chan_dahdi, essa feature era o suporte a MFC-R2 tão esperado por muitos administradores de sistemas Asterisk que utilizam esta sinalização.

A solução proposta pelo Moisés Silva é genérica, composta de um patch ao chan_zap.c e uma biblioteca de sinalização chamada OpenR2. Li as instruções no blog e no Mantis, baixei os sofwares e iniciei os testes. Em pouco tempo, construi um SPEC para criar um pacote RPM da biblioteca, compilei e instalei o Zaptel e o Asterisk com o patch, configurei a placa e magicamente tudo funcionou (após algumas debug sessions com o Moisés Silva). Realizei e receber chamadas e faxes sem nenhum problema.

Ficou curioso para testar a solução? Então, lance mão de um link com sinalização MFC/R2, uma placa de telefonia compatível com o Zaptel e siga os passos descritos abaixo para ter seu sistema em funcionamento. O guia abaixo é para o Asterisk 1.6, que ainda não é estável o suficiente para produção. Estão disponóveis patch's e pacotes do Asterisk 1.2 e 1.4 com suporte a OpenR2, mais seguro para servidores em produção. Muito provavelmente, o suporte a MFC/R2 estará disponível nativamente no Asterisk 1.6.1, isto vai depender apenas do retorno dado por todos aqueles que estão testando a solução.

Instalando o Asterisk com MFC/R2 utilizando a OpenR2

Uma versão atual do DAHDI (ou Zaptel) será suficiente, você poderá usar a branch 1.4, para tanto, basta realizar um checkout, configurar e instalar como mostrado abaixo:

svn co http://svn.digium.com/svn/zaptel/branches/1.4 zaptel
cd zaptel
./configure
make
make install
make config

Uma vez instalado este pacote de software, vamos baixar a OpenR2, compilar e instalar. Se não for hackaer esta biblioteca, instale o pacote (pré-)release:

OpenR2 via pacote de (pré-)release

wget -c http://openr2.googlecode.com/files/openr2-1.0.0-rc1.tar.gz
tar zxvf openr2-1.0.0-rc1.tar.gz
cd openr2-1.0.0-rc1
./configure
make
make install


OpenR2 via SVN

svn checkout http://openr2.googlecode.com/svn/trunk/ openr2
cd openr2
./configure
make
make install


Instale a LibPRI em seu sistema, de forma a completar dependências do Asterisk.

svn co http://svn.digium.com/svn/libpri/branches/1.4 libpri
cd libpri
./configure
make
make install

Chegou a hora de instalar o Asterisk, e para isto, precisaremos da branch onde o desenvolvimento do suporte à MFC/R2 está ocorrendo. Lembre-se de que as dependências padrões do Asterisk precisam estar disponíveis no sistema.

svn co http://svn.digium.com/svn/asterisk/team/moy/mfcr2 asterisk
cd asterisk
./configure
make
make install
make samples

Se você chegou aqui sem problemas, significa que seu sistema já possui suporte a MFC/R2 e é hora de testar e reportar sucessos ou falhas no Mantis. Para isto, precisaremos configurar quatro arquivos, considerando um link MFC/R2 Embratel de 30 canais, são eles: zaptel.conf, logger.conf, zapata.conf e extensions.conf

/etc/zaptel.conf

loadzone = br
deafultzone =br

span=1,1,0,cas,hdb3
cas=1-15:1101
cas=17-31:1101
dchan=16


/etc/asterisk/logger.conf

console => notice,warning,error,debug

/etc/asterisk/zapata.conf

[trunkgroups]

[channels]
usecallerid=yes
callwaiting=yes
usecallingpres=yes
callwaitingcallerid=yes
threewaycalling=yes
transfer=yes
canpark=yes
cancallforward=yes
callreturn=yes
echocancel=yes
echocancelwhenbridged=yes

signalling=mfcr2
mfcr2_variant=br
mfcr2_get_ani_first=no
mfcr2_max_ani=20
mfcr2_max_dnis=4
mfcr2_category=national_subscriber
mfcr2_logdir=span1
mfcr2_logging=all

context=embratel
group=0
callgroup=0
pickupgroup=0
channel => 1-15
channel => 17-31


/etc/asterisk/extensions.conf


[embratel]

exten => _XXXX,1,Answer()
exten => _XXXX,2,Dial(SIP/1000,,T)
exten => _XXXX,3,Hangup()

exten => _XXXXXXXX,1,Dial(Zap/g0/${EXTEN},,T)
exten => _XXXXXXXX,n,Congestion()
exten => _XXXXXXXX,n,Hangup()

exten => _0800.,1,Dial(Zap/g0/${EXTEN},,T)
exten => _0800.,n,Congestion()
exten => _0800.,n,Hangup()

Carrege os módulos do DAHDI (Zaptel) e sua placa de telefonia, execute a verificação da configuração (ztcfg -f), inicie o Asterisk, conecte no console e realize testes de recepção e realização de ligaões. Reporte o sucesso ou falhas com detalhes do ambiente (e logs quando em falhas). No console do Asterisk, veja o comando mfcr2 e seus subcomandos para obter mais detalhes sobre o estado atual do seu sistema.

Onde relatar sucessos ou falhas?

http://bugs.digium.com/view.php?id=12509

Onde obter ajuda?

#asterisk-br em irc.freenode.net

Qual o site do projeto?

http://www.libopenr2.org/

Onde acho os arquivos Spec para construir RPM's

http://people.debian-ce.org/skarmeth/arquivos/libopenr2.spec
http://people.debian-ce.org/skarmeth/arquivos/asterisk.spec

43 comentários:

Unknown disse...

Caro Alexandre, maneiro, mas só funciona para 1.6, ou outras versões também?

Alexandre Alencar disse...

Olá, lhe enviei um e-mail com maiores detalhes, mas funciona apenas no 1.6 (branch MFC/R2).

Moy disse...

www.libopenr2.org now has patches for Asterisk 1.2 and 1.4, therefore, now openr2 works in 1.2, 1.4 and 1.6

Unknown disse...

Ola Alexandre,

Qual seria a configuração para a Brasil Telecom ?
mfcr2_max_ani=20
mfcr2_max_dnis=4
Isso está correto ?
Obrigado

Alexandre Alencar disse...

As informações relativas ao ANI e DNIS podem mudar de operadora para operadora. Desta forma, o ideal é entrar em contato com a operadora e perguntar quantos dígios ANI e DNIS ela aceita/envia.

Unknown disse...

Caro alexandre, estou encontrando um unico problema ao iniciar o asterisk, com isso nao consigo testar. Voce poderia me ajudar.
Erro ao iniciar o asterisk:
[Jun 25 18:49:18] WARNING[2786]: loader.c:379 load_dynamic_module: Error loading module 'chan_zap.so': libopenr2.so.0: cannot open shared object file: No such file or directory

Alexandre Alencar disse...

A,

Este erro ocorreu porque você não instalou corretamente a OpenR2.

Verifique se existe o arquivo libopenr2.so.* em seu diretório /usr/lib (sistenas 32 bits) ou /usr/lib64 (sistemas 64 bits)

Note que no configure para sistemas 64 bits, é necessário passar o parâmetro --libdir=/usr/lib64 para que o build system seja configurado corretamente. Isto é válido para todos os ítens.

Se preferir, entre em contato pelo Google Talk, meu contato está disponível no blog.

Unknown disse...

Alexandre

Agora fiz os procedimentos e funcionou normalmente.
No parametro mfcr2_category=national_subscriber
quais as outras possibilidades e para que servem cada uma?
Obrigado pela ajuda

Unknown disse...
Este comentário foi removido pelo autor.
ramon disse...

Parabém pelo post Alexandre, muito bom mesmo.
Eu saí do unicall para o openr2 para bloquear ligações a cobrar, e tudo funcionou muito bem. Porém, com unical eu podia configurar o tempo de entre dígitos vindo do pabx comum e agora nao sei como fazer. Agora a pessoa tem que digitar o número bem rápido para poder completar a ligação. Alguém tem alguma sugestão?

a configuração antiga ficava com esta linha(que com o openr2 parece não ser mais válida):
protocolvariant=br,20,4,x,max-seize-wait-ack=3000

Alexandre Alencar disse...

ramon,

Veja o arquivo r2proto.conf na revisão 51 da OpenR2 há timers
configuráveis para a maioria dos parâmetros.

Unknown disse...

alexandre,

tenho em producao um aterisk 1.4 com o open r2 a um mes. estou notando que algumas chamadas de entrada nao voltam para o estado IDLE, ficando sempre bloqueadas. quando isso acontece tambem nao consigo parar o asterisk com o "stop now", soh usando kill -9 "pid".. alguma dica?

S.O. : debian
placa da digium de 4 span
usando 1 E1 da embratel
zapata.conf igual ao do topico.

# mfcr2 show channels

31 BR 20 4 No BLOCK SEIZE

obrigado!

Alexandre Alencar disse...

Olá léo,

Você pode usar o mfcr2 set idle ou blocked canal para restaurar o estado consistente do canal. Se ainda existir um canal ativo no asterisk (show channels, core show channels), você pode usar o soft hangup tech/canal para matar o canal, talvez isso apenas já resolva o problema (caso a ligação fique presa, e não o canal).

Veja se está usando a última release (que é a 52) da OpenR2 (mfcr2 show version).

Alexandre Alencar disse...

Léo,

acho que estás usando uma versão mais antiga da OpenR2.

A operadora não vai 'limpar' a chamada em menos de 30 segundos (após a desconexão) e portanto, precisará de uma 'limpeza' forçada.

Se o primeiro caso que te indiquei não resolver, creio que seu problema seja resolvido na revisão > 52 (ainda a ser liberada) para tratar deste tipo de problema.

Unknown disse...

estava utilizando a revisao 36! atualizei para a 52 hoje as 12h. ja esta em producao! vou continuar observando e posto o resultado!
obrigado!

Alexandre Alencar disse...

Léo,

É importante reportar problemas no Mantis

http://bugs.digium.com/view.php?id=12509

Isso ajuda no desenvolvimento do suporte a MFC/R2 no Asterisk, bem como na avaliação futura para que se torne uma feature nativa do Asterisk (1.6.1 quem sabe).

Unknown disse...

Prezado Alexandre,

Parabéns pelo post. Saberia me dizer qual a melhor forma de manifestar o interesse de que a OpenR2 seja incluída no projeto do Asterisk de forma nativa ?

Abraços,
Alberto

Alexandre Alencar disse...

Alberto,

Realizando testes e reportando os resultados no Mantis [1]. Pedidos de suporte devem ser direcionados à lista da OpenR2 [2]

Mantis Digium - MFC/R2 Patch
[1] http://bugs.digium.com/view.php?id=12509

Asterisk OpenR2
[2] http://lists.digium.com/mailman/listinfo/asterisk-r2

Welton Rodrigo Torres Nascimento disse...

Parabéns, cara.

Atualmente meu órgão usa as placas digivoice. Tínhamos muito problemas com ela, relacionados em parte ao driver bugado, mas hoje em dia tá tudo funcionando 100%.

Um abraço.

Unknown disse...

Olá Alexandre!

Estou trabalhando com o openr2 a pouco tempo. Gostaria de saber mais sobre o arquivo r2proto.conf. Algo como: onde colocá-lo; se preciso executar algum comando específico no asterisk para que ele leia este arquivo. Já fiz diversas alterações neste arquivo, mas não obtido êxito em nenhuma delas

Alexandre Alencar disse...

Olá Luís Felipe,

O arquivo r2proto.conf pode ser armazenado em qualquer lugar onde o processo do Asterisk possa ler. Por questões de organização, ele vai por padrão para /etc/openr2/r2proto.conf

Para informar à OpenR2 que você está personalizando o protocolo (r2proto.conf serve justamente para isto), você deve sertar o parâmetro mfcr2_advanced_protocol_file no arquivo /etc/asterisk/chan_dahdi.conf. Exemplo:

mfcr2_advanced_protocol_file = /etc/openr2/r2proto.conf

Sempre que você fizer uma mudança neste arquivo, você deverá recarregar o chan_dahdi.so digitando no console

module reload chan_dahdi.so

Josué Conti - Telecomunicações e Redes disse...

Alexandre, tudo bem?
Muito bom seu post, realmente é de grande valia a toda a comunidade asterisk.
Por favor, poderia me informar qual versão de openr2 disponivel e estável para o asterisk-1.2?Onde posso conseguir estes pacotes?
Desde já, muito obrigado

Att

Josué

Alexandre Alencar disse...

Olá Josue Conti,

Os patch's e instruções a OpenR2 podem ser encontrados no site do projeto no Google Code [1]. A última versão do patch para a série Asterisk 1.2 foi feira para a versão 1.2.31, mas você pode aplicá-lo a versão 1.2.33 sem problemas.

[1] http://code.google.com/p/openr2/downloads/list

Josué Conti - Telecomunicações e Redes disse...

OLá Alexandre, muito obrigado pela sua atenção.
Apenas uma dúvida: estou usando o asterisk -1.2.31 com os pacotes da openr2 para asterisk-1.2 e o patch aplicado corretamente.Os canais subiram, aparecem como IDLE,porém tentando usar um teste de loop, para testar os canais, e iniciar um playback, reporta o seguinte erro:
-- Attempting call on Zap/g1/5555 for 1@teste_loop:1 (Retry 1)
Jun 25 20:15:12 NOTICE[25874]: chan_zap.c:1371 zt_r2_on_call_init: New MFC/R2 call detected on chan 1.
Jun 25 20:15:20 NOTICE[25874]: chan_zap.c:1417 zt_r2_on_call_offered: MFC/R2 call offered on chan 1. ANI = 1150707000, DNIS = 5555, Category = National Subscriber
Jun 25 20:15:20 NOTICE[26088]: chan_zap.c:1486 zt_r2_on_call_accepted: MFC/R2 call has been accepted on chan 32
Jun 25 20:15:20 NOTICE[26088]: chan_zap.c:1502 zt_r2_on_call_accepted: Call accepted on forward channel 32
Jun 25 20:15:20 NOTICE[25874]: chan_zap.c:1486 zt_r2_on_call_accepted: MFC/R2 call has been accepted on chan 1
-- Executing Dial("Zap/1-1", "zap/g0/5555||tT") in new stack
-- Called g0/5555
Jun 25 20:15:20 NOTICE[25876]: chan_zap.c:1371 zt_r2_on_call_init: New MFC/R2 call detected on chan 33.
-- Hungup 'Zap/32-1'
Jun 25 20:15:23 NOTICE[26088]: pbx_spool.c:269 attempt_thread: Call failed to go through, reason 3
Jun 25 20:15:23 NOTICE[26092]: chan_zap.c:1589 zt_r2_write_log: Chan 1 - Far end disconnected. Reason: Normal Clearing
Jun 25 20:15:23 NOTICE[26092]: chan_zap.c:1546 zt_r2_on_call_disconnect: MFC/R2 call disconnected on chan 1
-- Hungup 'Zap/2-1'
== Spawn extension (default, 5555, 1) exited non-zero on 'Zap/1-1'
Jun 25 20:15:23 NOTICE[26092]: chan_zap.c:1457 zt_r2_on_call_end: MFC/R2 call end on chan 1
-- Hungup 'Zap/1-1'

A chamada que entraria pelo 2° link E1, desconecta, sem iniciar o playback, por que será?
Poderia me dar um auxilio?

Josué Conti - Telecomunicações e Redes disse...

Alexandre, bom dia.
Estou tentando efetuar o teste do
e configurei o r2
Reporta o seguinte conforme http://pastebin.com/m583f176c

O que pode ser?

Abraço e obrigado.

Alexandre Alencar disse...

Josué Conti,

No final do seu arquivo de configuração:

channel=1-15
channel=17-31
dnid=1150707000
cid=5555
caller=no
channel=32-46
channel=48-62

Faça assim

channel=1-15
channel=17-31
dnid=1150707000
cid=5555
caller=yes

channel=32-46
channel=48-62
caller=no

Assim, os 30 primeiros canais farão chamadas para os 30 últimos.

Josué Conti - Telecomunicações e Redes disse...

Alexandre, boa tarde.
Acho que agora está, OK! deixei apenas os canais 1 e 2 32 e 34 para testes e não ter um log muito grande. Será que agora está ok!?

http://pastebin.com/d50f0c41a

Abraço e muito obrigado

Alexandre Alencar disse...

Olá Josué Conti,

Tudo certo com sua instalação no que diz respeito a OpenR2. Veja agora a instalação do Asterisk, ligue na pública e veja se consegue usar sua linha R2.

Josué Conti - Telecomunicações e Redes disse...

Muito obrigado Alxandre, farei isso ainda hoje e volto um feedback pra você.
Abração e sucesso!
Josué

Unknown disse...

Alexandre, boa tarde!
Tenho uma dúvida, queria ver se pode me ajudar:
Gostaria de saber se tenho como alterar o ani ou callerid da chamada usando a openr2 quando faço ligações externas, sem setar o callerid do asterisk, pois gostaria que o mesmo continuasse com o valor do ramal que fez a ligação, por exemplo. Sabe se tem como?
Obrigado!

Alexandre Alencar disse...

Olá Zeca, boa tarde,

Você pode fazer isso usando o Set(CALLERID=NUMERO) antes de executar o Dial.

aiz disse...

Ola, eu to testando asterisk 1.6rc2... e da um erro assim: ERROR[3090]: chan_dahdi.c:16510 process_dahdi: Unknown signalling method 'mfcr2' at line 1225

(Asterisk 1.6.2.0~rc2-0ubuntu1)

Brigado!
Mariano

Alexandre Alencar disse...

Mariano (aiz),

respondi seu questionamento na lista asterisk-r2.

Asterisk Sensacional disse...

Boa tarde,

Tenho o seguinte cenario :
- Asterisk 1.4.24.1, oslec + openr2 1.2.0, E1 PXE 100 Intelbras.
- Não tenho prob. nenhum ref. as minhas ligações, porém quando instalei a openr2 1.2.0 não consigo mais bloquear as ligações a cobrar.

Grato pela ajuda,
Márcio Ortolan

Alexandre Alencar disse...

Márcio Ortolan,

Preciso que dê mais detalhes em relação a configuração do seu link

Operadora
parâmetros no chan_dahdi.conf

Alexandre Alencar disse...

Márcio Ortolan,

No Google Code tem um novo patch que corrige o problema. Você precisará atualizar o Asterisk (1.4.28+) e a OpenR2 (1.2.0).

Unknown disse...

Alguem esta tendo problemas de sinalizacao com numeros que nao existem? Ele sempre me retorna 0 no HANGUPCAUSE, ao inves de 1. Alguem esta com o mesmo problema?

Jovino Gonçalves disse...

Alexandre, me dah uma luz aqui! É seguinte tô usando elastix 1.6 que já com openr2 nativo em um servidor com uma placa digium e122p. A Telemar/Oi instalou o Tc Digitronco a placa sinaliza tudo OK[Green]. Mas o técnico de campo(telemont) disse que meu pabx eh imcompatível. Sei que não é! E acho que as linhas não estão ativas porque CAS RX tah BLOCK. Você poderia me tirar essa dúvida? O problema está no Eslastix ou são minhas linas que estão down?

Aqui vão minha configurações:

/etc/dahdi/system.conf
span=1,1,0,cas,hdb3
cas=1-15:1101
cas=17-31:1101
dchan=16
echocanceller=oslec,1-15,17-31
loadzone = br
defaultzone = br



pbx-alem*CLI> mfcr2 show channels
Chan Variant Max ANI Max DNIS ANI First Immediate Accept Tx CAS Rx CAS
1 BR 20 20 Yes No IDLE BLOCK
2 BR 20 20 Yes No IDLE BLOCK
3 BR 20 20 Yes No IDLE BLOCK
4 BR 20 20 Yes No IDLE BLOCK
5 BR 20 20 Yes No IDLE BLOCK
6 BR 20 20 Yes No IDLE BLOCK
7 BR 20 20 Yes No IDLE BLOCK
8 BR 20 20 Yes No IDLE BLOCK
9 BR 20 20 Yes No IDLE BLOCK
10 BR 20 20 Yes No IDLE BLOCK
11 BR 20 20 Yes No IDLE BLOCK
12 BR 20 20 Yes No IDLE BLOCK
13 BR 20 20 Yes No IDLE BLOCK
14 BR 20 20 Yes No IDLE BLOCK
15 BR 20 20 Yes No IDLE BLOCK
17 BR 20 20 Yes No IDLE BLOCK
18 BR 20 20 Yes No IDLE BLOCK
19 BR 20 20 Yes No IDLE BLOCK
20 BR 20 20 Yes No IDLE BLOCK
21 BR 20 20 Yes No IDLE BLOCK
22 BR 20 20 Yes No IDLE BLOCK
23 BR 20 20 Yes No IDLE BLOCK
24 BR 20 20 Yes No IDLE BLOCK
25 BR 20 20 Yes No IDLE BLOCK
26 BR 20 20 Yes No IDLE BLOCK
27 BR 20 20 Yes No IDLE BLOCK
28 BR 20 20 Yes No IDLE BLOCK
29 BR 20 20 Yes No IDLE BLOCK
30 BR 20 20 Yes No IDLE BLOCK
31 BR 20 20 Yes No IDLE BLOCK

O que mais me intriga eh que a coluna do RxB do dahdi_tool fica sempre em 11111-111111 quando inicio o asterisk.

Unknown disse...

Alexandre, estou tentando sua configuração no Asterisk 11, mas não está funcionando:
http://www.mail-archive.com/asteriskbrasil@listas.asteriskbrasil.org/msg79008.html

Você pode ajudar?

Unknown disse...

Alguém saberia me dizer se as configurações do MFCR2 usando o OPENR2 são globais para todas as SPANs ou se consigo restringir apenas para um ou outra SPAN?

A pergunta é pq eu gostaria de habilitar o r2proto.conf apenas para a SPAN1 que me liga com a EMBRATEL sem aftar a SPAN2 ligada ao meu PABX antigo (Siemens Hipath 1150).

Valeu pessoal!

Alexandre Alencar disse...

Como nas demais configurações do Asterisk, você define o comportamento e os canais afetados...

mfcr2_=valor1
channel => a-b

mfcr2_=valor2
channel => c-d

etc

Unknown disse...
Este comentário foi removido pelo autor.
Unknown disse...

Obrigado pelo retorno. Apesar da minha config já estar como sugerido confesso que me deu uma nova luz para a tentativa que segue descrita abaixo.

Acho que descobri o problema! :-D

No caso do parâmetro "mfcr2_advanced_protocol_file" se você não especificá-lo novamente antes dos canais da SPAN2 ele aplica para todos os canais.

Então acredito ter conseguido resolver aplicando da seguinte forma.

...
mfcr2_advanced_protocol_file=/etc/asterisk/span1_r2proto.conf
channel => 1-15,17-31

...
mfcr2_advanced_protocol_file=/etc/asterisk/span2_r2proto.conf
channel =>32-46,48-62

####################################

Aproveitando o post.
Tenho a sensação de que o tempo entre o envio de um digito e outro é muito grande. Mas como não sei o que é normal para uma instalação E1 MFCR2 que esteja OK fico meio sem referência. No meu tá dando 200ms como pode ver abaixo.

[22:08:54:033] [Thread: 3062643568] [Chan 3] - M - Sending DNIS digit 8
[22:08:54:033] [Thread: 3062643568] [Chan 3] - M - MF Tx >> 8 [ON]
[22:08:54:033] [Thread: 3062643568] [Chan 3] - M - Group A DNIS request handled
[22:08:54:133] [Thread: 3062643568] [Chan 3] - M - MF Rx << 1 [ON]
[22:08:54:133] [Thread: 3062643568] [Chan 3] - M - Attempting to cancel timer timer 0
[22:08:54:133] [Thread: 3062643568] [Chan 3] - M - Cannot cancel timer 0
[22:08:54:133] [Thread: 3062643568] [Chan 3] - M - MF Tx >> 8 [OFF]
[22:08:54:233] [Thread: 3062643568] [Chan 3] - M - MF Rx << 1 [OFF]
[22:08:54:233] [Thread: 3062643568] [Chan 3] - M - Sending DNIS digit 0

Isso é lento? Se sim, consigo configurar?

Obrigado! ;-)