Paso 4: Configurar su dispositivo SIP
En el tipo de proxy (o dominio) en la dirección IP o nombre de host de su FS PBX.
El nombre para mostrar puede ser todo lo que quieras.
ID de usuario debe ser 2001 (porque eso es lo que lo).
La contraseña es del que compone por encima.
Inicio FS en la línea de comandos /usr/local/freeswitch/bin/freeswitch
Guardar y reiniciar el dispositivo SIP. Usted SIP dispositivo ahora debería estar registrado. Se puede probar por medio de oír un tono de marcar en su teléfono.
Abrir otra ventana de inicio de sesión a su PBX y dejar la anterior consola de freeswitch abierta en la otra ventana. Nos a hacer referencia a ella más tarde.
Editar el conf/dialp/default.xml y agregue lo siguiente justo después de la sección de extensión "desmonte". Cambie sólo los campos resaltados con su dirección IP del dispositivo SIP.
< nombre de extensión = "gvoice_in" >
< campo condición = expresión de «código» = «^ mod_dingaling$ «>
<!--< aplicación acción = "info" / > >-->
< aplicación acción = datos del "registro" = "Consola de GV llamar IN!" / >
< aplicación acción = datos del "registro" = "Consola ${destination_number}" / >
< aplicación acción = "start_dtmf" / >
< aplicación acción = "set" data = "execute_on_answer = 1 send_dtmf
<!--< aplicación acción = "cidlookup" data = "$1" / > >-->
< aplicación acción = "set" data = "hangup_after_bridge = true" / >
<!--< aplicación acción = "set" data = "originate_continue_on_timeout = true" / >-->
<!--< aplicación acción = "set" data = "call_timeout = 35" / >-->
< aplicación acción = "puente" data = usuario/2001"
< aplicación acción = "respuesta" / >
< condición / >
< / extensión >
< nombre de extensión = "gvoice_out" >
< condición regex = "cualquiera" >
< campo regex = "destination_number" expression="^(\d{10})$" / >
< campo regex = expression="^\+1(\d{10})"dialed_extension"/ >
< campo regex = "destination_number" expression="\+1(\d{10})$" / >
< aplicación acción = "set" data = "hangup_after_bridge = true" / >
< aplicación acción = "set" data = "ringback = ${anillo nos}" / >
< aplicación acción = "set" data = "call_timeout = 45" / >
< aplicación acción = "ring_ready" / >
< aplicación acción = "puente" data = "$ dingaling/gtalk / + 1 1
< condición / >
< / extensión >
Editar el conf/autoload_configs/dingaling.conf.xml y reemplazar su contenido con el siguiente.
< name="dingaling.conf de configuración" Descripción = "Extremo Jingle XMPP" >
configuración de < >
< nombre de param = "debug" valor = "0" / >
< nombre de param = "codec-prefs" valor = "PCMU" / >
< / Configuración >
< X-PRE-proceso cmd = "incluir" datos = "... /jingle_profiles/*.xml"/ >
< / Configuración >
Volver a la ventana de consola de freeswitch, tipo reloadxml y recarga mod_dingaling
Ahora usted está puede probar hacer saliente y recibir llamadas.
Si todo funciona a su satisfacción, su tiempo para hacer libre inicia automáticamente durante el arranque.
Creación de un servicio de inicio de FS
Crear un nuevo archivo llamado /etc/init.d/freeswitch pegar el contenido de este archivo.
#chown -R freeswitch:freeswitch /etc/init.d/freeswitch
#chmod + x /etc/init.d/freeswitch
#update-rc.d defaults de freeswitch
#/etc/init.d/freeswitch Inicio
Reiniciar la central telefónica y comprobar que el demonio comenzó con éxito y que todo está funcionando.
Optimización de Codec de voz (Opcional)
Encontré que el codec por defecto hace llamadas a ser entrecortada. Para solucionar esto, se ha cambiado el codec por defecto por PCMA.
Reemplazar los siguientes en conf/vars.xml
< X-PRE-proceso cmd = "set" data = "global_codec_prefs = G7221
< X-PRE-proceso cmd = "set" data = "outbound_codec_prefs = PCMU, PCMA, GSM" / >
con las siguientes
< X-PRE-proceso cmd = "set" data = "global_codec_prefs = PCMA" / >
< X-PRE-proceso cmd = "set" data = "outbound_codec_prefs = PCMA" / >
Guarde el archivo y detener e iniciar el servicio
#service FS parada & & dormir 15 & & servicio de inicio de FS
script de inicio de FS
#! / bin/sh
# Iniciar/detener el daemon de FS.
#
### BEGIN INIT INFO
# Proporciona: FS
# Inicio requerido: $network
# Parada necesaria:
# Inicio debe:
# Debe parar:
# Por defecto-Inicio: 2 3 4 5
# Por defecto-Stop: 0 1 6
# Short-Description:
# Descripción:
### END INIT INFO
PATH = / bin: / usr/bin: / sbin: / usr/sbin
DESC = "FS"
NOMBRE = FS
DAEMON = / usr/local/freeswitch/bin/FS
DARGS = "-nc"
PIDFILE=/var/run/FreeSwitch.PID
SCRIPTNAME=/etc/init.d/"$Name"
Test -f $DAEMON || exit 0
. /lib/LSB/init-Functions
# allí porque debe estar en /etc/default/locale.
(parse_environment)
{
para ENV_FILE en/etc//etc/default/locale de medio ambiente; hacer
[- r "$ENV_FILE"] || continuar
[-s "$ENV_FILE"] || continuar
para var en LANG lenguaje LC_ALL LC_CTYPE; hacer
valor ='egrep "^ ${var} =" "$ENV_FILE" | cola - n1 | Cut -d = - f2'
[-n "$value"] & & eval exportación $var = $value
Si [-n "$value"] & & ["$ENV_FILE" = /etc/environment]; entonces
log_warning_msg "/ etc/environment ha quedado obsoleto para información de configuración regional; Utilice /etc/default/locale para $var = $value en su lugar "
fi
hecho
hecho
# Obtener el conjunto de la zona horaria.
Si [- z "$TZ" - una -e/etc/timezone]; entonces
TZ = 'cat TimeZone'
fi
}
# Analizar el entorno del sistema
Si ["$READ_ENV" = "yes"]; entonces
parse_environment
fi
Case "$1" en
Inicio) log_daemon_msg "Salida FS" "FS"
ulimit -s 240
OLDPID = 'pgrep $NAME'
NEWPID = 'cat $PIDFILE' 2 >/dev/null
Si ["$OLDPID" = "$NEWPID"]; entonces
echo "Ya está ejecutando servicio" & & salida 1
otra cosa
su - $NAME -c "$DAEMON $DARGS" >/dev/null 2 > & 1
fi
sueño 1
ps-ef|grep $DAEMON|grep - v grep|awk '{impresión$ 2}' > $PIDFILE
¿log_end_msg $?
;;
parada) log_daemon_msg "Detener FS" "FS"
Kill 'cat $PIDFILE' >/dev/null 2 > & 1
¿RETVAL = $?
[$RETVAL - eq 0] & & [-e "$PIDFILE"] & & rm -f $PIDFILE
log_end_msg $RETVAL
;;
el reinicio) log_daemon_msg "Reiniciar FS" "FS"
tope de $0
inicial de $0
log_end_msg 0
;;
Estado de la)
status_of_proc -p $PIDFILE $DAEMON $NAME & & exit 0 || ¿salida $?
;;
*) log_action_msg "uso: /etc/init.d/freeswitch {start|stop|status|restart|reload|force-reload}"
salida 2
;;
ESAC
exit 0