148 - Tu propio servicio de mensajería en Linux

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

1:25
-3:15

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 servicio de mensajería en Linux

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 web
  • Aplicaciones son las herramientas que pueden enviar mensajes
  • Clientes 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.

Configuración de la aplicación en el servicio de mensajería en Linux

El siguiente paso, es crear el token para el cliente. Igualmente, puedes ver como hacerlo en la siguiente captura de pantalla.

Configuración del cliente en el servicio de mensajería en Linux

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.

Configuración en Gotify Indicator como cliente del servicio de mensajería en Linux

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *