[AsteriskBrasil] Cadeado Asterisk, erro de dbget
Diego Aguirre (DagMoller)
dag.voip em oi.com.br
Segunda Junho 23 16:48:28 BRT 2008
Felipe,
eu tenho uma implementação para cadeado, mas escrita com AEL (extension.ael).
a macro "checkLock" pedirá a senha (6 digitos) antes de efetuar a ligação, se houver senha cadastrada.
segue:
// macro usada para autenticar antes de cada chamada.
macro checkLock(contexto, exten, callerid)
{
Set(status=${DB(FEATURES/lock/${callerid}/status)});
if ("x${status}" == "x1")
{
Set(oldPass=${DB(FEATURES/lock/${CALLERID(number)}/pass)});
Set(count=0);
password:
if (${count} == 3)
{
Playback(vm-goodbye);
Hangup();
}
Read(password|vm-password|6);
if ("x${password}" != "x${oldPass}")
{
Playback(vm-incorrect);
Set(count=${count} + 1);
goto password;
}
Playback(beep);
}
goto ${contexto}|${exten}|no-check;
}
context features
{
// Setar senha... (senha default: 000000)
*11* => {
Set(oldPass=${DB(FEATURES/lock/${CALLERID(number)}/pass)});
if ("x${oldPass}" == "x")
Set(oldPass=000000);
password:
Read(password|vm-password|6);
if ("x${password}" != "x${oldPass}")
{
Playback(vm-incorrect);
goto password;
}
new-password:
Read(newPass|vm-newpassword);
if ("x${newPass}" == "x")
goto new-password;
new-password-2:
Read(newPass2|vm-reenterpassword);
if ("x${newPass2}" == "x")
goto new-password-2;
if ("x${newPass}" != "x${newPass2}")
{
Playback(vm-mismatch);
goto new-password;
}
Set(DB(FEATURES/lock/${CALLERID(number)}/pass)=${newPass});
Playback(vm-passchanged);
Hangup();
}
// Ativar cadeado, somente se ja possui senha.
*12* => {
Set(oldPass=${DB(FEATURES/lock/${CALLERID(number)}/pass)});
if ("x${oldPass}" == "x")
Congestion();
password:
Read(password|vm-password|6);
if ("x${password}" != "x${oldPass}")
{
Playback(vm-incorrect);
goto password;
}
Set(DB(FEATURES/lock/${CALLERID(number)}/status)=1);
SayAlpha(ok);
Hangup();
}
// Desativar cadeado.
*13* => {
Set(oldPass=${DB(FEATURES/lock/${CALLERID(number)}/pass)});
if ("x${oldPass}" == "x")
Congestion();
password:
Read(password|vm-password|6);
if ("x${password}" != "x${oldPass}")
{
Playback(vm-incorrect);
goto password;
}
Set(DB(FEATURES/lock/${CALLERID(number)}/status)=0);
SayAlpha(ok);
Hangup();
}
}
context nacional
{
_0ZX. => {
// se houver senha, pergute-a e vá para 'no-check'.
// se não houver senha, vai para 'no-check'
&checkLock(nacional,${EXTEN},${CALLERID(number)});
no-check:
Dial(${CHANTYPE}/${EXTEN}@${TRUNK},,T);
Hangup();
}
}
Felippe escreveu:
> Saudações Messias! blz!!
>
>
>
> Ja tinha visto esse erro e apos correção postei outra mensagem com o
> assunto Cadeado implementando no asterisk 1.4 (se nao me engano)
>
>
>
> Depois dê uma olhada na lista e veja se consegue me ajudar! A grande
> questao é que apos ajuda de Diego Aguirre e algumas outras mudanças que
> fiz como vc observou e sugeriu, deu tudo certo, dão os beeps ok porem
> parece que o cadeado não funciona.. Pois no teste que faço as chamadas
> continuam passando..
>
>
>
> Antes, Obrigado
>
>
>
> Felippe.
>
>
>
> Em 10:23, *José Carlos Messias * escreveu:
>
>
> 2008/6/22 Felippe :
> > Opa, então, troquei para DB mas nada..
> >
> >
> >
> > Cli> -- Executing [*11*1234 em default:1] NoCDR("SIP/20-081ff6e0",
> "") in
> > new stack
> > [Jun 22 04:02:58] WARNING[7680]: pbx.c:1821 pbx_extension_helper: No
> > application 'DB' for extension (default, *11*1234, 2)
> > == Spawn extension (default, *11*1234, 2) exited non-zero on
> > 'SIP/20-081ff6e0'
> >
> >
> > Tenho asterisk 1.4.19.1
> >
> > Adaptei o dbget e dbput para db como descreveu e lembrei de
> corrigir o
> > callerid tb.
> >
> >
> >
> > Estou tentando este primeiramente:
> >
> > ;cadastrar senha cadeado
> > exten => _*11*xxxx,1,NoCDR()
> > exten => _*11*xxxx,2,DB(senha=CADEPASS/${CALLERID(NUM)})
> > exten => _*11*xxxx,3,GoToIf($["${senha}" = ""]?5:4)
> > exten => _*11*xxxx,4,Hangup
> >>>>>>>>>>> exten =>
> _*11*xxxx,5,Set(DB(CADEPASS/${CALLERID(num)})=${EXTEN:4}) ;faltou o
> Set eu uso o NUM em minusculo, parenteses em lugar err ado veja se
> dá certo agora
> > exten => _*11*xxxx,6,Wait(2)
> > exten => _*11*xxxx,7,Playback(beep)< br />exten =>
> > _*11*xxxx,8,Playback(beep)
> > exten => _*11*xxxx,9,Playback(beep)
> > exten => _*11*xxxx,10,Hangup
> >
> >
> >
> >
> >
> > Obg.
> > Felippe
> >
> >
> >
> >
> >
> > Em 18/06/2008 11:55, Leonardo Gomes Figueira escreveu:
> >
> > U Felippe escreveu:
> >> Aproveitando aquele velho cadeado visto aqui na lista, coloquei para
> >> rodar no meu asterisk mas sempre sem sucesso, já tentei ver algumas
> >> coisas e estava deixando isso de lado.. mas posto aqui na lista para
> >> alguma ajuda.
> >> Ramal que tenho é o 2000
> >>
> >>
> >> Veja o que retorna:
> >>
> >> -- Executing [*11*2000 em default:1] NoCDR(";SIP/23-08216fe0";, &q
> uot;;";) in
> >> new stack
> >> [May 26 00:23:46] WARNING[5082]: pbx.c:1821 pbx_extension_helper: No
> >> application 'DBget' for extension (default, *11*2000, 2)
> >> == Spawn extension (default, *11*2000, 2) exited non-zero on
> >> 'SIP/23-08216fe0'
> >>
> >
> > DBget/DBput só tem no Asterisk 1.0 e 1.2 (deprecated). Provavelmente
> > você está usando 1.4 ou maior portanto basta adaptar o dialplan
> para a
> > função DB() que substituiu ambos.
> >
> > Leonardo
> > _______________________________________________
> > Compre uma camiseta da AsteriskBrasil.org!
> > http://www.voipmania.com.br
> >
> > Acesse o canal IRC de discussão sobre Asterisk em Português
> Brasileiro na
> > rede Freenode.net: #asterisk-br
> > _______________________________________________
> > Lista de discussões AsteriskBrasil.org
> > Aste riskBrasil em listas.asteriskbrasil.org
> > http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
> >
> >
> > _______________________________________________
> > Compre uma camiseta da AsteriskBrasil.org!
> > http://www.voipmania.com.br
> >
> > Acesse o canal IRC de discussão sobre Asterisk em Português
> Brasileiro na
> > rede Freenode.net: #asterisk-br
> > _______________________________________________
> > Lista de discussões AsteriskBrasil.org
> > AsteriskBrasil em listas.asteriskbrasil.org
> > http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
> >
> _______________________________________________
> Compre uma camiseta da AsteriskBrasil.org!
> http://www.voipmania.com.br
>
> Acesse o canal IRC de discussão sobre Asterisk em Português
> Brasileiro na rede Freenode.net: #asterisk-br
> _______________________________________________
> Lista de discus sões AsteriskBrasil.org
> AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Compre uma camiseta da AsteriskBrasil.org!
> http://www.voipmania.com.br
>
> Acesse o canal IRC de discussão sobre Asterisk em Português Brasileiro na rede Freenode.net: #asterisk-br
> _______________________________________________
> Lista de discussões AsteriskBrasil.org
> AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
--
Diego Aguirre
Infodag - Informática
FWD#: 459696
EnumLookup#: +55 21 8138-2710
DUNDi-br#: 21 8138-2710
More information about the AsteriskBrasil
mailing list