Fórum de Suporte Digivoice
Você não está logado.
Bom dia pessoal, tenho um asterisk com Digivoice VB3030 ativo há quase 4 meses e até hoje só tive um problema (por três vezes).
Nessas três vezes quando alguém liga para o meu asterisk dá sinal de ocupado ou simplesmente fica mudo, este 'sintoma' (quando começa a acontecer) é intermitente. Na CLI do asterisk fica aparecendo várias vezes (várias mesmo):
-- Ringing on port 1 - callstate=9
Se eu dou um 'dgv reset' continua o mesmo problema
Se eu reinicio o asterisk (stop now... asterisk &) o problema é 'resolvido' e volta tudo ao normal
Essa máquina está ligada faz 5 dias e o problema só começou agora (faz 1 hora)
Não sei se isso ajuda, mas:
http://pastebin.ca/1002833
http://www.pastebin.ca/1002889
http://www.pastebin.ca/1002891
O que percebo é que quando começa esse problema... apenas as ligações que passam pela porta 1 dá problema (tanto entrando quanto saindo)
Offline
Marcelo,
Também estou tendo este problema, em algumas máquinas com a placa VB6060. Os comandos 'dgv show channels' e 'dgv show alarms 1' funcionam normalmente, como se tudo estivesse OK, mas na cli aparece a mesma mensagem...
Quando isto acontece, o comando 'restart now' no asterisk não funciona, é necessário matar o processo e iniciar novamente. Utilizo a versão Channel Driver Version: 0.9.9 Firmware Versions: |_ Card 1 - Version 35ah.
Asterisk 1.2.24, em um Debian Etch. O servidor é um Pentium(R) 4 CPU 3.20GHz.
Este problema ocorre comigo aproximadamente uma vez por semana, e olhei nos logs aparentemente não há erro nenhum. Como se o Channel Driver parasse de responder.
Alguma luz do suporte da Digivoice ?
Offline
Isto aconteceu comigo quando eu usava
voicerlib-4.0.9.5
dgvchannel-0.9.5
Hoje eu estou usando
voicerlib-4.0.9.8
dgvchannel-0.9.9
E tenho o mesmo problema.
Uma pessoa que tem bastante conhecimento com digivoice me pediu para ligar na operadora, reclamar que a porta 1 está presa e exigir que eles monitorassem essa porta. Ainda não fiz isso... pois sei que vai ser um parto conversar com a operadora, queria arrumar outra maneira de resolver.
Offline
Por favor,
Poste seu digivoice .conf e o seu extensions.conf .
Offline
Digivoice.conf
[general]
allow_slinear=1
allow_ulaw=0
allow_alaw=0
allow_gsm=0
consolelanguage=br
[allportsconfig]
default_callprogress=cp_default.cfg
detectiontype=1
dialtype=1
afterdialpause=1000
ringbacktone1=tone1
ringbacktone2=tone1
ringbacktimes=1000,4000,1000,4000
busytone1=tone1
busytone2=tone1
busytimes=250,250,250,250
[groups]
group=1
ports=>1-30
group=2
ports=>31-60
[port_config]
signalling=r2mfc_ndis_fixed
context=from-pstn
language=pt_BR
accountcode=
musiconhold=
tx_gain=0
rx_gain=0
echocan=2
echotraining=400
callprogress=cp_default.cfg
silence_threshold=-30
relaxdtmf=1
gen_dtmf=1
gen_ringback=1
gen_busy=1
dtmf_to_asterisk=2
faxdetection=1
drop_tx_samples_factor=33
r2_country=br
max_digits_rx=4
cid_pos=2
category=1
group_b_value=1
port_id=
b_subscriber_hangup=0
wait_dialtone=1
dialtone_timeout=3000
ports=>1-30
;
;
signalling=r2mfc_ndis_variable
context=from-pabx
language=pt_BR
accountcode=
musiconhold=
tx_gain=-6
rx_gain=0
echocan=2
echotraining=400
callprogress=cp_default.cfg
silence_threshold=-24
relaxdtmf=1
gen_dtmf=1
gen_ringback=1
gen_busy=1
dtmf_to_asterisk=2
faxdetection=1
drop_tx_samples_factor=33
r2_country=br
min_digits_rx=1
max_digits_rx=20
interdigit_timeout=2000
cid_pos=2
category=1
group_b_value=1
port_id=
b_subscriber_hangup=0
wait_dialtone=1
dialtone_timeout=3000
ports=>31-60
[e1_config]
e1_sync=1
use_crc4=0
span=1,cas
;span=1,ccs,cpe,euroisdn,overlapdial,local,local
span=2,cas
cards=>1
O extensions está assim:
[from-pstn]
exten => _30XX,1,Dial(Dgv/G2/${EXTEN},75,tT)
[out-pstn]
exten => _X.,1,Dial(Dgv/g1/${EXTEN},75,tT)
Offline
leandroaugusto,
Mude o parâmetro context da porta que está ligada o pabx para "out-pstn", no seu digvoice.conf está como "from-pabx". O "from-pabx" não está no seyu extensions.conf .
Altere também os contextos colocando Hangup no final:
[from-pstn]
exten => _30XX,1,Dial(Dgv/G2/${EXTEN},75,tT)
exten => _30XX,n,Hangup()
[out-pstn]
exten => _X.,1,Dial(Dgv/g1/${EXTEN},75,tT)
exten => _X.,n,Hangup()
Offline
Desculpa Felipe, mas na verdade o contexto real do Asterisk está correto, na hora de postar que coloquei errado. Da forma que está ali não iria nem funcionar. O Hangup está em todas as extensions, mas não colei no post ali.
O problema realmente não é este, acontece que simplesmente o channel driver "trava", ele para de responder. Se fosse erro de configuração ou de dialplan o erro ficaria mais evidente.
Lê o primeiro post do MarceloPorks, o erro que ocorre é:
-- Ringing on port 1 - callstate=9
O que significa o callstate=9 ? Partindo desta premissa já podemos tentar outra solução, pois em modo normal de funcionamento o callstate fica igual a 1.
-- Ringing on port 29 - callstate=1
-- DGV/59 is ringing
Em uma ligação recebida ele não atende, a chamada não chega até o asterisk, ele fica ringando com callstate=9 e não sai disto. Só reiniciando o chan_dgv.so para voltar a funcionar.
Obrigado.
Offline
Pois então,
Me falaram que 'callstate=9' ocorre quando a operadora retorna ocupado... agora não sei se esta informação procede, pois acho estranho quando alguém liga para meu asterisk, a operadora retornar para o meu asterisk o sinal de ocupado.
(se fosse em ligações 'saintes' faria sentido)
Agora, eu isolei no digivoice.conf a porta 1:
[port-config]
...
ports => 2-20
Entretanto não mudou nada. Depois de um tempo começou a dar problema na porta 2:
-- Ringing on port 2 - callstate=9
reiniciando o asterisk tudo volta ao normal
Offline
Estive conversando com o Leandro Augusto em particular.
Estamos desconfiados que por algum motivo estranho a vlib ou dgvchannel não fecha a porta em alguma situação. E por isto começa a dar este problema.
Como o problema não acontece toda hora, e uma vez que ele começa a acontecer não pára mais (até que seja feito um reboot do asterisk), creio que seria mais fácil de checar se o problema é o que desconfiamos, quando o problema estiver ocorrendo. Então, eu pergunto:
O pessoal da digivoice poderia nos dizer algum log ou algum comando que poderíamos usar para checar se essa 'desconfiança' procede?
Offline
No asterisk digite "show channels", ele mostrará quais os canais ativos no momento.
Offline
No 'post' anterior eu estava me referindo a algum outro comando, pois 'core show channels' não mostra nenhum canal preso.
Offline
Eu também tenho esse problema com minhas placas VB6060. Começa assim até que todos os canais DGV fiquem travados e não entra (mais comum) e nem sai ligação. Esse problema é muito grave e deveria receber melhor atenção do pessoal da Digivoice. O suporte técnico da Digivoice deveria preparar algum tipo de trace para encontrarmos a causa do problema, sem resposta é que não poderemos ficar.
Offline
Um comando que se pode verificar o canal durante esse erro é "dgv show channel 1", nesse caso o canal 1. Verifique o status do canal com esse comando e verifique digitando "show channels" se o canal realmente está ativo nesse momento.
Offline
Qual é o programa responsável por essa mensagem "-- Ringing on port XX - callstate=9" ?
Se for o driver da Digivoice, basta os desenvolvedores responderem o que significa isso.
Aqui comigo não acontece somente no canal 1, quando começa acontecer fica generalizado em tudo que é canal, ai não entram mais chamadas.
O pessoal do desenvolvimento deveria se pronunciar, pois nos orientaria melhor.
Offline
Confirmei que essa mensagem é enviada pelo channel driver Digivoice. Consta no programa chan_dgv.c, na linha 7701:
ast_verbose(VERBOSE_PREFIX_3 "Ringing on port %d - callstate=%x\n",EventContext->port, p->call_state);
Portanto, não há por que não aparecer o DESENVOLVEDOR e simplesmente dizer o que significa o tal código "callstate=9". Uma vez que ele dê essa informação, ficará bem mais fácil rastrear o problema.
Última alteração por Otaci (09/05/2008 10:50:31)
Offline