148 - Tu propio servicio de mensajería en Linux
Como instalar y configurar tu propio servicio de mensajería en Linux, para utilizarlo en Android, en la Raspberry y en el escritorio con Gotify Indicator
Hasta la fecha para tener información de lo que sucedía en la Raspberry o en el VPS estaba utilizando Telegram. Resulta tremendamente sencillo, práctico y cómodo. Sin embargo, hay algo que me chirría. No es por cuestiones de privacidad, porque Telegram pueda saber cuando hago una copia de seguridad, o si se me ha caído un servicio. Se trata de que yo estoy utilizando algo para un fin para el que no fue pensado… No se. Hace unos meses Angel uGeek, publicó sobre Gotify, un servicio de mensajería. Sin embargo, se me pasó por alto. Pero, al fin y al cabo es lo que andaba buscando, servicio de mensajería en Linux propio, que no dependiera de un tercero.
Recientemente, y a raíz de la reflexión anterior, y tras instalar algún que otro servicio adicional en la Raspberry, donde necesitaba tener información al respecto, pensé en buscar una solución alternativa a Telegram…. y así es como caí en Gotify.
Pero he querido ir un paso mas allá, y es poder estar informado de lo que sucede en la Raspberry directamente en mi Linux de escritorio, y para eso te traigo la aplicación del mes de febrero.
Tu propio servio de mensajería en Linux
En que ando metido
Como todos los jueves te cuento en que ando metido, para que sepas lo que vas a encontrar en los próximos días y semanas en atareao.es.
Artículos
Respecto a los artículos, esta semana he publicado dos interesantes artículos. El primero de los artículos es referente a la utilidad eyeD3
. Una herramienta que te va a permitir editar archivos mp3 en el terminal. Sin embargo, no quiero que te lleves a engaño, se trata de editar la metainformación de tus archivos en formato mp3
, ogg
, etc.
Actualmente estoy utilizando eyeD3
con 3 objetivos principales. El primero es añadir la carátula al archivo mp3. El segundo es completar la metainformación. El tercero, es asegurar que las meta etiquetas son compatibles con apple podcast. Por supuesto, también está la necesidad de añadir alguna que otra meta información adicional… pero esto ya es lo que menos.
Por otro lado, continuo con el tutorial sobre Vim, y en este caso, te adentro en el fantástico mundo de buscar y reemplazar en Vim. Algo que es verdaderamente potente gracias, en especial, a las expresiones regulares. En este nuevo capítulo del tutorial, encontrarás información detallada, para sacar el máximo provecho posible a esta aplicación.
Aplicaciones
Respecto a las aplicaciones, como te puedes imaginar, ando trabajando en varias, sin embargo, el objetivo es que en las próximas semanas quiero liberar una nueva versión de Pomodoro Indicator, en la que incluir las estadísticas de uso.
Igualmente quiero empezar con una nueva aplicación, que te permita tener el cambio de divisas directamente en el escritorio.
Por otro lado, y a raíz del podcast del lunes, he pensad implementar un complemento para Ulauncher, que permita buscar palabras en un diccionario.
Como crear tu propio servicio de mensajería en Linux
Empecemos por Gotify
Primero aclararte que Gotify no es un reemplazo para Telegram ni mucho menos. No tienes las posibilidades que te ofrece Telegram.
Entonces ¿Que es Gotify? Se trata de un sencillo servicio para enviar y recibir mensajes. Así de fácil. Que características tiene este servicio,
- Se trata de un servicio que lo hospedas tu. Tu lo vas a instalar en un servidor, que puede ser desde una Raspberry hasta un VPS, o como si lo quieres hospedar en tu propio ordenador, donde quieras.
- Tanto la API como la interfaz de usuario son sencillas a mas no poder. Es de esas cosas que siempre me gustan para las aplicaciones y servicios. Sencillo, minimalista y que va al grano.
- Se trata de un servicio que está implementado en Go, con lo que lo puedes compilar fácilmente para la plataforma que necesites.
- Igualmente existen imágenes para Docker actualizadas en cada revisión.
- Se trata de una plataforma que es Open Source y gratuita.
Instalación
Dado que tienes a tu disposición la posibilidad de instalarlo con Docker, esto es precisamente lo que he hecho.
Por supuesto, yo he tirado de Traefik, para hacerlo todavía de forma mas sencilla, y tenerlo siempre disponible desde Internet. Te recomiendo escuches el podcast 142, sobre tus contenedores accesibles desde internet para conocer todas las ventajas que te ofrece este proxy inverso especializado en Docker, y sobre todo lo fácil y sencillo que es.
En particular, para el caso de Gotify, el archivo docker-compose.yaml
es el siguiente,
version: '3.5'
services:
gotify:
image: gotify/server-arm7
container_name: gotify
restart: unless-stopped
volumes:
- ./data:/app/data
labels:
- traefik.enable=true
- traefik.frontend.rule=Host:gotify.servicio.duckdns.org
- traefik.port=80
- traefik.backend=gotify
- traefik.docker.network=traefik_proxy
networks:
- traefik_proxy
networks:
traefik_proxy:
external: true
Con algo tan sencillo como esto, ya tengo levantando mi servicio de mensajería propio en una Raspberry Pi 3 y funcionando a las mil maravillas.
Acceder al servicio de mensajería
Para acceder a Gotify simplemente dirígete a https://gotify.servicio.duckdns.org
. La primera vez el usuario y contraseña son admin
y admin
respectivamente. No es necesario que lo comente, pero, evidentemente tienes que cambiarlo. Sobre todo, teniendo en cuenta que lo tienes expuesto a internet.
Una vez dentro, verás que en la parte superior tienes Usuarios
, Aplicaciones
y Clientes
, además de otras opciones como son los Plugins
. Por aclarar,
Usuarios
son las personas que pueden acceder a la interfaz webAplicaciones
son las herramientas que pueden enviar mensajesClientes
son las aplicaciones que pueden recibir mensajes
Esto es importante, porque en función de lo que vayas a necesitar necesitarás crear un tipo u otro, o incluso ambos, como verás mas adelante.
Una vez hayas creado una aplicación ya puedes enviar tus mensajes.
Un cliente para el terminal
Por supuesto Gotify, tiene un cliente para el terminal, un aplicación para el termianl con el que va a poder enviar tus propios mensajes. Para instalarlo, tan solo tienes que crear un token para la aplicación, conforme te he indicado anteriormente.
Para instalar este cliente, tan solo tienes que ejecutar las siguientes instrucciones en un terminal,
wget -O gotify https://github.com/gotify/cli/releases/download/v1.2.0/gotify-cli-linux-amd64
chmod +x gotify
mv gotify /usr/bin/gotify
Una vez instalado el cliente, el siguiente paso es inicializarlo. Para ello, tan solo tienes que utilizar el asistente, que puedes ejecutar con gotify init
. Una vez configurado el cliente, puedes comenzar a enviar mensajes al servicio de mensajería de Gotify, que leerán todos los clientes que estén contectados. Algunos ejemplos de como enviar mensajes,
gotify push my message
gotify push "my message"
echo my message | gotify push
gotify push < somefile
gotify push -t "my title" -p 10 "my message"
Doce meses doce aplicaciones
Tal y como indiqué en el episodio 137 de un 2019 espectacular a un 2020 brutal, uno de los própositos para este año nuevo era liberar una nueva aplicación cada mes.
En el mes de Enero, en el podcast 139, te presenté la primera de las aplicaciones para medir tus hábitos para ser mas productivo.
Y ¿porque te cuento todo esto si estabamos hablando de tu propio servicio de mensajería en Linux? Precisamente, la segunda de las aplicaciones que libero este año está relacionado con Gotify. Se trata de una aplicación con la que vas a poder enviar y recibir mensajes entre tu servicio de mensajería en Linux y tu escritorio Linux. Se trata de Gotify Indicator.
Hasta la fecha, siempre has tenido tu Raspberry Pi por un lado, y tu flamante escritorio Linux por el otro. Ha llegado el momento de que tu Raspberry Pi se hable con tu escritorio Linux.
Sobre Gotify Indicator
Gotify Indicator es una sencilla aplicación que te va a permitir recibir todos los mensajes de tu servicio de mensajería en Linux directamente en el escritorio, y por supuesto, también, enviar tus mensajes. De esta forma te puedes relacionar, no solo con tu Raspberry, sino con cualquier otro dispositivo que esté conectado a tu servicio de mensajería.
Instalación
Si bien Gotify Indicator no se encuentra en los repositorios oficiales de Ubuntu, lo cierto es que su instalación es tremendamente sencilla, ya que está alojado en el PPA de Launchapad atareao. Así, para instalar esta aplicación, tan solo tienes que ejecutar las siguientes instrucciones en un terminal,
sudo add-apt-repository ppa:atareao/atareao
sudo apt update
sudo apt install gotify-indicator
Configurar
El siguiente paso es crear los token en tu servicio de mensajería. Para ello, tienes que ir a la pestaña de aplicaciones y crear un token, conforme ves en la siguiente captura de pantalla.
El siguiente paso, es crear el token para el cliente. Igualmente, puedes ver como hacerlo en la siguiente captura de pantalla.
No confundas los token. El de cliente tiene que ir en la caja de texto de cliente y el de aplicación en el suyo correspondiente. Además tienes que añadir el nombre de la aplicación que has configurado en el servidor, conforme ves en la siguiente captura de pantalla.
Errores y futuras versiones
Lo primero es agradecer la colaboración de Ángel de uGeek que me ha estado ayudando a probar el cliente de escritorio en otro equipo que no fuera el mio. No solo esto, sino que ha sido el promotor principal de la usabilidad de la aplicación.
Tan es así, que ni yo mismo sabía configurarla en la primera versión que hice. Con esto te lo digo todo. Estaba todo realmente confuso. Sin embargo, gracias a la ayuda de Ángel, esto se ha quedado completamente resuelto.
Si tienes cualquier problema con la aplicación, indícamelo si es posible en el proyecto de GitHub, o como tu consideres. Lo importante es el feedback.
Indicarte que durante los próximos días liberaré una nueva actualización, porque la segunda de las colaboraciones, ha sido la traducción al italiano que todavía no está incorporado. Y por otro lado, quiero eliminar el molesto efecto que se produce al enviar un mensaje, dado que desde que pulsas el botón enviar, hasta que se cierra el diálogo, pasan unos milisegundos que son desconcertantes para el usuario. Así que en los próximos días nueva versión.
Te agradecería una valoración en iVoox y en Apple Podcast.
Más información,
Imagen de portada de Kristina Tripkovic on Unsplas