You are here

Servidor de Mensajería (IM) con integración Asterisk

Nuestro compañero Ricky muy amablemente nos ha ofrecido un documento donde se describe con todo lujo de detalles como Integrar Asterisk con un servidor de mensajería instantánea Openfire. Podéis descargar el documento original aquí. Y sin más preámbulos, aquí va el tutorial:

Siempre me interesó la mensajería instantánea con olor a software libre, mejor dicho jabber , luego salió otra alternativa muy buena llamada openfire es un servidor jabber / XMPP escrito en java.

Bueno manos a la obra, nos bajamos el openfire de la pagina http://www.igniterealtime.org/ , puedes bajarte los binarios o el rpm , en este caso me he bajado el rpm para centos 5 , asegúrate de tener todas las dependencias necesarias como el sun‐java5‐jre , sun‐java5‐jdk , sun‐java5‐doc , lo iniciamos con service openfire start después que lo iniciamos creamos una base de datos en el gestor de su preferencia en mi caso Mysql mysqladmin -u root -p create openfire , después acedemos a través de nuestro explorador de su preferencia en mi caso firefox ingresamos la ip de nuestro servidor de mensajería 197.0.0.1:9090 , escogemos el idioma de nuestra preferencia “english” , continuamos en “server setting” agregamos el dominio de nuestra red o ponemos el hostname de nuestro servidor , los puertos por defecto 9090 , 9091 , en Database setting escojemos “estándar database conecction”, continuamos.

Database Settings - Standard Connection

Database Driver Presets: escojemos MYSQL
Database URL: dbc:mysql://hostname:3306/nombrebasededatosopenfire
Username: root
Password: mi contraseña de mysql

En Profile Settings

  • Dejamos default

Administrator Account

  • Escogemos una cuenta valida de correo y el password del administrador de openfire , le damos continuar y listo nos logeamos como admin a la consola de openfire con la contraseña que asignamos.

Después que nos logueamos , damos click en plugins y escogemos Available Plugins

  • Escogemos Asterisk‐IM Openfire Plugin y lo instalamos
  • Una vez instalado el plugin de asterisK , nos debe aparecer a la par de plugins algo asi
General Settings
  • Habilitamos el Asterisk-IM
  • Agregamos el servidor asterisk
Create Phone Server
  • Server name : hostname
  • Server address: localhost
  • Port: 5038
  • Username: admin (datos del manager.conf asterisk)
  • Password: mi contraseña (datos del manager.conf asterisk)

En Configure Phone Manager

  • El contexto de tus extensiones
General Settings

Una ves realizados estos pasos nos dirigimos a Phone Mappings

Agregamos un usuario creado dentro de mensajería instantánea en mi caso rickygm, esto lo creas bajándote el spark y instalándolo

Spark

En Phone Mapping

Debería quedar algo asi

Phone Mappings

Una vez realizados estos pasos nos logueamos con spark, cuando hablemos por nuestra fantástica pbx, veremos que el spark pone el estado hablando por teléfono

Spark

Gracias, Ricky

Asterisk: 
Qué te parece: 

Comments

Tengo montado un servidor de estos en la empresa y la verdad es que va muy bien.

 

Hace como 3 años que lo tengo funcionando con 60 usuarios.

 

El cliente propio para windows no me gusta mucho así que prefiero usar pidgin o sobretodo http://www.pandion.be/ para windows.

Pues la verdad es que no conocía spark ni tampoco pandion, normalmente uso pidgin por comodidad (ya que es el que viene instalado por defecto).

Clientes Windows no conocia.

Realmente con la de puestos de trabajo windows que hay en la empresa, y dado que resulta útil e interesante integrar mensajería instantánea en Asterisk, creo que voy a necesitar un vmware con windows para probar. Embarassed

a mi me parecio interesante el Openfire , mas cuando lei en la pagina oficial de ellos que se integraba con asterisk , super dije tengo que probarlo , lo relaciono muy util para cuando tengas mas de 50 extensiones que monitorear , lo puedes hacer con spark creando grupos una integracion CTI como dicen por ahi .... ahh por ciertos mis disculpas por mandarlo en dicho formato , es que la mayoria de mis usuarios en mi pais lo usan ....

