[AsteriskBrasil] Auto Dial-Out

dioedu@yahoo.com.br dioedu em yahoo.com.br
Segunda Dezembro 19 19:01:02 BRT 2005


Valeu Caio,

Mas neste caso é para um plano de discagem que contenha Dial.

No meu caso, estou escrevendo uma aplicação que gera arquivos 
no /var/spool/asterisk/outgoing, fazendo com que o asterisk dispare ligações 
para os canais/destinos que eu quero, automaticamente. Não sou eu que efetua 
a discagem, portanto, ele não executará nenhuma rotina do plano de discagem 
até que ele detecte que o destino atendeu normalmente.
Então eu preciso saber se estas ligações deram algum problema e eu quero ter 
acesso a qual problema ocorreu (por exemplo, número ocupado, não atendimento, 
não existe canal disponível, etc).

No CLI do asterisk, vejo que o módulo pbx_spool.c gera uma mensagem que houve 
falha na entrega da chamada, razão 3. E estudando um pouco o código fonte 
(pbx_spool.c) Vi que ele trabalha com uma variável reason. Mas não achei 
nenhum local onde ele define os valores de reason e como ter acesso a essa 
variável sem precisar mexer no código fonte.

Na verdade, estou fazendo uns testes direto no código fonte, mas não é tão 
simples assim (é lógico, hehe). Por exemplo, tentei uma coisa bem simples que 
é gravar um arquivo texto com o valor desta variável, mas deu problema. Vamos 
ver o que dá com meus próximos testes.

Alguém sabe mais informações sobre este tipo de aplicação ?

Obrigado

Diógenes



On Monday 19 December 2005 08:32, Caio Begotti wrote:
> On Monday 19 December 2005 16:18, dioedu em yahoo.com.br wrote:
> > "reason" é a variável que me indica qual razão da falha na discagem
> > (ocupado, não atendeu, não existe canal disponível).
>
> Você diz o status mesmo ou existe "reason" e eu não sabia? (dúvida mesmo)
>
> exten => s,X,lalalalala()
> exten => s,X,Goto(s-${DIALSTATUS},1)
> exten => s,X,Hangup()
>
> exten => s-NOANSWER,1,Voicemail(u${ARG1})
> exten => s-NOANSWER,2,Goto(default,s,1)
> exten => s-BUSY,1,Voicemail(b${ARG1})
> exten => s-BUSY,2,Goto(default,s,1)
> exten => _s-.,1,Goto(s-NOANSWER,1)
>
> E assim vai, se eu entendi a sua questão. Confirme se isso ajudar...


Mais detalhes sobre a lista de discussão AsteriskBrasil