Saludos amigos, hace unas semanas escribí uno de los más excitantes de los últimos meses, se trataba de un producto Open Source llamado Rocket Chat que llevaba toda la experiencia de un “Slack” pero de manera Open Source a tu Datacenter:
Hoy os traigo la fusión de Rocket Chat junto a nuestro querido y longevo proyecto Open Source: Zimbra Collaboration, porque no hay que elegir entre Email y Chat, si podemos tener ambos juntos, antes de nada me veo obligado a mostraros una advertencia:
[alert style=”yellow”]Este Zimlet y pasos para Rocket Chat y ZCS, que es un simple iFrame, no están soportados por Zimbra oficialmente, se trata de un proyecto GitHub y Zimbra no tiene nada que ver en este desarrollo. El Soporte de Zimbra no puede asistir con problemas que pudieran surgir de esta integración, etc.[/alert]
Resultado que esperamos obtener
Os dejo una imagen, que vale más que mil palabras, lo que queremos conseguir es una experiencia integrada de Rocket Chat en Zimbra Collaboration, y lo haremos mediante un Zimlet, que quedará así más o menos:
Instrucciones
Cómo instalar Rocket Chat
Para instalar Rocket Chat, por favor seguir el siguiente artículo:
Configurando el LDAP de Rocket Chat para autenticarse con Zimbra
Una de las cosas más cómodas que podemos hacer es que Rocket Chat se autentique con el OpenLDAP de Zimbra Collaboration, de esta manera todos los usuarios de Zimbra, podrán loguearse a Rocket Chat, con sus credenciales de Zimbra, lo cuál hace de esta integración una solución muy robusta.
Dentro de Rocket Chat, nos iremos hasta Administration y después LDAP, habilitaremos entonces la opción de LDAP, marcaremos las opciones como se muestran en la imagen, e introduciremos el Host y el puerto de nuestro Zimbra OpenLDAP, por supuesto el server de Rocket Chat y de Zimbra Collaboration deben tener comunicación entre ellos.
En el campo de Domain Base añadiremos lo siguiente, cambiarlo dependiendo de vuestro dominio: ou=people,dc=zimbra,dc=io
En el campo de Domain Search User seleccionaremos lo siguiente: uid=zimbra,cn=admins,cn=zimbra
Por último, en esta captura, en el campo de Domain Search Password introduciremos la Password de nuestro Zimbra LDAP, podemos conseguirla del servidor lanzando el siguiente comando
zmlocalconfig -s zimbra_ldap_password
Los siguientes campos deben de ser similares a como se muestran en la imagen:

Ya estamos llegando al final, seleccionaremos los campos como se muestran en la imagen, para que se creen los usuarios de manera adecuada, con el nombre e ID correcta, etc. Por último podemos presionar Test Settings y después Sync Users y Save

Descargar e instalar el Zimlet para Rocket Chat
Por suerte para todos, he creado un Zimlet para integrar Rocket Chat dentro de Zimbra, para descargarlo podemos seguir uno de estos dos pasos:
- Descargar el fichero .zip desde aquí – https://github.com/jorgedlcruz/zimbra-rocket/archive/master.zip
- O bien hacer un
git clone https://github.com/jorgedlcruz/zimbra-rocket.git
Tendremos que editar el fichero llamado com_zimbra_rocket.js y editar las siguientes líneas:
- Nombre de la Pestaña que queremos mostrar en Zimbra Web Client:
this.ZimbraRocketTab = this.createApp("Rocket", "", "Rocket");
Y por supuesto la dirección del server de Rocket Chat, así como el tamaño del iFrame, en caso de que no se ajuste a vuestro Skin:
app.setContent('<div style="position: fixed; left:0; width:100%; height:89%; border:0px;"><iframe id="ZimbraRocketFrame" style="z-index:2; left:0; width:100%; height:100%; border:0px;" src=\"https://YOUR-ROCHET-CHAT\"></div>');
Ahora ya podremos crear un fichero .zip con los ficheros, es importante que no generemos un .zip con la carpeta y luego los ficheros, tiene que ser un .zip donde estén todos los ficheros dentro sin carpeta, de la siguiente manera se puede hacer para Linux o Mac:
zip -r com_zimbra_rocket.zip .
adding: .DS_Store (deflated 97%)
adding: com_zimbra_rocket.css (deflated 16%)
adding: com_zimbra_rocket.js (deflated 63%)
adding: com_zimbra_rocket.xml (deflated 55%)
adding: README.md (deflated 32%)
adding: rocket.png (stored 0%)
Instalando el Zimlet de Rocket Chat en Zimbra Collaboration
Ya estamos listos para instalar el Zimelt dentro de nuestra Admin Console, nos iremos hasta la Configuración donde podemos instalar Zimlets y seleccionaremos el nuevo .zip

