Fórum de Suporte Digivoice
Você não está logado.
Temos um cliente que está usando o channel bank com canais FXO para se conectar com interfaces celulares.
Entretanto chamadas efetuadas através do channel bank com a interface celular apresentam problemas para detectar o atendimento.
O celular já atendeu a chamada, mas o ramal continua ouvindo ring back por alguns segundos.
Nestes canais está habilitado o call progress no dahdi.
A interface celular pode gerar inversão de polaridade no atendimento e vi que o channel bank é capaz de detecta-la. Esta inversão de polaridade pode ser usada para detectar corretamente o momento do atendimento?
Quais configurações precisam ser feitas para funcionar?
Obrigado,
Pedro Chau
Offline
wwmreckon
Interface Celular
Ligando uma Interface Celular nas portas FXO (E1 ou TDMoE):
- Deve-se tomar cuidado para verificar se há inversão de polaridade na
Interface Celular,
- Verificar se esta inversão é simples, ou seja, inverte no atendimento e
desinverte no desligamento da chamada, ou se é dupla, invertendo e
desinvertendo no início da chamada e fazendo o mesmo no fim da chamada.
Neste último caso o CB3000 não funcionará corretamente.
- Configurar o CB3000 TDMoE para verificar a inversão de polaridade.
Caso queira fazer testes, o arquivo a ser editado é o "arquivo de configuração do Channel Bank"
Deverá alterar o parâmetro "polarity", conforme as informações abaixo retiradas do manual do Channel Bank:
· Parâmetro polarity:
FXS: Inverte a polaridade do canal após o atendimento de B.
Podendo assumir os valores:
0 – Desabilita (Opção padrão);
1 – Habilita.
Ex.
polarity= 1
FXO: Tempo para a detecção de inversão de polaridade. O tempo
para a detecção de inversão de polaridade deverá ser configurado
para um valor após o período de transição, porquê se houver
variação abrupta de tensão durante a detecção de polaridade o
CB3000 poderá derrubar a chamada. Este parâmetro pode
assumir os seguintes valores:
0 – Desabilita detecção;
1 – Detecta a inversão de polaridade em 200ms.
Tempo entre 200 a 4000ms. (Valor padrão: 2000)
Ex.
polarity= 2000
____________________________
Luiz Antonio
Suporte Digivoice
Última alteração por luiz antonio (17/11/2011 08:26:10)
Offline
Luiz Antonio,
A interface celular que estamos usando tem inversão de polaridade simples, portanto o CB3000 é compatível, correto?
No CB3000 não configuramos o parametro polarity nas portas fxo que estão com a interface celular. Neste caso a detecção está ativa ou não?
Como saber se o valor de tempo ajustado para detecção de inversão está adequado ou não?
Quando o CB3000 detecta a inversão o que ocorre? No terminal do asterisk vou ver que a chamada foi atendida?
Obrigado,
Pedro Chau
Offline
Pedro
A interface celular que estamos usando tem inversão de polaridade simples, portanto o CB3000 é compatível, correto?
R= Sim.
No CB3000 não configuramos o parametro polarity nas portas fxo que estão com a interface celular. Neste caso a detecção está ativa ou não?
R= Não, por padrão o parâmetro polarity está em 0, ou seja desabilitado.
Como saber se o valor de tempo ajustado para detecção de inversão está adequado ou não?
R= O valor sugerido pelo nosso Departamento de Desenvolvimento é 2000, o comando para visualizar as configurações da porta específica é:
show channels + o número do canal
Ou se preferir, pode utilizar o show conf dentro do minicom, que irá mostrar todo o arquivo de configuração do Channel Bank.
Quando o CB3000 detecta a inversão o que ocorre? No terminal do asterisk vou ver que a chamada foi atendida?
Verá no console do Asterisk somente o número do canal quando tirar do gancho. Ao detectar a inversão o CB simplesmente manda o sinal para o Asterisk e
quando detecta novamente a inversão, a chamada é desligada.
Resumo, para habilitar o polarity, terá de fazer em txt um novo arquivo de configuração e deixar o polarity=2000
Abaixo segue um exemplo utilizando polarity retirado do manual.
Este exemplo mostra um arquivo conf do CB3000 configurado com
E1 de 30 juntores sem troca de MFC (Somente R2), 16 FXS, 14
FXO, canais 31, 32 desativados e protocolo R2 otimizado para ser
utilizado com o Asterisk em conjunto com placas E1 da Digivoice:
[e1_config]
e1_sync= 1
use_crc4= 0
mf_level= -13
e1_port_ocupation= fixed
[ext_config]
ext_port_ocupation= fixed
[port_config]
signalling= r2
access= free
min_digits_rx= 0
max_digits_rx= 16
min_digits_tx= 0
interdigit_timeout= 3000
port_id=
cid_pos= 1
category= 1
tx_gain= 0
rx_gain= 0
echocan= 0
echotaps= 64
echotraining= 900
silence_threshold= -30
bddc= 0
ddr_offset= 0
prefix=
ports => 1-30
signalling= fxs_direct
access= free
port_id=
cid_pos= 2000
tx_gain= 0
rx_gain= 0
echocan= 1
echotaps= 128
echotraining= 900
silence_threshold= -30
polarity= 2000
ports => 31-46
Configurações
Exemplo de um arquivo de configuração
signalling= fxo_direct
access= free
impedance= 600
port_id=
cid_pos= 1
min_digits_rx= 0
max_digits_rx= 16
min_digits_tx= 0
tx_gain= 0
rx_gain= 0
echocan= 1
echotaps= 128
echotraining= 900
silence_threshold= -30
polarity= 2000
prefix=
sufix=
supervision= 1
wait_supervision= 2000
wait_dialtone= 1
dialtone_timeout= 5000
hangup_time= 2000
interdigit_timeout= 5000
redirect=
ports=> 47-60
signalling= none
ports => 61-62
[end_conf]
_______________________
Luiz Antonio
Suporte Digivoice
Offline
Luiz Antonio,
Temos um channel bank com 16 canais fxo. Estamos usando seguinte arquivo de configuração:
[e1_config]
e1_enable= 0
e1_sync= 0
use_crc4= 0
mf_level= -13
e1_port_ocupation= fixed
[eth_config]
ip= 192.168.0.2
mask= 255.255.255.0
gateway= 192.168.0.1
[tdmoe_config]
tdmoe_enable= 1
tdmoe_subaddress= 0
tdmoe_ports= 16
tdmoe_sync= 1
mac_dest= 00:06:4f:8e:00:94
tdmoe_port_ocupation= fixed
[ext_config]
ext_port_ocupation= fixed
ext_port_expansion= 0
[port_config]
signalling= tdmoe_fxo
access= free
tx_gain= 0
rx_gain= 0
echocan= 0
silence_threshold= -30
ports => 1-16
signalling= fxo_direct
access= free
cid_pos = 1
tx_gain= 0
rx_gain= 0
echocan= 0
silence_threshold= -30
polarity = 1000
supervision = 1
ports => 101-116
[end_conf]
As interfaces de celular estão configuradas para gerar inversão de polaridade no atendimento e desinverter ao desligar.
Geramos uma chamada com o comando originate e programamos para tocar uma mensagem.
A chamada ainda está sendo discada, mas a mensagem já começa a tocar e quando efetivamente atendemos a chamada a mensagem está no meio.
A detecção de inversão não deveria detectar o atendimento e somente depois iniciar a mensagem?
Tentamos adicionar no chan_dahdi.conf os parâmetros:
answeronpolarityswitch=yes
hanguponpolarityswitch=yes
Mas neste caso a chamada é efetuada, atendemos, fica muda por alguns segundos e desliga.
Por que não conseguimos uma configuração que detecta corretamente o momento do atendimento?
Obrigado,
Pedro Chau
Offline
Pedro,
Existe uma ferramenta do Dahdi chamada Dahdi Tools na qual é possível verificar o estado da linha de cada canal. Utilizando esta ferramenta você pode ver se o CB3000 TDMoE efetivamente atendeu antecipadamente (antes do efetivo atendimento da chamada).
Um outro teste bom para fazer seria medir na linha da interface (que é ligada no CB3000 TDMoE), com um multimetro, que instante efetivamente a interface celular está dando a inversão de polaridade, pois muitas interfaces usam os tons para fazer a inversão e podem fazê-la em hora errada em alguns casos, pois uma coisa é verificar se houve a inversão na hora certa e outra é verificar se o CB3000 TDMoE repassou a inversão ao Asterisk.
Atenciosamente.
Patty,
Executei o dahdi_tool e na tela aparece para o link do cb3000:
Current Alarms: No alarms
â â Sync Source: Internally clocked
â â IRQ Misses: 0
â â Bipolar Viol: 0
â â Tx/Rx Levels: 0/ 0
â â Total/Conf/Act: 16/ 16/ 0
â â 1111111
â â 1234567890123456
â â TxA 1100110011011111
â â TxB 1111111111111111
â â TxC 1100110011011111
â â TxD 1111111111111111
â â
â â RxA 0000000000000000
â â RxB 1111111111111111
â â RxC 0000000000000000
â â RxD 1111111111111111
Como interpreto as informações TxA, TxB, TxC, TxD e RxA, RxB, RxC e RxD?
No comando show fx port aparecem códigos de estado dos canais:
Visualizando Estado das Portas FXS/FXO
=============================================
Ch:1 State: 10 Ch:2 State: 9 Ch:3 State: 9 Ch:4 State: 9 Ch:5 State: 9
Ch:6 State: 9 Ch:7 State: 9 Ch:8 State: 9 Ch:9 State: 9 Ch:10 State: 9
Ch:11 State: 9 Ch:12 State: 9 Ch:13 State: 9 Ch:14 State: 9 Ch:15 State: 9
Ch:16 State: 10 Ch:17 State: 0 Ch:18 State: 0 Ch:19 State: 0 Ch:20 State: 0
O que é o estado 9 e 10?
Existem algum log que indique que o cb3000 detectou a inversão de polaridade?
Abraço,
Pedro
Offline
Pedro,
Os bits RXA,RXB,RXC e RXD dão o estado que o Dahdi está recebendo do CB3000 TDMoE.
NxA 0
NxB 1
NxC 0
NxD 1 - IDLE
NxA 0
NxB 0
NxC 0
NxD 0 - RING
NxA 1
NxB 1
NxC 1
NxD 1 - RELEASE
NxA 1
NxB 1
NxC 1
NxD 1 - ANSWER
No CB3000 TDMoE temos os comandos que podem ser dados pela porta USB:
"show fx ports" para as portas analógicas FXO/FXS
"show eth ports" para as portas TDMoE
Atenciosamente.
Patty,
Os bits em RxA a RxD estão sempre:
RxA 0
RxB 1
RxC 0
RxD 1
Os bits TxA a TxD mudam:
Quando está com o canal livre fica:
TxA 0
TxB 1
TxC 0
TxD 1
Quando uma chamada é efetuada ocupando o canal fica:
TxA 1
TxB 1
TxC 1
TxD 1
Não existem mudanças entre a fase de ring e o atendimento, fica assim até a ligação ser desligada.
Abraço,
Pedro
Offline
Oi Pedro,
Pela sinalização do TDMoE (bits vistos no Dahdi_Tool) não é possível visualizar a inversão de polaridade.
Parece que há uma possibilidade no dahdi de fazer a detecção por um DTMF, porém ainda não descobrimos como.
Assim que tivermos uma posição, postaremos no fórum.
Atenciosamente.
Integrantes do Forum...
Solicito um auxilio para ajustes modulo FXO... (Tx-RX) que melhor se adapte para interface celular que não fique com "muito eco" e que o receptor (ouvinte) não fique " escutando" baixo demais. caso tenham alguma configuração agradeço as dicas
Offline
Olá não existe um ajuste padrão, pois cada tronco analógico ou interface celular poder estar com com uma qualidade de áudio diferente uma da outra (ruído, alto, baixo).
Comece com tx e rx em zero para verificar o que pode ser feito na hora de configurar, faça ajustes também em sua interface celular, isso pode resolver o seu problema.
Att,
Rodrigo Teodoro
Suporte Digivoice
Offline