La integración de Openfire con Asterisk parece bastante buena y seguramente cada vez nos permetirá más funcionalidades.

Respecto a lo del formato nada, es que yo no lo tengo aún y aquí todavía no está muy generalizado.

Saludos

Consulta desde Costa Rica,

Soy nuevo en este tema de Asterisk+Openfire, quiero implementar esta solucion tan buena, pero me encontre con el problema que NO PUEDO AGREGAR UN Phone Server en OpenFire, ya tengo clientes usuando el IM.

Cuando agrego el Asterisk-IM plugin todo perfecto...

Pero cuando trato de agregar el Phone Server parece hacerlo, hasta indica en el banner verde que fue agregado pero no aparece en la lista de servidores.

Si alguno me puede indicar que debo revisar en el servidor.

TENGO TRIXBOX version CE 2.6 y Openfire 3.5.1

Saludos,

Saludos Wilfredo,

me sabe un poco mal pero de momento te tengo que contestar con una pregunta.

Puedes mirar de arrancar el servidor de OpenFire y probar a ver si en la consola aparece un error parecido a este:

Missing database schema for asterisk-im. Attempting to install...
asterisk-im - Database update failed. Please manually upgrade your database.

Saludos, me da a mí que por aquí va el tema. No? Undecided

Hola, me pasa lo mismo con el Openfire 3.5.1, en la consola me sale

Missing database schema for asterisk-im. Attempting to install...
asterisk-im - Database update failed. Please manually upgrade your database.

Que puedo Hacer?

 

Esto suele pasar al usar la base de datos HSQL embebido y al parecer no se crean correctamente las tablas, yo lo solucioné de la siguiente manera:

En el directorio de instalación de openfire tienes el fichero plugins/asterisk-im/database/asterisk-im_hsqldb.sql

Lo editas para que quede así:

CREATE TABLE phoneServer (
serverID BIGINT NOT NULL,
serverName VARCHAR(255) NOT NULL,
hostname VARCHAR(255) NOT NULL,
port INTEGER NOT NULL,
username VARCHAR(255) NOT NULL,
password VARCHAR(255) NOT NULL,
CONSTRAINT phoneServer_pk PRIMARY KEY(serverID)
);

CREATE TABLE phoneDevice (
deviceID BIGINT NOT NULL,
device VARCHAR(255) NOT NULL,
extension VARCHAR(255) NOT NULL,
callerID VARCHAR(255),
isPrimary INTEGER NOT NULL,
userID INTEGER,
serverID BIGINT NOT NULL,
CONSTRAINT phoneDevice_pk PRIMARY KEY (deviceID)
);
CREATE TABLE phoneUser (
userID BIGINT NOT NULL,
username VARCHAR(255) NOT NULL,
CONSTRAINT phoneUser_pk PRIMARY KEY (userID)
);
CREATE UNIQUE INDEX phoneUser_username_idx ON phoneUser(username);

INSERT INTO jiveVersion (name, version) VALUES ('asterisk-im', 2);

Luego reinicias Openfire y prueba de añadir el phone server otra vez.

Saludos, espero que así te funcione.

a mi me paso lo mismo, no me sale ningun mensaje en la consola, ya revise el archido de mqls y estaba igual, pero sigo con la falla, alguna idea de que pueda ser???, gracias. Tengo elastix

gracias en mi empresa tengo un servidor open fire y ha dado un buen resultado, pero tengo un problema la consola de administracion de usurios no habre la pag. y no he podido crear usurios nuevos ni editarlos. que debo hacer ??'

Tenemos en nuestra empresa el servicio de IM de open fire utilizamos la version 3.5.2 y me gustaria conocer de los problemas frecuentes en la consola, tanto como la implementación del Arterisk!!

Saludos,.

Respecto a los administradores en Costa Rica me temo que yo no puedo ayudarte mucho. Hay multitud de manuales sobre como implementar Asterisk en la red, la verdad es que ahora hay interfaces gráficas como Asterisk-GUI, o AsteriskNow que pueden ayudarte mucho en la configuración.

