Recherche de site Web

Ntfy - Recevez des alertes sur le bureau ou le téléphone lorsque la commande de longue durée se termine


Ntfy est un utilitaire Python multiplateforme simple mais fonctionnel qui vous permet de recevoir automatiquement des notifications sur le bureau à la demande ou lorsque des commandes d'exécution longue sont terminées. Il peut également envoyer des notifications push à votre téléphone une fois qu'une commande particulière est terminée.

Il prend en charge l'intégration du shell avec les shells Linux populaires tels que bash et zsh ; par défaut, ntfy n'enverra des notifications que pour les commandes d'une durée supérieure à 10 secondes et si le terminal est focus. Il offre également des fonctionnalités pour la prise en charge des notifications de processus, emjoi, XMPP, Telegram, Instapush et Slack.

Regardez la vidéo suivante qui démontre certaines fonctionnalités de ntfy :

Étape 1 : Comment installer Ntfy sous Linux

Le package Ntfy peut être installé à l'aide de Python Pip comme suit.

sudo pip install ntfy

Une fois ntfy installé, il peut être configuré à l'aide d'un fichier YAML situé dans ~/.ntfy.yml ou dans des emplacements spécifiques à la plate-forme standard, ~/config/ntfy/ntfy.yml sous Linux.

Il fonctionne via dbus et fonctionne sur la plupart, sinon tous les environnements de bureau Linux populaires tels que Gnome, KDE, XFCE et avec libnotify. Assurez-vous d'avoir installé les dépendances requises avant de l'utiliser comme indiqué.

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

Étape 2 : Intégrer Ntfy aux shells Linux

ntfy prend en charge l'envoi spontané de notifications une fois les commandes de longue durée terminées dans bash et zsh. Dans bash, il reproduit la fonction des fonctionnalités preexec et precmd de zsh en utilisant rcaloras/bash-preexec.

Vous pouvez l'activer dans votre fichier .bashrc ou .zshrc comme ci-dessous :

eval  "$(ntfy shell-integration)"

Après l'avoir intégré au shell, nfty enverra des notifications sur votre bureau pour toute commande d'une durée supérieure à 10 secondes à condition que le terminal soit concentré, c'est le paramètre par défaut.

Notez que le focus terminal fonctionne sur X11 et avec Terminal.app. Vous pouvez le configurer via les indicateurs --longer-than et --foreground-too.

Ignorer les notifications inutiles

Imaginablement, vous pouvez supprimer les notifications inutiles lors de l'exécution de programmes interactifs, cela peut être configuré à l'aide de la variable d'environnement AUTO_NTFY_DONE_IGNORE.

Par exemple, en utilisant la commande export ci-dessous, vous empêcherez la commande « vim screen meld » de générer des notifications :

export AUTO_NTFY_DONE_IGNORE="vim screen meld"

Étape 3 : Comment utiliser Nfty sous Linux

Une fois que vous avez installé et configuré ntfy, vous pouvez le tester avec ces exemples :

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

L'exemple ci-dessous montre comment exécuter une commande et envoyer une notification une fois l'opération terminée :

ntfy done sleep 5

Pour utiliser un titre de notification personnalisé, définissez l'indicateur -t comme suit.

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

L'exemple ci-dessous montrera un emoji pour le code particulier utilisé.

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

Pour envoyer une notification au bureau une fois qu'un processus avec l'ID spécifié est terminé, utilisez l'exemple ci-dessous :

ntfy done --pid 2099

Vous pouvez afficher toutes les notifications à l'aide de l'indicateur de notification, exécutez les commandes ci-dessous pour installer l'indicateur de notifications récentes.

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

Une fois l'installation terminée, lancez l'indicateur depuis Unity Dash, exécutez quelques commandes ntfy et cliquez sur l'icône du panneau pour afficher toutes les notifications.

Pour afficher un message d'aide, exécutez :

ntfy -h

Étape 4 : Installer des fonctionnalités Ntfy supplémentaires

Vous pouvez installer des fonctionnalités supplémentaires mais cela nécessite des dépendances supplémentaires :

ntfy done -p $PID – nécessite une installation en tant que ntfy[pid].

pip install ntfy[pid]

Support emjoi – nécessite une installation en tant que ntfy[emoji].

pip install ntfy[emoji]

Prise en charge de XMPP : nécessite une installation en tant que ntfy[xmpp].

pip install ntfy[xmpp]

Prise en charge de Telegram : nécessite une installation en tant que ntfy[telegram].

pip install ntfy[telegram]

Prise en charge d'Instapush : nécessite une installation en tant que ntfy[instapush].

pip install ntfy[instapush]

Prise en charge de Slack : nécessite une installation en tant que ntfy[slack].

pip install ntfy[slack]

Et pour installer plusieurs fonctionnalités supplémentaires à l'aide d'une seule commande, séparez-les par des virgules comme ceci :

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

Pour un guide d'utilisation exhaustif, consultez : http://ntfy.readthedocs.io/en/latest/

C'est tout! Dans cet article, nous vous avons montré comment configurer et utiliser ntfy dans les distributions Linux traditionnelles. Utilisez le formulaire de commentaires ci-dessous pour partager vos réflexions concernant cet article ou bien partagez avec nous des informations sur des utilitaires Linux similaires.