[AsteriskBrasil] cache dos resultados de consulta de portabilidade

w.nelson em ig.com.br w.nelson em ig.com.br
Segunda Maio 11 21:27:48 BRT 2015


 

Obrigado pelas observações. 

Mudei o dialplan, ficou assim: 

exten => _X.,1,NoOp(--> DE ${CALLERID(num)} PARA ${EXTEN} <--)
same => n,Set(OPERADORA=${DB(portabilidade/${EXTEN})})
same => n,Noop(---> ${OPERADORA} <---)
same => n,GoToIf($["${OPERADORA:0:2}" = "55"]?consultado,${EXTEN},1)
same => n,Noop( --> NUMERO NOVO <-- )
same => n,AGI(consulta_op.php,${EXTEN})
same => n,NoOp(--> ${OPERADORA} <--)
same => n,Set(CDR(userfield)=${OPERADORA})
same => n,Set(DB(portabilidade/${EXTEN})=${OPERADORA}
same => saída pelo tronco correspondente...
same => n,HangUp() 

Ao invés de verificar se a variável está vazia, verifico se a mesma
possui os dígitos 55 no inicio. Assim eu garanto que o código que foi
gravado no banco é de alguma operadora e não um código de erro que pode
ser de dois dígitos começando com 0 até 9 ou 10. 

Anivaldo Junior 

Em 11/05/2015 12:00, asteriskbrasil-request em listas.asteriskbrasil.org
escreveu: 

> É mais ou menos isso aí mesmo, Anivaldo. Eu mudaria 2 coisas se fosse
> implantar essa sua implementação em um ambiente de alto tráfego:
> 
> 1. Em vez de usar o DB_EXISTS eu usaria o DB e verificaria se a variável
> está vazia, assim eu já teria a operadora caso exista, consultando apenas
> uma vez o banco ao invés de duas.
> 
> 2. Não sei como você está fazendo a consulta no seu AGI, mas em ambiente de
> alto tráfego eu faria a consulta usando SIP (caso o serviço contratado
> ofereça este tipo de consulta) ou importaria a base da portabilidade em um
> banco local.
> 
> -- 
> Thiago Coutinho
> 
> "O povo não deveria temer o governo. O governo é quem deveria temer o povo."
> V de Vingança
> -------------- Próxima Parte ----------
> Um anexo em HTML foi limpo...
> URL: <http://asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20150511/c44ef0a2/attachment-0001.html [1]>
> 
> ------------------------------
> 
> _______________________________________________
> AsteriskBrasil mailing list
> AsteriskBrasil em listas.asteriskbrasil.org
> http://asteriskbrasil.org/mailman/listinfo/asteriskbrasil [2]
> 
> Fim da Digest AsteriskBrasil, volume 10, assunto 24
> ***************************************************
 

Links:
------
[1]
http://asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20150511/c44ef0a2/attachment-0001.html
[2] http://asteriskbrasil.org/mailman/listinfo/asteriskbrasil
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20150511/3d22d973/attachment.html>


Mais detalhes sobre a lista de discussão AsteriskBrasil