Instalación de FreeSWITCH 1.0.4 en Windows Vista

Bueno, aunque debería hablar más de configuraciones y cosas por el estilo, he pensado escribir esta pequeña guía sobre la instalación de FreeSWITCH 1.0.4 en Windows Vista partiendo de las fuentes. Para empezar tenemos que descargar Microsoft Visual C++ 2008 Express Edition y instalarlo. Una vez que hemos terminado con esta tarea tenemos que descargar y instalar también el paquete de las librerías de Microsoft Visual C++ 2008. Estas librerías la necesitamos para arrancar FreeSWITCH una vez compilado.

Ahora podemos descargar el paquete de FreeSWITCH 1.0.4. Lo descomprimimos en la carpeta que queremos (en mi caso en el escritorio). Ahora entramos en la carpeta creada y miramos los archivos presentes:

FSwinvista1

Buscamos este archivo y clicamos dos veces. Debería abrirse el programa Visual C ++ y deberíamos tener algo parecido:

FSwinvista2

 

Ahora posicionamos el ratón sobre la línea Solución ‘Freeswitch.2008.express’ y clicamos con el botón derecho. En el menú que aparece escogemos la opción “Generar Solucion”. Se iniciará la compilación de FreeSWITCH. Dependiendo del procesador y la memora RAM instalada el proceso puede tardar de algunos minutos a una media hora.

Terminada la compilación en la carpeta de FreeSWITCH encontraremos una carpeta nueva con nombre “Debug”. Ahí encontraremos todos los archivos (configuración, módulos, etc.).

Ahora antes de arrancar FreeSWITCH tenemos que configurar el archivo vars.xml. Pueden haber distintas situaciones:

  1. FS instalado en un computador conectado a internet a través de un router con IP estático
  2. FS instalado en un computador conectado a internet a través de un router con IP dinámico

FreeSWITCH ahora soporta los protocolos UpnP (Universal Plug and Play) que prácticamente permiten abrir los puertos en el router sin la necesidad de hacer la configuración manualmente. Para que esto funcione debemos tener UpnP presente en nuestro router y activado. Entramos en la configuración del router y buscamos esa opción:

FSwinvista3

Una vez activada seguimos.

 

Caso 1 – Conexión con IP estático

En este caso configuramos el vars.xml (en que encontramos en la carpeta ..debug/conf de esta forma (he dejado solamente las líneas que nos interesan):

<include>
  <X-PRE-PROCESS cmd="set" data="domain=mioIP"/>
  <X-PRE-PROCESS cmd="set" data="external_rtp_ip=mioIP"/>
  <X-PRE-PROCESS cmd="set" data="external_sip_ip=mioIP"/>
    <!-- Internal SIP Profile -->
  <X-PRE-PROCESS cmd="set" data="internal_auth_calls=true"/>
  <X-PRE-PROCESS cmd="set" data="internal_sip_port=5070"/>
  <X-PRE-PROCESS cmd="set" data="internal_tls_port=5071"/>
  <X-PRE-PROCESS cmd="set" data="internal_ssl_enable=false"/>
  <X-PRE-PROCESS cmd="set" data="internal_ssl_dir=$${base_dir}/conf/ssl"/>

  <!-- External SIP Profile -->
  <X-PRE-PROCESS cmd="set" data="external_auth_calls=false"/>
  <X-PRE-PROCESS cmd="set" data="external_sip_port=5080"/>
  <X-PRE-PROCESS cmd="set" data="external_tls_port=5081"/>
  <X-PRE-PROCESS cmd="set" data="external_ssl_enable=false"/>
  <X-PRE-PROCESS cmd="set" data="external_ssl_dir=$${base_dir}/conf/ssl"/>
</include>

Si queremos hacer pruebas con un softphone instalado en el mismo computador tenemos que cambiar los puertos del perfil internal para que no hayan conflictos.

 

Caso 2 – Conexión con IP dinámico

En el caso de un IP dinámico tenemos que acudir a un servicio tipo aquello brindado por DynDNS. De esta forma podremos crear un dominio DNS direccionarlo a nuestra IP y configurar el router para que cada vez que se prenda se conecte al servicio y actualice la dirección IP. Vamos por pasos. Creamos una cuenta y cuando esté activa en la parte izquierda escogemos el botón “My services”:

FSwinvista4

entre los varios servicios que aparecen escogemos  Host Services > Add Hostname:

FSwinvista5

 

y en la pagina sucesiva configuramos un dominio del tipo miodominio.dyndns.org:

FSwinvista6

insertando la dirección IP publica que tenemos asignada en ese momento.

Presionamos el botón “Create Host” para crear nuestro hostname.

Ahora volvemos al router y configuramos el Dynamic DNS

FSwinvista7

La configuración de vars.xml en este caso será:

<include>
  <X-PRE-PROCESS cmd="set" data="domain=miodominio.dyndns.org"/>
  <X-PRE-PROCESS cmd="set" data="external_rtp_ip=miodominio.dyndns.org"/>
  <X-PRE-PROCESS cmd="set" data="external_sip_ip=miodominio.dyndns.org"/>
    <!-- Internal SIP Profile -->
  <X-PRE-PROCESS cmd="set" data="internal_auth_calls=true"/>
  <X-PRE-PROCESS cmd="set" data="internal_sip_port=5070"/>
  <X-PRE-PROCESS cmd="set" data="internal_tls_port=5071"/>
  <X-PRE-PROCESS cmd="set" data="internal_ssl_enable=false"/>
  <X-PRE-PROCESS cmd="set" data="internal_ssl_dir=$${base_dir}/conf/ssl"/>

  <!-- External SIP Profile -->
  <X-PRE-PROCESS cmd="set" data="external_auth_calls=false"/>
  <X-PRE-PROCESS cmd="set" data="external_sip_port=5080"/>
  <X-PRE-PROCESS cmd="set" data="external_tls_port=5081"/>
  <X-PRE-PROCESS cmd="set" data="external_ssl_enable=false"/>
  <X-PRE-PROCESS cmd="set" data="external_ssl_dir=$${base_dir}/conf/ssl"/>
</include>

Guardamos los cambios y arrancamos FreeSWITCH clicando dos veces sobre el icono del archivo FreeSwitch.exe presente en la carpeta Debug. Si aparece esta ventana (tenemos el firewall de Windows Vista activado):

FSwinvista8

le damos Desbloquear.

Si todo sale bien deberíamos ya poder conectarnos localmente o desde remoto.

En mi caso para probarlo desde remoto conecté mi servidor Asterisk a FS de Windows Vista:

FSwinvista9

 

Desde local utilicé X-Lite:

FSwinvista10

Y hice una llamada de prueba al IVR que viene con la configuración básica:

FSwinvista11

He hecho prueba desde una extensión de Asterisk al X-Lite y todo parece funcionar bien.

A veces durante la compilación no se instalan los anuncios y la música en espera. Los pueden descargar aqui.

Por ahora no he hecho más pruebas.

Comentarios

gerardo fuentes

ya hice todos los pasos pero cuando intento llamar me dice request time out

time out

per la extension se conecta correctamente al servidor?

o no logras conectarla?

 

Немного о контенте

Блог очень качественный. Вручить бы Вам награду за него или почетный орден. +)

Thank you

Thank you very much. If you want, you can donate.
Best Regards

Enviar un comentario nuevo

CAPTCHA
Esta pregunta es para averiguar si eres un humano (aunque troll)
Image CAPTCHA
Enter the characters shown in the image.
Distribuir contenido Distribuir contenido