Interconectando dos servidores con Asterisk

Telecentro

El fichero de configuración iax.conf en el Telecentro debería parecerse al siguiente:

[general]
bindaddr = 0.0.0.0
tos = lowdelay
disallow = all
allow = ulaw
allow = g729                 ; Permitimos el uso del codec G.729
register => server2:server2pass@training_voip.org
                             ; server2:server2pass es el usuario
                             ; y clave que usamos para registrarnos
                             ; Cuenta de usuario que usará el Centro
                             ; de Capacitación para registrarse con nosotros

[server1]
type=friend
user=server1
secret=server1pass
host=dynamic                 ; Aprendemos la dirección IP
                             ; cuando se registran con nosotros
context=incoming_training_centre_calls
auth=md5                     ; Añadimos seguridad en autentificación
disallow=all
allow=g729
trunk=yes                    ; Activamos el “trunking”

Para alcanzar el Centro de Capacitación desde nuestro Telecentro añadimos un nuevo contexto en el fichero extensions.conf. Cuando una llamada empieza por “99”, redirigimos la conexión al centro de capacitación [server1] a través de Internet.

[outgoing_training_centre_calls]
exten => _99.,1,Dial(IAX2/server2:server2pass@server1/${EXTEN:2})
exten => _99.,2,Congestion     ; En caso de fallo, sonido de congestionado

El siguiente paso es decidir lo que hacemos con las llamadas provenientes del Centro de Capacitación. En el ejemplo hacemos sonar el teléfono analógico (Zap/2) en el Telecentro.

[incoming_training_centre_calls]
exten => _X.,1,Dial(Zap/2)           ; Llamadas desde el centro de capacitación
                                     ; con cualquier número hacen sonar
                                     ; el teléfono analog. del Telecentro

==== Centro de capacitación ====

El fichero iax.conf del centro de capacitación es similar:

<code>
[general]
bindaddr = 0.0.0.0
tos = lowdelay
disallow = all
allow = g729                         ; Usamos G.729
register => server1:server1pass@rural.telecentres.org
                                     ; Nos registramos como usuario server1

[server2]
type=friend
user=server2
secret=server2pass
host=dynamic
context=incoming_telecentres_calls
auth=md5
disallow=all
allow=g729
trunk=yes

Después de configurar el canal IAX2 en el Centro de Capacitación, vamos a añadir el contexto [outgoing_telecentres_calls] y [incoming_telecentres_calls] para gestionar las llamadas salientes y entrantes al/desde el Telecentro.

Creamos una regla en el plan de marcado para que las llamadas que empiecen por 88 se envíen al Telecentro (peer [server2] en iax.conf).

[outgoing_telecentres_calls]
exten => _88.,1,Dial(IAX2/server1:server1pass@server2/${EXTEN:2})
exten => _88.,2, Congestion

Las llamadas entrantes al Centro de Capacitación se redirigen a un centro de atención de usuario. En el siguiente ejemplo, las llamadas entrantes se reenvían al personal de ayuda usando un canal SIP (SIP/supportdesk)1)

[incoming_telecentres_calls]
exten => _X.,1,Dial(SIP/support-desk) ; Llamadas entrantes se envían al centro
                                      ; de atención de usuario (Support Desk)

La función de registro

No se pueden realizar llamadas a un “peer” hasta que se conozca su dirección IP. Imagínate la situación donde sólo una de las dos centralitas tiene la dirección IP fija. El proceso de registro permite al “peer” hacer pública su dirección IP actual. En nuestro ejemplo anterior hemos usado dos órdenes de registro aunque la función de registro no sea estrictamente necesaria porque los comunicantes tienen IP fijas. Para usar las direcciones fijas en lugar del proceso de registro sustituimos la opción host=dynamic por la opción host=<ip_address or domain>.


1) La canal SIP que se ejecuta con Dial() hacia el supportdesk (servicio de atención de usuario) tiene que configurarse en la centralita del Centro de Capacitación.
 
manuales/libros/voip4d/capitulo_8/interconectando_servidores.txt · Última modificación: 2007/02/12 18:59 (editor externo)
 
Recent changes RSS feed Creative Commons License Powered by PHP Driven by DokuWiki