Bom dia a todos da lista,
Eu tenho um servidor asterisk que estou testando num link muito bom,
infelizmente esse link é ip dinâmico.
Como não posso gastar dinheiro num serviço de Dyn (DNS Dinâmico) e ficar
todo instante que o link cai ou muda o IP tendo que descobrir o novo ip,
indo no gerenciador de dominio DNS do meu site e recriando a entrada "A"
Resolvi criar um serviço de informação de IP pelo asterisk. Como o
asterisk se registra novamente assim que a rede volta, ele ta conectado
com um novo IP e assim, qualquer um que ligar no numero voip da empresa
é atendido pela URA que pede o ramal a ser digitado, Em vez de digitar o
ramal, a pessoa que precisa do novo IP para reconfigurar o softphone
digita o numero do serviço de informação do IP (é claro que essa
informação não é pública)
No caso, os usuários que precisam informar o IP aprenderam que ligando
de qualquer número de telefone para o numero voip do asterisk e
digitando o ramal 102 (numero sugestivo que dei para este email) o
asterisk vai informar o IP externo e desligar.
Eu tenho um serviço de callback tb, eu poderia ter usado também o
callback para informar o IP, mas alguns usuários resolveram usar esse
recurso de maneira indevida, por isso, devido a politica interna, o
callback foi temporariamente suspenso.
A dica segue abaixo e pode ser útil para quem esteja na mesma situação
que eu.
Primeiro criei um novo contexto no asterisk, no caso estou dando o
numero 102 para esse serviço, pode ser qualquer outro:
exten => 102,1,AGI(FalaIP.sh)
exten => 102,2,Playback(goodbye)
exten => 102,3,HangUp
Abaixo segue a jóia da coroa: O script AGI abaixo descobre o IP e
informa duas vezes: Não ta enxuto, mas funciona que é uma maravilha:
#!/bin/bash
# Consume all variables sent by Asterisk
while read VAR && [ -n ${VAR} ] ; do : ; done
# Atende a ligação
echo "ANSWER"
read RESPONSE
# - Preferi usar o wget em vez do curl pq já vem por padrão em muito linux.
# - Quem ta informando o IP externo é o site ipecho.net, como tenho sites
# - na internet, atualmente eu faço essa consulta de um de meus sites
# - numa pagina php que retorna somente o ip tipo xxx.xxx.xxx.xxx sem
# - formatacao alguma
ipexterno=`wget http://ipecho.net/plain -O - -q `
# informa ao log do asterisk que uma consulta foi feita
VERBOSE "O IP Atual eh '$ipexterno'" ""
# Dita as letras I,P para que a pessoa saiba que vem um endereço IP em
seguida
echo 'SAY ALPHA "IP" ""'
# Dita, numero a numero o ip com ponto. Sem ajuste algum, a velocidade
ficou ótima!
echo 'SAY ALPHA "'$(echo $ipexterno)'" ""'
# Repete novamente o IP Externo
echo 'SAY ALPHA "IP" ""'
echo 'SAY ALPHA "'$(echo $ipexterno)'" ""'
# Termina o Script
read RESPONSE
exit 0
_______________________________________________
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
asteriskbrasil-unsubscr...@listas.asteriskbrasil.org