Zoeken op website

Ntfy - Ontvang waarschuwingen op uw bureaublad of telefoon wanneer een langlopende opdracht is voltooid


Ntfy is een eenvoudig maar bruikbaar platformonafhankelijk Python-hulpprogramma waarmee u automatisch bureaubladmeldingen kunt ontvangen op aanvraag of wanneer langlopende opdrachten zijn voltooid. Het kan ook pushmeldingen naar uw telefoon sturen zodra een bepaalde opdracht is voltooid.

Het ondersteunt shell-integratie met populaire Linux-shells zoals bash en zsh; standaard verzendt ntfy alleen meldingen voor opdrachten die langer dan 10 seconden duren en als de terminal gefocust is. Het biedt ook functies voor proces-, emjoi-, XMPP-, Telegram-, Instapush- en Slack-meldingsondersteuning.

Bekijk de volgende video waarin een deel van de ntfy-functionaliteit wordt gedemonstreerd:

Stap 1: Ntfy installeren onder Linux

Het Ntfy pakket kan als volgt worden geïnstalleerd met behulp van Python Pip.

sudo pip install ntfy

Zodra ntfy is geïnstalleerd, kan het worden geconfigureerd met behulp van een YAML-bestand in ~/.ntfy.yml of op standaard platformspecifieke locaties, ~/config/ntfy/ntfy.yml op Linux.

Het werkt via dbus en werkt op de meeste, zo niet alle, populaire Linux-desktopomgevingen zoals Gnome, KDE, XFCE en met libnotify. Zorg ervoor dat de vereiste afhankelijkheden zijn geïnstalleerd voordat u deze gebruikt, zoals weergegeven.

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

Stap 2: Integreer Ntfy met Linux Shells

ntfy biedt ondersteuning voor het spontaan verzenden van meldingen zodra langlopende opdrachten zijn voltooid in bash en zsh. In bash reproduceert het de functie van de preexec- en precmd-functionaliteit van zsh met behulp van rcaloras/bash-preexec.

U kunt het inschakelen in uw .bashrc- of .zshrc-bestand, zoals hieronder:

eval  "$(ntfy shell-integration)"

Na integratie met de shell zal nfty meldingen naar uw bureaublad sturen voor alle opdrachten die langer dan 10 seconden duren, op voorwaarde dat de terminal gefocust is, dit is de standaardinstelling.

Merk op dat terminalfocus werkt op X11 en met Terminal.app. Je kunt het configureren via de vlaggen --longer-than en -foreground-too.

Negeer onnodige meldingen

Het is denkbaar dat u onnodige meldingen kunt elimineren bij het uitvoeren van interactieve programma's. Dit kan worden geconfigureerd met behulp van de AUTO_NTFY_DONE_IGNORE env-variabele.

Als u bijvoorbeeld het onderstaande export-commando gebruikt, voorkomt u dat het commando “vim screen meld ” meldingen genereert:

export AUTO_NTFY_DONE_IGNORE="vim screen meld"

Stap 3: Nfty gebruiken onder Linux

Nadat u ntfy hebt geïnstalleerd en geconfigureerd, kunt u het testen met deze voorbeelden:

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

In het onderstaande voorbeeld ziet u hoe u een opdracht uitvoert en een melding verzendt wanneer deze klaar is:

ntfy done sleep 5

Om een aangepaste meldingstitel te gebruiken, stelt u de vlag -t als volgt in.

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

In het onderstaande voorbeeld wordt een emoji weergegeven voor de specifieke gebruikte code.

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

Gebruik het onderstaande voorbeeld om een melding naar het bureaublad te sturen zodra een proces met de opgegeven ID is voltooid:

ntfy done --pid 2099

U kunt alle meldingen bekijken met behulp van de meldingsindicator. Voer de onderstaande opdrachten uit om de recente meldingsindicator te installeren.

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

Wanneer de installatie is voltooid, start u de indicator vanuit Unity Dash, voert u een paar ntfy-opdrachten uit en klikt u op het pictogram in het paneel om alle meldingen te bekijken.

Om een helpbericht te bekijken, voert u het volgende uit:

ntfy -h

Stap 4: Installeer aanvullende Ntfy-functies

U kunt extra functies installeren, maar dit vereist extra afhankelijkheden:

ntfy done -p $PID – vereist installatie als ntfy[pid].

pip install ntfy[pid]

emjoi-ondersteuning – vereist installatie als ntfy[emoji].

pip install ntfy[emoji]

XMPP-ondersteuning – vereist installatie als ntfy[xmpp].

pip install ntfy[xmpp]

Telegram-ondersteuning – vereist installatie als ntfy[telegram].

pip install ntfy[telegram]

Instapush-ondersteuning – vereist installatie als ntfy[instapush].

pip install ntfy[instapush]

Slack-ondersteuning – vereist installatie als ntfy[slack].

pip install ntfy[slack]

En om meerdere extra functies te installeren met één enkele opdracht, scheidt u ze met komma's, zoals:

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

Voor een uitgebreide gebruikshandleiding, ga naar: http://ntfy.readthedocs.io/en/latest/

Dat is alles! In dit artikel hebben we je laten zien hoe je ntfy instelt en gebruikt in de reguliere Linux-distributies. Gebruik het onderstaande feedbackformulier om uw mening over dit artikel te delen of deel met ons informatie over vergelijkbare Linux-hulpprogramma's.