Ejemplo de ajustes Freeswitch para la conexión a Megacall.
Los datos están indicados en el ejemplo:
- 111111: Tu número SIP del área personal.
- Password: La contraseña de tu número SIP en la sección "Ajustes SIP" del área personal.
- 1000: El número de extensión Freeswitch al cual se conecta la IP del softphone/teléfono para recibir llamadas entrantes y realizar llamadas salientes.
1. Creamos el archivo /etc/freeswitch/sip_profiles/external/Megacall.xml
<include>
<gateway name="megacall">
<param name="username" value="111111"/>
<param name="password" value="Password"/>
<param name="realm" value="sip.megacall.es"/>
<param name="from-user" value="111111"/>
<param name="from-domain" value="sip.megacall.es"/>
<param name="proxy" value="sip.megacall.es"/>
<param name="expire-seconds" value="300"/>
<param name="register" value="true"/>
<param name="register-transport" value="udp"/>
<param name="context" value="megacall"/>
</gateway>
</include>2. Creamos el archivo con los ajustes del diaplan/etc/freeswitch/dialplan/Megacall.xml
<?xml version="1.0" encoding="UTF-8"?>
<include>
<context name="megacall">
<extension name="unloop">
<condition field="$${unroll_loops}" expression="^true$" />
<condition field="${sip_looped_call}" expression="^true$">
<action application="deflect" data="${destination_number}" />
</condition>
</extension>
<extension name="in-megacall">
<condition field="destination_number" expression="^(111111)$">
<action application="bridge" data="user/1000@$${domain}"/>
<action application="hangup"/>
</condition>
</extension>
<extension name="out-megacall">
<condition field="destination_number" expression="^(\d{10,15})$">
<action application="bridge" data="sofia/gateway/megacall/$1"/>
<action application="hangup"/>
</condition>
</extension>
<extension name="local">
<condition field="destination_number" expression="^\d{4}$">
<action application="answer" />
<action application="sleep" data="1000" />
<action application="bridge" data="user/${destination_number}@$${domain}" />
<action application="hangup" />
</condition>
</extension>
</context>
</include>
3. Creamos en Freeswitch el número de extensión 1000 al que se conecta el ip del softphone/teléfono para recibir llamadas entrantes y realizar llamadas salientes. Editamos el archivo /etc/freeswitch/directory/default/1000.xml
<include>
<user id="1000">
<params>
<param name="password" value="your_hard_pasword"/>
<param name="vm-password" value="1000"/>
</params>
<variables>
<variable name="toll_allow" value="domestic,international,local"/>
<variable name="accountcode" value="1000"/>
<variable name="user_context" value="megacall"/>
<variable name="effective_caller_id_name" value="Extension 1000"/>
<variable name="effective_caller_id_number" value="1000"/>
<variable name="outbound_caller_id_name" value="$${outbound_caller_name}"/>
<variable name="outbound_caller_id_number" value="$${outbound_caller_id}"/>
<variable name="callgroup" value="techsupport"/>
</variables>
</user>
</include>
Para que Freeswitch vuelva a leer los archivos de configuración, es necesario ejecutar el comando fs_cli -x reloadxml
La configuración Freeswitch se ha completado.