Tecnologia líder no mercado de telecomunicações

Configurando seu FreeSWITCH para consulta a portabilidade com ATI


FreeSWITCH

O FreeSWITCH é um softswitch de código aberto lançado em 2008 como alternativa ao uso do Asterisk, tendo suporte aos principais protocolos utilizados em telefonia IP (VoIP), incluindo o SIP.

O serviço de consulta à operadora do SIP Pulse, ATI (conheça mais), também funciona sobre o protocolo SIP, portanto a integração do FreeSWITCH com o serviço de consulta a portabilidade é perfeitamente possível. Neste artigo veremos como realizar esta integração.

Para o FreeSWITCH, o ATI nada mais é do que um gateway (ou tronco SIP) que irá receber as ligações para celular. Assim, primeiramente, devemos cadastrar um novo gateway que irá apontar para este serviço.

Para cadastrar o novo gateway, deve ser criado o arquivo ati.xml dentro do diretório do profile (internal ou external, na configuração padrão do FreeSWITCH) que irá ser o responsável por este gateway. O conteúdo deste arquivo deve ser:

<include>
<gateway name=”ATI”>
<param name=”username” value=”USUARIO”/>
<param name=”password” value=”SENHA”/>
<param name=”realm” value=”port.sippulse.com”/>
</gateway>
</include>

Onde USUÁRIO e SENHA são seus dados de autenticação no ATI. No caso do plano ilimitado, você pode inserir qualquer informação nesses campos, já que a autenticação é feita por IP. Lembrando que esses campos são obrigatórios para a configuração de um novo gateway no FreeSWITCH, e devem sempre possuir algum valor.

Como o ATI utiliza o método Redirect do protocolo SIP (entenda o SIP Redirect), é necessário fazer um pequeno ajuste na configuração do profile escolhido para o gateway ATI, descomentando a linha <!–<param name=”manual-redirect” value=”true”/> — > Para descomentar a linha, basta remover as tags <!– e — >.

Com as configurações referentes à conexão do FreeSWITCH com o serviço do ATI realizadas, é necessário adequar o plano de discagens do sistema para encaminhar as chamadas celular para o ATI. Assim, a regra que encaminha a chamada para consulta deve ser inserida dentro do contexto de saída dos seus ramais, seguindo a seguinte configuração:

<extension name=”Consulta_ATI”>
<condition field=”destination_number” expression=”^([1-9]{2}[6-9][0-9]{7}$)”>
<action application=”export” data=”sip_redirect_context=default”/>
<action application=”bridge” data=”sofia/gateway/ATI/$1″/>
</condition>
</extension>

<extension name=”Consulta_ATI_Sao_Paulo”>
<condition field=”destination_number” expression=”(^119[0-9]{8}$)”>
<action application=”export” data=”sip_redirect_context=default”/>
<action application=”bridge” data=”sofia/gateway/ATI/$1″/>
</condition>
</extension>

Note que duas regras foram criadas, uma tratando chamadas celular somente para São Paulo, onde os número possuem 9 digitos, e outra para o resto do Brasil. Note também, que a resposta do ATI será tratada no contexto default, através da configuração <action application=”export” data=”sip_redirect_context=default”/>. Caso seja necessário que esta resposta seja tratada em um contexto diferente, basta substituir default pelo nome do contexto em questão.

Uma vez em que o gateway do ATI e as regras para consulta foram criados, basta criar as regras que tratarão a resposta da consulta. Portanto, basta inserir as seguintes regras:

<extension name=”Rota_Tim”>
<condition field=”destination_number” expression=”(^55341)(\d*$)”>
<action application=”bridge” data=”khomp/b0c0/041$2″/>
</condition>
</extension>

<extension name=”Rota_Vivo”>
<condition field=”destination_number” expression=”(^55323|55320)(\d*$)”>
<action application=”bridge” data=”khomp/b0c1/020$2″/>
</condition>
</extension>

<extension name=”Rota_Claro”>
<condition field=”destination_number” expression=”(^55321)(\d*$)”>
<action application=”bridge” data=”khomp/b0c2/021$2″/>
</condition>
</extension>

<extension name=”Rota_Oi”>
<condition field=”destination_number” expression=”(^55314|55331)(\d*$)”>
<action application=”bridge” data=”khomp/b0c3/031$2″/>
</condition>
</extension>

Para este exemplo, a interface celular que utilizamos foi da Khomp, portanto, os dados da aplicação bridge devem ser substituidos de acordo com sua configuração e rota de menor custo para as operadoras.

Após realizar estas configurações, basta entrar na CLI do FreeSWITCH e recarregar os módulos sofia (responsável pelo SIP) e dialplan_xml (responsável pelo plano de discagens). Com isto, seu FreeSWITCH já estará configurado para fazer ligações para celular por rota de menor custo através do sistema ATI.

Em caso de dúvidas ou dificuldades na configuração de seu sistema, entre em contato com nossa equipe suportepulse@sippulse.com.


Categorias: ATI - Automatic Telco Identification, Dicas Suporte