Respecto a los problemas de integración con el servidor Openfire del que disponéis en la empresa no deberías tener más problemas aparte del anteriormente citado.

Saludos.

Buenas tardes, tengo un problema, ojala  me puedan ayudar, tengo instalado asterisk 1.4 y openfire 3.5.2, ambos en la misma maquina con fedora core 8, ya instale el plugin de asterisk IM en el openfire, ya agregue el servidor d asterisk como c muestra en el ejemplo d este foro, pero no me aparece en verde la esfera del lado izq osea q no me conecta, ya agregue en el manager.conf de asterisk al usuarion admin, de la siguiente manera:

[admin]
secret = admin
deny=0.0.0.0/0.0.0.0
permit=192.168.1.0/255.255.255.0
writetimeout = 100
read = system,call,log,verbose,command,agent,user,config
write = system,call,log,verbose,command,agent,user,config

d antemano,GRACIAS

Hola Emilio,

En permit deberías poner la IP de la máquina, prueba a substituir 192.168.1.0 por 127.0.0.1, al estar en la misma máquina debería valer.

Ya nos cuentas, también puedes comprobar que tengas el bindaddr = 0.0.0.0 dentro del archivo manager.conf

Saludos

Muy beunas tardes viendo tu respuesta si esta muy chido yo lo tengo jalando dentro de la empresa y funciona muy bien en ambiente windows tengo una sola duaq y me gustaria saber si me podrias ayudar a resolverla en coorporativo tengo instalado en un server el Openfire y en la farbica igual pero lo que tengo probelma es en contactar o agregar lso usuarios de la fabrica o de la fabrica a coorporativo.

 

Me gustaria que me ayudaran porfavor.

Hola Arturo,

no hay ningún problema en echarte una mano dentro de lo posible pero tu descripción del problema no deja entrever cuales son las posibles causas.

Por favor, sería necesario que nos indicaras que error te aparece cuando intentas realizar la operación, algún mensaje de error un poco más descriptivo que te aparezca cuando intentas realizar la operación que nos comentas.

Saludos.

Saludos a todos y gracias por el Tuto esta bien hecho ahora el problema que tengo es que al registrar mi Trixbox 2.6 ya me sale en linea pero al ir a ver el phone mappings solo me sale una extension y no me reconoce las demas

Disculpen si estoy usando este sistema como foro de consulta (no me llevo con los foros de ayuda en ingles), me paso algo que aun no resuelvo, pude instalar el openfire desde rpm (fedora 9), inicio el servicio, corro el wizard, elijo contraseña y cuando quiero loguearme a la consola de admin no puedo, no reconoce la contraseña.
Me puedo loguear desde Spark al servidor como admin y con la clave seleccionada pero no puedo entrar en la consola web de administracion.
Alguien me podra dar una mano de como hacerlo?, quiza insertar por DB otro usuario administrador.
Espero que sea algo simple que obvie o no lei. Disculpas por esto tambien si fuera asi.

Muchas Gracias por la ayuda.

Federico

Habia que probar algo mas, la prueba que hice fue cambiar la password desde el cliente spark (logueado como admin) en la seccion preferencias. Luego del cambio pude loguearme a la consola web de administracion.
Espero que esto no le suceda a nadie ya que es muy frustrante, pero si pasa quiza les sea util mi aporte.

Muchas Gracias por el tutorial.

Saludos

Federico

Muchas gracias por el aporte Federico,

de bien seguro que a alguien le librarás de algun quebradero de cabeza.

Saludos.

Siento no haber podido responder antes.

Buenos dias, que tal, yo soy nuevo en esto, me he guiado poco a poco con manuales, ya active el openfire, lo configure con la base embebida ahi mismo, me baje el plugin para integrar el asterisk con el openfire, lo instale, me salio el tab nuevo de asterisk-IM pero a lo que le doy click para configurar eso, me sale error de pagina, como cuando se cae el internet, ojala me puedan dar una mano con esto, gracias.