[AsteriskBrasil] Dialplan em Realtime
Julio Henrique Oliveira
julioh1203 em gmail.com
Terça Dezembro 28 11:19:47 BRST 2010
Olá,
Segue um contexto que fiz para autenticar os usuários no momento da ligação.
Não fiz em AEL, mas no formato do extension.conf, veja se pode te ajudar:
[local]
exten => _352[1-6]XXXX,1,Playback(agent-user)
exten => _352[1-6]XXXX,n,MYSQL(Connect connid localhost usuario senha
bilhetador)
exten => _352[1-6]XXXX,n,Read(Login,,,,,5)
exten => _352[1-6]XXXX,n,MYSQL(Query resultid ${connid} SELECT
codigo_usuario FROM Usuarios WHERE codigo_usuario=${Login})
exten => _352[1-6]XXXX,n,MYSQL(Fetch fetchid ${resultid} Usuario)
exten => _352[1-6]XXXX,n,GotoIf($[${fetchid} = 1]?liga:desliga)
exten => _352[1-6]XXXX,n(liga),Set(CDR(userfield)=${Usuario})
exten => _352[1-6]XXXX,n,Dial(DAHDI/1/${EXTEN},,Ttr)
exten => _352[1-6]XXXX,n,MYSQL(Clear ${resultid})
exten => _352[1-6]XXXX,n,MYSQL(Disconnect ${connid})
exten => _352[1-6]XXXX,n(desliga),Hangup()
Att.,
Júlio Henrique
Em 27 de dezembro de 2010 18:14, dlpazinatto em gmail.com <
dlpazinatto em gmail.com> escreveu:
> Olá Pessoal,
>
> Tenho um cliente que o dialplan esta muito grande, estou migrando para
> Realtime com mysql, estou enfrentando dificuldade em alguns pontos, sendo:
>
> 1- Nas chamadas de saida dos ramais SIP, faço uma verificação da "senha",
> essa verificação é feita em uma tabela do mysql conforme segue:
> _3XXXX021X. => {
> Set(SENHA=${EXTEN:1:4});
> MYSQL (Connect connid localhost
> usuario senha realtime);
> MYSQL (Query resultid ${connid} SELECT
> senha FROM senha WHERE senha = '${SENHA}');
> MYSQL (Fetch foundRow ${resultid} ACHOU);
> MYSQL (Disconnect ${connid});
> /* CLEAR no mysql.conf */
> if ("${ACHOU}"=="${SENHA}") {
> Noop(Senha Existe, Dial);
> Noop(Resuldado de ACHOU =
> ${ACHOU});
>
> Dial(${SAIDAE1}/${PSTN}/${EXTEN:6},40,rTt);
> }
> else {
> Noop(Senha NAO existe, HangUp);
> Noop(Resultado de ACHOU =
> ${ACHOU});
> Answer();
>
> PlayBack(pt_BR/vm-invalidpassword);
> Hangup();
> }
> }
>
> 2- Nas chamadas de saida, faço uma verificação no dialstatus, dependendo da
> situação, coloco um playback:
>
> _0X. => {
> Dial(SIP/5122,10,TtrD(ww${EXTEN:5}));
> Dial(SIP/5123,10,TtrD(ww${EXTEN:5}));
> switch(${DIALSTATUS}) {
> case BUSY:
> PlayTones(busy);
> Wait(5);
> }
> }
>
> Alguém pode me dar uma luz de como eu posso colocar isso em realtime?
>
> Outra coisa, nas chamadas de saida "chamo" uma macro via &nome-da-macro
> como eu chamo uma macro no realtime
>
> Grato por qquer ajuda
>
> --
> Dilceu Luiz Pazinatto
> Electronics technician
> Engineering students
>
> _______________________________________________
> KHOMP: qualidade em placas de E1, GSM, FXS e FXO para Asterisk.
> - Hardware com alta disponibilidade de recursos e qualidade KHOMP
> - Suporte técnico local qualificado e gratuito
> Conheça a linha completa de produtos KHOMP em www.khomp.com.br
> _______________________________________________
> Headsets Plantronics com o melhor preço do Brasil.
> Acesse agora www.voipmania.com.br
> VOIPMANIA STORE
> ________
> Lista de discussões AsteriskBrasil.org
> AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
> ______________________________________________
> Para remover seu email desta lista, basta enviar um email em branco para
> asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20101228/56c6fab6/attachment.htm
Mais detalhes sobre a lista de discussão AsteriskBrasil