O procedimento de uma central que faz bloqueio automático à DDC é:
1. atender a ligação;
2. desligar a ligação;
3. atender novamente.
Em uma ligação à cobrar, no segundo passo do procedimento acima, a ligação cai, e, conseqüentemente, a ligação não é efetuada e o número de destino não vai pagar por esta ligação.
Em uma ligação normal, a ligação não cai no segundo passo, e as pontas conseguem estabelecer comunicação após o terceiro passo.
O que estava acontecendo, era que as ligações efetuadas pelo E1 com sinalização MFCR2 estavam caindo já no segundo passo. A chave para a solução do problema é recompilar a libmfcr2 editando o arquivo mfcr2.c e alterando o valor da linha mfcr2->clear_back_persistence_check de 0 para 3000, da seguinte maneira:
mfcr2->clear_back_persistence_check = 3000;O valor 3000, equivale à 3000ms, ou seja, 3 segundos. Quem me disse que é essa linha que tem que ser alterada no mfcr2.c foi o Dio Makibara - dioedu (grato novamente!!!), e no email que ele enviou em resposta à minha pergunta na lista AsteriskBrasil.org, o valor que o dioedu me informou foi 500 ou 1500. Conversando com o pessoal da BrasilTelecom de Brasília, eles me informaram que eu posso aumentar este valor. Aumentei para 3000 e para mim está funcionando bem.
Então, se você vai fazer uma nova instalação de um circuito E1 com sinalização MFCR2 e vai utilizar a documentação Asterisk + Sinalização MFCR2 (spandsp + libsupertone + libunicall + libmfcr2), antes de iniciar a compilação da libmfcr2, edite o arquivo mfcr2.c e altere o valor documentado acima, e depois siga o processo de instalação normalmente.
Se o seu circuito já está funcionando e você quer corrigir o problema, entre no diretório onde está o código-fonte do libmfcr2, rode make clean, edite o arquivo mfcr2.c de acordo com as orientações acima, e refaça a instalação (./configure --prefix=/usr/local ; make ; make install). Em seguida, recompile e reinstale o próprio Asterisk (não esqueça do chan_unicall.c e do Makefile modificado dentro do diretório channels).
É isso. Espero de alguma forma ter auxiliado você se chegou até aqui e conseguiu resolver o seu problema. Agradecimento ao Zuca da BrasilTelecom Brasília por ter informado muitos dados importantíssimos para a identificação e resolução do problema, e ao Dio Makibara (dioedu) por ter mostrado o "caminho das pedras" da solução do problema alterando o mfcr2.c.
Nenhum comentário:
Postar um comentário