[AsteriskBrasil] script phpagi portabilidade

Danilo Almeida danilo.almeida em g1telecom.com.br
Segunda Agosto 20 16:35:37 BRT 2012


Bom galera, depois de tanta luta com o agiphp, fiz um script bem simples
para consultar portabilidade em php.

 

Utilizo como servidor de consulta, o servidor Magnus solution que o Amigo
disponibilizou para a galera da lista.

 

Esse fiz somente para ver se daria certo. Para questão de somente consulta,
funcionou perfeitamente.

 

Utilizei algumas informações de alguns posts anteriores.

 

Extensions .conf

 

exten => _0XX[6-9]XXXXXXX,1,NoOp(---> DE ${CALLERID(num)} PARA ${EXTEN} <--)

exten => _0XX[6-9]XXXXXXX,n,AGI(portabilidade.php,${EXTEN:1})

exten => _0XX[6-9]XXXXXXX,n,NoOp(---> A OPERADORA DISCADA E: ${OPERADORA}
<---)

exten => _0XX[6-9]XXXXXXX,n,Hangup()

 

portabilidade.php

 

#!/usr/bin/php -q

<?php

include("phpagi.php");

//version: Danilo Almeida

//package: AGI Portabilidade PHP

//copyright: Copyright (C) Open Source.

//license: GNU/GPL, see LICENSE.php

//Agi para consulta de operadora para celulares portados

//Acesso ao banco de dados fornecido por http://magnussolution.com

//Contato: danilo.almeida em g1telecom.com.br

 

$agi = new AGI(); //instanciando objeto

$numero = $argv[1]; //pegando numero discado no extensions.conf

$numero = "55".$numero; //acrescentando 55 para enviar formato E164

$url="http://magnussolution.com/portabilidade.php?seache_number=$numero";

$chave = file_get_contents($url);

//$array_resposta = explode('#', $texto_resposta);

 

switch($chave){

    case 5312 :

        $operadora = 'CTBC CELULAR S.A' ;

        break;

        case 55314 :

        $operadora = 'BRASIL TELECOM CELULAR' ;

        break;

        case 55320 :

        $operadora = 'VIVO' ;

        break;

        case 55321 :

        $operadora = 'AMERICEL' ;

        break;

        case 55323 :

        $operadora = 'TELEMIG CELULAR' ;

        break;

        case 55324 :

        $operadora = 'AMAZONIA CELULAR' ;

       break;

        case 55331 :

        $operadora = 'TNL PCS' ;

        break;

        case 55337 :

        $operadora = 'UNICEL DO BRASIL' ;

        break;

        case 55341 :

        $operadora = 'TIM CELULAR' ;

        break;

        case 55343 :

        $operadora = 'SERCOMTEL CELULAR' ;

        break;

        case 55349 :

        $operadora = 'OPTIONS COMP' ;

        break;

        case 55377 :

        $operadora = 'MCS (Nextel)' ;

        break;

        case 55390 :

        $operadora = 'TELCOM TELECOMUNICACOES DO BRASIL' ;

        break;

        case 55391 :

        $operadora = 'FALKLAND TECNOLOGIA' ;

        break;

        case 55392 :

        $operadora = 'IRIDIUM' ;

        break;

        case 55393 :

        $operadora = 'GLOBALSTAR DO BRASIL' ;

        break;

}

 

$agi->set_variable("OPERADORA", $operadora);

exit();

?>

 

Retorno CLI

 

-- Executing [91538563 em contexto-ramais-voip:1] NoOp("SIP/5001-0000011d",
"---> DE 5001 PARA 91538563 <--") in new stack

    -- Executing [91538563 em contexto-ramais-voip:2] AGI("SIP/5001-0000011d",
"portabilidade.php,4391538563") in new stack

    -- Launched AGI Script /var/lib/asterisk/agi-bin/portabilidade.php

    -- <SIP/5001-0000011d>AGI Script portabilidade.php completed, returning
0

    -- Executing [91538563 em contexto-ramais-voip:3] NoOp("SIP/5001-0000011d",
"---> A OPERADORA DISCADA E: VIVO <---") in new stack

 

 

 

att

 

Danilo Ricardo de Almeida

 

-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20120820/3d44deb3/attachment.htm 


Mais detalhes sobre a lista de discussão AsteriskBrasil