Configuracion de Asterisk como cliente en Openfire (Servidor Jabber)

Actualizado 09 Septiembre 2009

La configuración de asterisk como cliente jabber en Openfire es parecida a la de GoogleTalk que ya se explicó en otro articulo. Para la instalación de Openfire pueden echar una miradita a este articulo. Para que el modulo res_jabber funcione en Asterisk, tienen que asegurarse de haber seguido todos los pasos necesarios. Primero tenemos que modificar el archivo de configuración jabber.conf presente en la carpeta /etc/asterisk

nano /etc/asterisk/jabber.conf

[general]
debug=yes ; activamos el debug
autoprune=yes ; remueve automáticamente los usuarios de la lista de amigos
autoregister=yes ; registra automáticamente los usuarios en lista de amigos

[vozcom] ; etiqueta que define este tipo de conexión (importante para las aplicaciones Jabberstatus y Jabbersend de Asterisk)
type=client ; asterisk actuará como un cliente (las opciones son componente y server)
serverhost=voztovoice.net ; el dominio de nuestro servidor openfire o su IP
username=vozcom@voztovoice.net/openfire ; Nombre del usuario jabber de nuestro servidor asterisk
secret=contraseña ; la contraseña
priority=10; el nivel de prioridad que tiene en cliente en caso de conflictos (ej: dos conexiones simultanea del mismo usuario)
port=5222 : el puerto TCP del servidor usado para conectarse
usetls=yes ; Usar el protocolo TLS
usesasl=yes ; Usar el protocolo SASL
buddy=voznet@voztovoice.net ; la lista de amigos, uno por línea
buddy=admin@voztovoice.net
buddy=fulano@voztovoice.net
statusmessage=Asterisk server ; un mensaje personalizado para nuestro servidor Asterisk
timeout=100 ;

Guardamos el archivo y antes de actualizar la configuración de Asterisk vamos a configurar este usuario en Openfire. Abrimos Firefox y en la barra de las direcciones ponemos

https://www.example.com:9091

www.example.com es la dirección de nuestro servidor Openfire y 9091 el puerto para conectarnos a él

Una vez entrados en la barra de menú escogemos "Usuarios/Grupos" y luego en el menú vertical en la izquierda "crear nuevo usuario"

Rellenamos el formulario y luego hundimos el botón crear usuario. Ahora que tenemos nuestro servidor asterisk configurado como cliente en nuestro servidor Openfire podemos actualizar la configuración de Asterisk.

/etc/init.d/asterisk reload

Podemos averiguar si todo salió bien desde nuestra consola de asterisk

asterisk -rvvvvvvvvvvvv

CLI> jabber show connected
       Jabber Users and their status:
       User: voztovoicecom@gmail.com/talk     - Connected
       User: vozcom@voztovoice.net/openfire     - Connected

En mi caso, mi servidor (asterisk 1.6) está conectado como cliente a Openfire y a GoogleTalk

CLI> jabber show buddies
Jabber buddy lists
Client: voztovoicecom@gmail.com/talk
       Buddy: voztovoicecom@gmail.com
                Resource: None
        Buddy:  fulano@gmail.com
                Resource: None
        Buddy:  sutano@gmail.com
                Resource: None
Client: vozcom@voztovoice.net/openfire
        Buddy: fulano@voztovoice.net
                Resource: None
        Buddy:  admin@voztovoice.net
                Resource: None
        Buddy:  voznet@voztovoice.net
                Resource: openfire
                        node:
http://www.asterisk.org/xmpp/client/caps
                        version: asterisk-xmpp

Con el comando "jabber show buddies" veremos los usuarios que tenemos en nuestra lista de amigos y si están o no conectados.

Dudas, preguntas?

Comentarios

Hola disculpa mi ignorancia, pero en que me beneficia el asterisk como cliente jabber?

Gracias

Si tienes tu asterisk conectado a un servidor jabber puedes usar la aplicación jabbersend, por ejemplo, para enviar mensajes a otros clientes jabber. Ya que ahora distintos clientes SIP vienen con un cliente Jabber, puedes monitorear tu servidor asterisk o recibir un mensaje que te avise de una llamada.
Mira esta dirección - http://www.voztovoice.org/?q=node/60

Si lo usas también como cliente Gtalk, puedes hacer y recibir llamadas de otros usuarios de googletalk desde tu extensión (cliente SIP).

A mi me parece útil, que opinas?
Chao

Gracias por la respusta,

Muy interesante y se puede inventar mucho.

de nada y la verdad si, se puede inventar mucho :)

Si quieres compartir tus inventos, registrate y tendrás un blog personal disponible, ademas de los foros.

Chao

mira....instalo todo como lo dices y configure el archivo "jabber.conf" y cuando me conecto al cli me dice esto

JABBER: asterisk INCOMING: DIGEST-MD5PLAINANONYMOUSCRAM-MD5zlib
[Aug 1 17:54:13] ERROR[3059]: res_jabber.c:883 aji_act_hook: OpenSSL not installed. You need to install OpenSSL on this system, or disable the TLS option in your configuration file
[Aug 1 17:54:13] WARNING[3059]: res_jabber.c:692 aji_recv: XML parsing failed
[Aug 1 17:54:13] WARNING[3059]: res_jabber.c:1931 aji_recv_loop: JABBER: Got hook event.
asterisk*CLI> jabber show connected
Jabber Users and their status:
User: server@192.168.1.10/openfire - Disconnected

el tema es que aunque tengo instalado OpenSSl en la ultima version y comentada la linea de TLS del no me funciona...alguna idea?

La verdad parece bastante raro.

Lo unico que se me ocurre es si instalaste gnutls y gnutls-dev antes de compilar iksemel. De openSSL me imagino que instalaste tambien el dev (OpenSSL-dev).

Si esto no soluciona tu problema pega tu configuracion de jabber.conf para ver si hay algo que no esta bien.

Saludos

me darias la pagina para descargar los paketes de linux x ejemplo como descargar :
sun-java6-bin
sun-java6-jre
sun-java6-plugins
para instalar a mi servidor de ubuntu server 9.04

Tienes que descargar solo el archivo bin y luego instalarlo.

Ya miraste esta guia?

De todas formas el enlace es este:

http://www.java.com/es/download/manual.jsp

Amigo, hay algún software que se integre con Elastix y sirva para videoconferencias, colaboración.?