Mas dai no caso voce nao precisaria da primeira parte, a do agivar ali... essa e utilzada para pegar todas as variaveis passadas por default pelo Asterisk para o AGI (context, callerid, extension, etc.), em teoria como voce nao esta utilizando elas, nao precisaria.
O erro no seu script eh que falta o $ antes do argv[1] e argv[2] $from = "m...@domain.com" <m...@domain.com>; $to ="m...@domain.com " <m...@domain.com>; $subject="SMS from " . $argv[1]; $headers = "From:".$from; $message ="Mensagem recebida: " . $argv[2]; Acho que esqueci isso ontem. 2009/9/3 Asterisk Addict Guy <asteriskadd...@gmail.com> > Pois é, eu estou usando o agi debug. Mas tem alguma coisa que ainda não > consegui entender. Pelo que eu vi, quando ocorre algum erro, o AGI parece > não executar, ou pelo menos não executa na totalidade. > > É a primeira vez que estou fazendo alguma coisa com o AGI. Conheço um pouco > de PHP tb. > > Pesquisei bastante para poder fazer isto (Google) e o "melhor" resultado > que tenho até agora é qu econsigo enviar o mail com sucesso. Mas não consigo > passar o SMS para dentro da rotina AGI e mandar por mail. > > Na console tenho este resultado: > > Verbosity is at least 3 > -- Executing [...@from-gsm01:1] Verbose("chan_mobile", "Incoming SMS > from +55519xxxxxx Teste do sos > ") in new stack > Incoming SMS from +55519xxxxxx Teste do sos > > -- Executing [...@from-gsm01:2] AGI("chan_mobile", "sendmail.php| > +55519xxxxxx|Teste do sos > ") in new stack > -- Launched AGI Script /var/lib/asterisk/agi-bin/sendmail.php > AGI Tx >> agi_request: sendmail.php > AGI Tx >> agi_channel: chan_mobile > AGI Tx >> agi_language: pt > AGI Tx >> agi_type: Sebi > AGI Tx >> agi_uniqueid: 1251976221.44 > AGI Tx >> agi_callerid: unknown > AGI Tx >> agi_calleridname: unknown > AGI Tx >> agi_callingpres: 0 > AGI Tx >> agi_callingani2: 0 > AGI Tx >> agi_callington: 0 > AGI Tx >> agi_callingtns: 0 > AGI Tx >> agi_dnid: unknown > AGI Tx >> agi_rdnis: unknown > AGI Tx >> agi_context: from-gsm01 > AGI Tx >> agi_extension: sms > AGI Tx >> agi_priority: 2 > AGI Tx >> agi_enhanced: 0.0 > AGI Tx >> agi_accountcode: > AGI Tx >> *CLI> > -- AGI Script sendmail.php completed, returning 0 > -- Executing [...@from-gsm01:3] Hangup("chan_mobile", "") in new stack > == Spawn extension (from-gsm01, sms, 3) exited non-zero on 'chan_mobile' > > No meu dialplan tenho isto: > > exten => sms,1,Verbose(Incoming SMS from ${SMSSRC} ${SMSTXT}) > exten => sms,n,AGI(sendmail.php,${SMSSRC},${SMSTXT}) > exten => sms,n,Hangup > > No meu sendmail.php : > > #!/usr/bin/php -q > <?php > > // Get AGI vars from * > $agivars = array(); > > while (!feof(STDIN)) { > > $agivar = trim(fgets(STDIN)); > > if ($agivar === '') { > > break; > > } > > $agivar = explode(':', $agivar); > > $agivars[$agivar[0]] = trim($agivar[1]); > > } > > extract($agivars); > > // Variable Declarations > $agi_uniqueid; > $agi_callerid; > $agi_calleridname; > $agi_extension; > $agi_uniqueid; > $UNIQUEID = $agi_uniqueid; > $from = "m...@domain.com" <m...@domain.com>; > $to ="m...@domain.com " <m...@domain.com>; > $subject="SMS from " ; > $headers = "From: $from"; > $message ="Mensagem recebida: "; > > mail($to,$subject,$message,$headers); > > ?> > > Esta versão em cima, faz o envio do mail com sucesso. > > Tentei fazer uma alteração usando o que disseste dos argumentos. > > #!/usr/bin/php -q > <?php > > // Get AGI vars from * > $agivars = array(); > > while (!feof(STDIN)) { > > $agivar = trim(fgets(STDIN)); > > if ($agivar === '') { > > break; > > } > > $agivar = explode(':', $agivar); > > $agivars[$agivar[0]] = trim($agivar[1]); > > } > > extract($agivars); > > // Variable Declarations > $agi_uniqueid; > $agi_callerid; > $agi_calleridname; > $agi_extension; > $agi_uniqueid; > $UNIQUEID = $agi_uniqueid; > $from = "m...@domain.com" <m...@domain.com>; > $to ="m...@domain.com " <m...@domain.com>; > $subject="SMS from " . argv[1]; > $headers = "From: $from"; > $message ="Mensagem recebida: " . argv[2]; > > mail($to,$subject,$message,$headers); > > ?> > > Se faço isto, ele nem manda o mail. > > Valeu pela ajuda. > > Kim Delevati wrote: > > Bom, agi é mais minha área. > > Não entendi ali, quando você chama a função debug, você passa 1 como > paramêtro, depois seta em 3? > Você está startando o Asterisk com quanto de verbose? > Como você está passando os parametros SMSSRC e SMSTXT para o Agi, não > precisa do get variable. Ficam em argv[1] e argv[2] > > $smssrc=argv[1]; > $smstxt=argv[2]; > > Ah, uma dica, quando for rodar algum script no agi, coloque o comando agi > debug no console antes. > > 2009/9/2 Asterisk Addict Guy <asteriskadd...@gmail.com> > >> Estou tentando montar algo com AGI + PHP. >> >> no meu extensions tenho isto: >> >> exten => sms,1,Verbose(Incoming SMS from ${SMSSRC} ${SMSTXT}) >> exten => sms,n,AGI(sendmail2.agi|${SMSSRC}|${SMSTXT}) >> exten => sms,n,Hangup >> >> Depois no meu AGI PHP: >> >> #!/usr/bin/php -q >> <?php >> function debug($string, $level=3) { >> global $AGI; >> $AGI->verbose($string, $level); >> } >> // >> // >> require_once "phpagi.php"; >> $cidnum = ""; // Caller ID Number for this call >> $cidname = ""; // Caller ID Name for this call >> $AGI = new AGI(); >> $smssrc=GET VARIABLE SMSSRC; >> $smstxt=GET VARIABLE SMSTXT; >> $message="Here I'm" . $smssrc; >> debug($message, 1); >> >> ?> >> >> Estou tentando fazer isto somente para testar, mas não chega a executar a >> linha de debug. >> >> >> >> >> >> Kim Delevati wrote: >> >> Seria ainda mais simples por um site, não? >> >> Daí poderia ser por AMI ou um criando arquivos .call. >> >> 2009/9/2 Asterisk Addict Guy <asteriskadd...@gmail.com> >> >>> Kim, >>> >>> Realmente o ideal é por mail. Do ponto de vista do usuário, este é um >>> conceito muito simples para "disparar" o SMS. >>> >>> Kim Delevati wrote: >>> >>> Hmm... tem que ser por email? Provavelmente tem jeitos mais fáceis de >>> fazer o Asterisk mandar essa mensagem remotamente. >>> >>> 2009/9/1 Asterisk Addict Guy <asteriskadd...@gmail.com> >>> >>>> Pessoal, >>>> >>>> Estou tentando implementar uma funcionalidade que seria, enviar um mail >>>> para uma conta tipo sms9...@gmail.com, no servidor do Asterisk ter algo >>>> que faça um pooling de tempos em tempos, tendo algum novo mail, ele pega e >>>> envia via SMS a partir do Asterisk usando o chan_mobile. >>>> >>>> Eu já tenho o chan_mobile funcionando para enviar SMS, conheço alguma >>>> coisa de PHP mas não sou especialista no resto. >>>> >>>> Alguém já pensou ou tem isto implementado? >>>> >>>> Também o contrário, se eu receber um SMS para o número do celular que >>>> tenho no chan_mobile, fazer o parse e enviar por mail. >>>> >>>> Poderiam dar algumas dicas? >>>> >>>> Para receber o SMS tenho isto: >>>> >>>> [incoming-mobile] >>>> exten => sms,1,Verbose(Incoming SMS from ${SMSSRC} ${SMSTXT}) >>>> exten => sms,n,Hangup() >>>> >>>> Para enviar o SMS uso isto: >>>> >>>> exten => 99,1,MobileSendSMS(ramal, 91xxxxxx,Hello World) >>>> >>>> >>>> Valeu! >>>> >>>> >>>> >>>> >>>> _______________________________________________ >>>> Participe do IV Encontro VoIPCenter, 16 a 18 de setembro - São Paulo. >>>> VoIP, Asterisk e Convergência de Redes. >>>> http://www.encontrovoipcenter.com.br >>>> >>>> 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@listas.asteriskbrasil.org >>>> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil >>>> >>> >>> ------------------------------ >>> >>> >>> _______________________________________________ >>> Participe do IV Encontro VoIPCenter, 16 a 18 de setembro - São Paulo. >>> VoIP, Asterisk e Convergência de Redes.http://www.encontrovoipcenter.com.br >>> >>> 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.orgasteriskbra...@listas.asteriskbrasil.orghttp://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil >>> >>> >>> >>> _______________________________________________ >>> Participe do IV Encontro VoIPCenter, 16 a 18 de setembro - São Paulo. >>> VoIP, Asterisk e Convergência de Redes. >>> http://www.encontrovoipcenter.com.br >>> >>> 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@listas.asteriskbrasil.org >>> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil >>> >> >> ------------------------------ >> >> >> _______________________________________________ >> Participe do IV Encontro VoIPCenter, 16 a 18 de setembro - São Paulo. >> VoIP, Asterisk e Convergência de Redes.http://www.encontrovoipcenter.com.br >> >> 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.orgasteriskbra...@listas.asteriskbrasil.orghttp://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil >> >> >> >> _______________________________________________ >> Participe do IV Encontro VoIPCenter, 16 a 18 de setembro - São Paulo. >> VoIP, Asterisk e Convergência de Redes. >> http://www.encontrovoipcenter.com.br >> >> 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@listas.asteriskbrasil.org >> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil >> > > ------------------------------ > > > _______________________________________________ > Participe do IV Encontro VoIPCenter, 16 a 18 de setembro - São Paulo. > VoIP, Asterisk e Convergência de Redes.http://www.encontrovoipcenter.com.br > > 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.orgasteriskbra...@listas.asteriskbrasil.orghttp://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil > > > > _______________________________________________ > Participe do IV Encontro VoIPCenter, 16 a 18 de setembro - São Paulo. > VoIP, Asterisk e Convergência de Redes. > http://www.encontrovoipcenter.com.br > > 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@listas.asteriskbrasil.org > http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil >
_______________________________________________ Participe do IV Encontro VoIPCenter, 16 a 18 de setembro - São Paulo. VoIP, Asterisk e Convergência de Redes. http://www.encontrovoipcenter.com.br 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@listas.asteriskbrasil.org http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil