Olá!

O problema está em 'set(podeligar=${DB(bloq/${origem})});' atribuir nada à podeligar, aí quando faz '${podeligar}=1' seria o mesmo que '=1', já que podeligar é nada, aí dá erro de sintaxe. Tente fazer `"${podeligar}"="1"´ (colocar aspas) e veja se resolve.

[]'s
          Junior Polegato


Em 21-08-2013 17:35, Hudson Cardoso escreveu:
Como ja tinha dito antes, não estou tendo problemas com o dialplan, nem com o BD.
tá tudo certinho, so quero saber se posso tirar esse aviso chato de erro

Esse é trecho do dialplan que dá esse aviso 'set(podeligar=${DB(bloq/${origem})});'

Abaixo um trecho do dialplan:

macro discaroi(origem,destino) {
&grava(S,CEUSA,${origem},${destino});
             set(CDR(motivo)=S_${destino});
             set(podeligar=${DB(bloq/${origem})});
             if (${podeligar}=1)  {playback(/etc/asterisk/vozes/sorry);}
                else
                 {set(DB(bloq/${origem})=0);
                  dial(dahdi/g1/${destino},90,T);}
             Hangup;
             return;
}

macro discacelular(origem,destino) {
&consultaop(${destino});
                set(CDR(op)=${operadora});
                set(podeligar=${DB(bloq/${origem})});
if (${podeligar}=1) {playback(/etc/asterisk/vozes/sorry);}
                 else
                   { if (${destino:0:1}=0)
                      { noop(discando com prestadora - ${operadora});
if (len(${operadora}<1)) dial(sip/easytel/${destino},90,T); if (${operadora}=41) dial(sip/goip1/1041${destino:1},90,T); if (${operadora}=21) dial(sip/easytel/${destino},90,T); if (${operadora}=20) dial(sip/goip2/1015${destino:1},90,T); if (${operadora}=23) dial(sip/goip2/1015${destino:1},90,T); if (${operadora}=31) dial(sip/goip2/2014${destino:1},90,T); if (${operadora}=14) dial(sip/goip2/2014${destino:1},90,T);}
                      else
                       { noop(Inserindo prestadora - ${operadora}48);
if (len(${operadora}<1)) dial(sip/easytel/048${destino},90,T); if (${operadora}=41) dial(sip/goip1/104148${destino},90,T); if (${operadora}=21) dial(sip/easytel/048${destino},90,T); if (${operadora}=20) dial(sip/goip2/101548${destino},90,T); if (${operadora}=23) dial(sip/goip2/101548${destino:1},90,T); if (${operadora}=31) dial(sip/goip2/201448${destino},90,T); if (${operadora}=14) dial(sip/goip2/201448${destino},90,T);}
                          }
                 return;}

context entrada_goip  {
    _20XX =>  dial(dahdi/g2/2000,90,t);}

context pabx{
    _90ZX. => {&discaroi(${CALLERID(NAME)},${EXTEN});}
    _19X => {&discaroi(${CALLERID(NAME)},${EXTEN});}
    _14XX => {&discaroi(${CALLERID(NAME)},3441${EXTEN});}
     _[234]X. => {&discaroi(${CALLERID(NAME)},${EXTEN});}
     _0[38]00X. => {&discaroi(${CALLERID(NAME)},${EXTEN});}
     _52099 =>  goto uraceusa,s,1;
     _52XXX => playback(/etc/asterisk/vozes/voz${EXTEN:2});
     _20XX => {dial(dahdi/g2/${EXTEN},90,t);}
     _0XX[789]X. => {set(CDR(motivo)=S_${EXTEN});
&grava(S,CEUSA,${CALLERID(NAME)},${motivo});
&discacelular(${CALLERID(NAME)},${EXTEN});
                     Hangup;}
     _[789]X. => {set(CDR(motivo)=S_${EXTEN});
&grava(S,CEUSA,${CALLERID(NAME)},${motivo});
&discacelular(${CALLERID(NAME)},${EXTEN});
                           Hangup;}
     _0XX[2-6]X. => {set(origem=${CALLERID(num)});
&discaroi(${origem},014${EXTEN:1});
                             HangUp;}
     _00X. =>     {&discaroi(${CALLERID(NAME)},0014${EXTEN:2});}
     _5151XXXX => {set(DB(bloq/3441${EXTEN:4})=1);
                           playback(/etc/asterisk/vozes/programado);
                           HangUp;}
     _5252XXXX => { set(DB(bloq/3441${EXTEN:4})=0);
                           playback(/etc/asterisk/vozes/desprogramado);
                           HangUp;}

includes {publica;}}

context publica {
     _2099 => { &consultaop(${CALLERID(num):0:6});
                    //  set(id_recados(${CALLERID(all)}));
                    //  goto uraceusa,s,1;
                    hangup;
                      }
     _XXXX => {answer;
               set(encontrado=nao);
               set(CDR(motivo)=E_${EXTEN});
if (${CALLERID(num)}=4884137000) {&callback(o84137000,${EXTEN});}
               if (${encontrado}=nao)
{&grava(E,CEUSA,${EXTEN},${CALLERID(num)}); noop(entrada---------------------- = ${EXTEN});
                                      switch (${EXTEN}) {
// case 2011 : dial(dahdi/g2/2011&sip/goip2/284137000); case 2047 : dial(dahdi/g2/2047&sip/goip1/196542937); case 2017 : dial(dahdi/g2/2017&sip/goip1/199741259); case 2041 : dial(dahdi/g2/2041&sip/goip1/199249321); case 2027 : dial(dahdi/g2/2027&sip/goip1/199220622); case 2039 : dial(dahdi/g2/2039&sip/goip1/199849621); default : dial(dahdi/g2/${EXTEN},90,t);
                                               }
                                      }
               hangup;}
}

Esse é o BD : func_ODBC.conf
[LEPORTADOS]
dsn=easytel
readsql= SELECT op FROM portados WHERE numero=${SQL_ESC(${ARG1})} order by data desc limit 1
[LEOP]
dsn=easytel
readsql= SELECT op FROM opcel WHERE numero=${SQL_ESC(${ARG1})}


Hudson (048) 8413-7000
Para quem nao cre, nenhuma prova converte,Para aquele que cre, nenhuma prova 
precisa.


------------------------------------------------------------------------
Date: Wed, 21 Aug 2013 16:46:21 -0300
From: [email protected]
To: [email protected]
Subject: Re: [AsteriskBrasil] Mensagem de EOL no MYSQL

mas quem esta dando erro é o AST .. nao o mysql !!

Sds.
Alexandre J. Correa
Onda Internet
http://www.onda.net.br


IPV6 Ready !!!



2013/8/21 Mike Tesliuk <[email protected] <mailto:[email protected]>>

    joga um exit ou return 0 no fim do script pra ver

    Em 21/08/13 15:36, Rafael dos Santos Saraiva escreveu:

        Fica meio dificil sem ver o contexto, mas a principio, você
        tem que tratar o resultado null no dialplan e na consulta. Por
        exemplo, antes de buscar um valor especifico, use o "SELECT
        COUNT", se retornar >0, então realiza a consulta que você quer.


        Att,
        *Rafael dos Santos Saraiva*
        Tel: (51) 8174-7956
        *Digium Certified Asterisk Administrator (dCCA)*
        http://www.astdocs.com |
        <http://br.linkedin.com/pub/rafael-saraiva/52/aab/230>


        Em 21 de agosto de 2013 16:30, Hudson Cardoso
        <[email protected] <mailto:[email protected]>>
        escreveu:

               O asterisk diz ser erro de sintaxe, mas na verdade
            trata-se de EOL no BD do MYSQL.
            da seguinte forma:
            se ele consulta e encontra dados, nao gera o erro.
            mas se consulta dados e encontra nill, gera o erro de
            sintaxe, parece absurdo, mas é isso ai.
            gera erro se encontra nill ou vazio.


Hudson (048) 8413-7000
            Para quem nao cre, nenhuma prova converte,Para aquele que cre, 
nenhuma prova precisa.



            
------------------------------------------------------------------------
            Date: Wed, 21 Aug 2013 15:16:58 -0400
            From: [email protected] <mailto:[email protected]>
            To: [email protected]
            <mailto:[email protected]>
            Subject: Re: [AsteriskBrasil] Mensagem de EOL no MYSQL


            Aqui é erro de syntaxe,


            se nao for esta mensagem, então não sei qual você ta
            falando :)


            Em 21/08/13 14:58, Hudson Cardoso escreveu:

                [2013-08-21 15:59:22] WARNING[21305]: ast_expr2.fl:468
                ast_yyerror: ast_yyerror():  syntax error: syntax
                error, unexpected '=', expecting $end; Input:



            _______________________________________________ KHOMP:
            completa linha de placas externas FXO, FXS, GSM e E1;
            Media Gateways de 1 a 64 E1s para SIP com R2, ISDN e SS7;
            Intercomunicadores para acesso remoto via rede IP. Conhe?a
            em www.Khomp.com <http://www.Khomp.com>.
            _______________________________________________ ALIGERA ?
            Fabricante nacional de Gateways SIP-E1 para R2, ISDN e
            SS7. Placas de 1E1, 2E1, 4E1 e 8E1 para PCI ou PCI
            Express. Channel Bank ? Appliance Asterisk - Acesse
            www.aligera.com.br <http://www.aligera.com.br>.
            _______________________________________________ Para
            remover seu email desta lista, basta enviar um email em
            branco para
            [email protected]
            <mailto:[email protected]>

            _______________________________________________
            KHOMP: completa linha de placas externas FXO, FXS, GSM e E1;
            Media Gateways de 1 a 64 E1s para SIP com R2, ISDN e SS7;
            Intercomunicadores para acesso remoto via rede IP. Conheça
            em www.Khomp.com <http://www.Khomp.com>.
            _______________________________________________
            ALIGERA -- Fabricante nacional de Gateways SIP-E1 para R2,
            ISDN e SS7.
            Placas de 1E1, 2E1, 4E1 e 8E1 para PCI ou PCI Express.
            Channel Bank -- Appliance Asterisk - Acesse
            www.aligera.com.br <http://www.aligera.com.br>.
            _______________________________________________
            Para remover seu email desta lista, basta enviar um email
            em branco para
            [email protected]
            <mailto:[email protected]>




        _______________________________________________
        KHOMP: completa linha de placas externas FXO, FXS, GSM e E1;
        Media Gateways de 1 a 64 E1s para SIP com R2, ISDN e SS7;
        Intercomunicadores para acesso remoto via rede IP. Conheça emwww.Khomp.com  
<http://www.Khomp.com>.
        _______________________________________________
        ALIGERA -- Fabricante nacional de Gateways SIP-E1 para R2, ISDN e SS7.
        Placas de 1E1, 2E1, 4E1 e 8E1 para PCI ou PCI Express.
        Channel Bank -- Appliance Asterisk - Acessewww.aligera.com.br  
<http://www.aligera.com.br>.
        _______________________________________________
        Para remover seu email desta lista, basta enviar um email em branco 
[email protected]  
<mailto:[email protected]>



    _______________________________________________
    KHOMP: completa linha de placas externas FXO, FXS, GSM e E1;
    Media Gateways de 1 a 64 E1s para SIP com R2, ISDN e SS7;
    Intercomunicadores para acesso remoto via rede IP. Conheça em
    www.Khomp.com <http://www.Khomp.com>.
    _______________________________________________
    ALIGERA -- Fabricante nacional de Gateways SIP-E1 para R2, ISDN e SS7.
    Placas de 1E1, 2E1, 4E1 e 8E1 para PCI ou PCI Express.
    Channel Bank -- Appliance Asterisk - Acesse www.aligera.com.br
    <http://www.aligera.com.br>.
    _______________________________________________
    Para remover seu email desta lista, basta enviar um email em
    branco para [email protected]
    <mailto:[email protected]>



_______________________________________________ KHOMP: completa linha de placas externas FXO, FXS, GSM e E1; Media Gateways de 1 a 64 E1s para SIP com R2, ISDN e SS7; Intercomunicadores para acesso remoto via rede IP. Conhe?a em www.Khomp.com. _______________________________________________ ALIGERA ? Fabricante nacional de Gateways SIP-E1 para R2, ISDN e SS7. Placas de 1E1, 2E1, 4E1 e 8E1 para PCI ou PCI Express. Channel Bank ? Appliance Asterisk - Acesse www.aligera.com.br. _______________________________________________ Para remover seu email desta lista, basta enviar um email em branco para [email protected]


_______________________________________________
KHOMP: completa linha de placas externas FXO, FXS, GSM e E1;
Media Gateways de 1 a 64 E1s para SIP com R2, ISDN e SS7;
Intercomunicadores para acesso remoto via rede IP. Conheça em www.Khomp.com.
_______________________________________________
ALIGERA -- Fabricante nacional de Gateways SIP-E1 para R2, ISDN e SS7.
Placas de 1E1, 2E1, 4E1 e 8E1 para PCI ou PCI Express.
Channel Bank -- Appliance Asterisk - Acesse www.aligera.com.br.
_______________________________________________
Para remover seu email desta lista, basta enviar um email em branco para 
[email protected]


--
[]'s

Junior Polegato

_______________________________________________
KHOMP: completa linha de placas externas FXO, FXS, GSM e E1;
Media Gateways de 1 a 64 E1s para SIP com R2, ISDN e SS7;
Intercomunicadores para acesso remoto via rede IP. Conheça em www.Khomp.com.
_______________________________________________
ALIGERA – Fabricante nacional de Gateways SIP-E1 para R2, ISDN e SS7.
Placas de 1E1, 2E1, 4E1 e 8E1 para PCI ou PCI Express.
Channel Bank – Appliance Asterisk - Acesse www.aligera.com.br.
_______________________________________________
Para remover seu email desta lista, basta enviar um email em branco para 
[email protected]

Responder a