Búsqueda de sitios web

Ntfy: reciba alertas de escritorio o teléfono cuando finalice un comando de ejecución prolongada


Ntfy es una utilidad Python multiplataforma simple pero útil que le permite recibir automáticamente notificaciones de escritorio a pedido o cuando se completan comandos de ejecución prolongada. También puede enviar notificaciones automáticas a su teléfono una vez que se completa un comando en particular.

Admite la integración de shell con shells de Linux populares como bash y zsh; De forma predeterminada, ntfy solo enviará notificaciones para comandos que duren más de 10 segundos y si el terminal está enfocado. También ofrece funciones de soporte de notificaciones de procesos, emjoi, XMPP, Telegram, Instapush y Slack.

Mire el siguiente vídeo que muestra algunas de las funciones de ntfy:

Paso 1: Cómo instalar Ntfy en Linux

El paquete Ntfy se puede instalar usando Python Pip de la siguiente manera.

sudo pip install ntfy

Una vez instalado ntfy, se puede configurar usando un archivo YAML ubicado en ~/.ntfy.yml o en ubicaciones estándar específicas de la plataforma, ~/config/ntfy/ntfy.yml en Linux.

Opera a través de dbus y funciona en la mayoría, si no en todos, los entornos de escritorio Linux populares, como Gnome, KDE, XFCE y con libnotify. Asegúrese de tener instaladas las dependencias necesarias antes de usarlo como se muestra.

sudo apt-get install libdbus-glib-1-dev libdbus-1-dev [On Debian/Ubuntu]
sudo yum install dbus-1-glib-devel libdbus-1-devel    [On Fedora/CentOS]
pip install --user dbus-python

Paso 2: integre Ntfy con Shells de Linux

ntfy ofrece soporte para enviar notificaciones espontáneamente una vez que se completan comandos de ejecución prolongada en bash y zsh. En bash, reproduce la función de la funcionalidad preexec y precmd de zsh usando rcaloras/bash-preexec.

Puede habilitarlo en su archivo .bashrc o .zshrc como se muestra a continuación:

eval  "$(ntfy shell-integration)"

Después de integrarlo con el shell, nfty enviará notificaciones a su escritorio para cualquier comando que dure más de 10 segundos, siempre que el terminal esté enfocado; esta es la configuración predeterminada.

Tenga en cuenta que el enfoque de terminal funciona en X11 y con Terminal.app. Puede configurarlo mediante los indicadores --longer-than y --foreground-too.

Ignorar notificaciones innecesarias

Imaginablemente, puedes eliminar las notificaciones innecesarias cuando ejecutas programas interactivos, esto se puede configurar usando la variable de entorno AUTO_NTFY_DONE_IGNORE.

Por ejemplo, al usar el comando export a continuación, evitará que el comando “vim screen meld” genere notificaciones:

export AUTO_NTFY_DONE_IGNORE="vim screen meld"

Paso 3: Cómo usar Nfty en Linux

Una vez que haya instalado y configurado ntfy, puede probarlo con estos ejemplos:

ntfy send "This is TecMint, we’re testing ntfy"

El siguiente ejemplo muestra cómo ejecutar un comando y enviar una notificación cuando esté terminado:

ntfy done sleep 5

Para utilizar un título de notificación personalizado, configure el indicador -t de la siguiente manera.

ntfy -t 'TecMint' send "Using custom notification title"

El siguiente ejemplo mostrará un emoji para el código particular utilizado.

ntfy send ":wink: Using emoji extra! :joy:" 

Para enviar una notificación al escritorio una vez que se completa un proceso con el ID especificado, utilice el siguiente ejemplo:

ntfy done --pid 2099

Puede ver todas las notificaciones utilizando el indicador de notificaciones, ejecute los siguientes comandos para instalar el indicador de notificaciones recientes.

sudo add-apt-repository ppa:jconti/recent-notifications
sudo apt update && sudo apt install indicator-notifications

Cuando se complete la instalación, inicie el indicador desde Unity Dash, ejecute algunos comandos ntfy y haga clic en el icono del panel para ver todas las notificaciones.

Para ver un mensaje de ayuda, ejecute:

ntfy -h

Paso 4: instale funciones adicionales de Ntfy

Puede instalar funciones adicionales, pero esto requiere dependencias adicionales:

ntfy done -p $PID: requiere instalación como ntfy[pid].

pip install ntfy[pid]

soporte emjoi: requiere instalación como ntfy[emoji].

pip install ntfy[emoji]

Compatibilidad con XMPP: requiere instalación como ntfy[xmpp].

pip install ntfy[xmpp]

Soporte de Telegram: requiere instalación como ntfy[telegram].

pip install ntfy[telegram]

Compatibilidad con Instapush: requiere instalación como ntfy[instapush].

pip install ntfy[instapush]

Soporte de Slack: requiere instalación como ntfy[slack].

pip install ntfy[slack]

Y para instalar múltiples funciones adicionales usando un solo comando, sepárelas con comas como esta:

pip install ntfy[pid,emjoi,xmpp, telegram]

Para obtener una guía de uso exhaustiva, consulte: http://ntfy.readthedocs.io/en/latest/

¡Eso es todo! En este artículo, le mostramos cómo configurar y usar ntfy en las principales distribuciones de Linux. Utilice el formulario de comentarios a continuación para compartir sus opiniones sobre este artículo o compartir con nosotros información sobre utilidades similares de Linux.