Si hemos generado el .zip de manera correcta, este será el resultado que veremos:

Tendremos que seleccionar la Class of Service, COS, donde queremos activar o desactivar el Zimlet

Y finalmente, una vez que entramos en Zimbra Collaboration y hacemos click en el Zimlet, una nueva pestaña se abrirá, con el nombre que hayamos seleccionado anteriormente, y podremos introducir el usuario y credenciales del propio Zimbra. Si, ya se que no tiene mucho sentido introducir las credenciales de nuevo, estoy trabajando en una solución
Bonus extra: Integración de Rocket Chat con Zimbra Talk
La integración de Rocket Chat y Zimbra no termina en una experiencia estupenda y amigable para todos los usuarios, si no que también podemos añadir Zimbra Talk a la ecuación para conseguir hasta que las video-llamadas o audio-llamadas sean completamente seguras pasando por nuestros servidores.
Nos iremos hasta Administration > Videoconference e introduciremos nuestro Zimbra Talk FQDN, así mismo tendremos que introducir la Chrome ID de la aplicación de Zimbra Talk para la funcionalidad de Compartir Pantalla
Una vez que tenemos esto configurado, ya podemos irnos hasta un usuario, o un canal dependiendo de nuestra configuración, y realizar video llamadas usando Zimbra Talk, dentro de Zimbra Collaboration y Rocket Chat, ¡impresionante!
Nada más amigos, espero que os guste, que le deis una oportunidad al Zimlet y a Rocket Chat junto a vuestros despliegues de Zimbra Collaboration y Zimbra Talk.



Hola Jorge,
Esta integración también es compatible con Zimbra Network?
Gracias
Salu2
Saludos Adrian,
Como comento, no esta soportado por Zimbra, pero claro que es compatible.
Un saludo
Hola Jorge, dice en el post que se puede integrar Zimbra Talk al Rocket, lo cual es mas que interesante, pero me queda la duda, Zimbra Talk no funciona solo para le Network edition? Muchas gracias.
Saludos Ariel,
Por ahora Talk es solo para NE si, Rocket Chat y Zimbra es solamente un iFrame, no mucho mas por ahora. Si ejecutas Zimbra OSE tendras que usar entonces un server de jitsi por tu cuenta,sin Zimbra Talk, y unirlo a Rocket que a su vez tendrá el iFrame em Zimbra 🙂
Hola Jorge!, excelente integración…
Tengo un duda, individualmente el Rocket funciona… pero dentro de zimbra no, no uso https para el servicio de rocket, revise por ssh si zimbra resuelve por dns y lo hace… se debe a q zimbra lo tengo en https y el rocket solo en http?, me queda la pestaña en blanco.
Espero puedas ayudarme con al duda.
Saludos
Saludos Carlos, si, seguramente sea este el problema. Puedes probar a usar https en rocket?
Un saludo
Gracias por responder tan pronto!
Realice la prueba a la inversa, puse zimbra en modo both para q me acepte por el puerto 80, y logro cargar la pestaña del Rocket.
Sin embargo al poner mis credenciales del rocket, no me redirige a ningún lugar y se queda en blanco, lo mismo si doy clic en algún enlace se vuelve a quedar en blanco…
No me queda claro, que sucede ahora? :s
Saludos Carlos,
Creo que lo mejor es que pongas SSL en ambos servidores. Puedes abrir el inspector de codigo/tools de Chrome o Firefox y ver el error exacto.
Un saludo