Este tutorial vai ajudar você a configurar a portabilidade no seu servidor MOR de modo fácil e rápido.
ANTES DE VOCÊ INICIAR LEMBRE QUE NOS PODEMOS FAZER ISSO POR VOCÊ. GRATIS
1 - Antes de mais nada é preciso importar a base de dados do nosso servidor para o banco de dados do MOR.
cd /usr/src
wget http://www.portabilidadecelular.com/download/ChipCerto_update_mor.txt
mv ChipCerto_update_mor.txt ChipCerto_update_mor.php
Agora temos que executar este script que acabamos de baixar, para conectar no servidor FTP e baixar o banco de dados da portabilidade.
php /usr/src/ChipCerto_update_mor.php SeuUsuario SuaSenha
Altere SeuUsuario e SuaSenha na linha. Corresponde ao seus dados de acesso no nosso site.
Este script pode levar varios minutos para completar o processo. Aguarde ....
Agora você pode adicionar este script no CRON do Linux para que seja executado toda madrugada e assim manter seu banco de dados atualizado
2 - Agora temos que criar o AGI no Asterisk.
Este AGI sera o responsável por fazer a consulta de cada numero discado e retornar a operadora.
cd /var/lib/asterisk/agi-bin/
wget http://portabilidadecelular.com/download/phpagi.tar.gz
tar xzvf phpagi.tar.gz
wget http://portabilidadecelular.com/download/portabilidadecelular
chmod +x /var/lib/asterisk/agi-bin/portabilidadecelular
3- Agora so falta configurar o contexto do MOR para que todas as chamadas para celular sejam enviadas para nosso novo AGI.
Editamos o arquivo /etc/asterisk/extensions_mor.conf e renomeie o contexto [mor] para [mor_old] e crie um novo contexto [mor] com o conteúdo abaixo.
[mor]
;envia chamadas a celular no formato 0 DDD nº para a portabilidade
exten => _0ZX[6-9].,1,NoOp(--->Consulta Portabilidade<---)
exten => _0ZX[6-9].,n,Agi(portabilidadecelular,${EXTEN:1})
exten => _0ZX[6-9].,n,NoOp(---> A OPERADORA DISCADA E: ${OPERADORA} ${EXTEN}<---)
exten => _0ZX[6-9].,n,Goto(mor_old,${OPERADORA}${EXTEN},1)
;envia chamadas a celular no formato 55 DDD nº para a portabilidade
exten => _55ZX[6-9].,1,NoOp(--->Consulta Portabilidade<---)
exten => _55ZX[6-9].,n,Agi(portabilidadecelular,${EXTEN:2})
exten => _55ZX[6-9].,n,NoOp(---> A OPERADORA DISCADA E: ${OPERADORA} ${EXTEN}<---)
exten => _55ZX[6-9].,n,Goto(mor_old,${OPERADORA}${EXTEN},1)
;envia todas as outras chamadas para o contexto padrao do MOR que agora é mor_old
exten => _.,1,Goto(mor_old,${OPERADORA},${EXTEN},1)
;não aceita ligar direto 1111, evita cliente te roubar
exten => 1111,1,Hangup
Salve o arquivo, e agora so falta dar um reload no Asterisk
OBS: O Agi que criamos vai fazer a consulta da operadora do numero discado, e vai adicionar na frente do numero o RN1 da operadora. Por tanto, em suas tabelas você terá que adicionar os prefixos das operadoras. Você pode encontrar os prefixos dentro do seu painel de cliente.