Ntfy - Få skrivebords- eller telefonvarsler når langvarig kommando er ferdig


Ntfy er et enkelt, men likevel brukbart Python-verktøy på tvers av plattformer som lar deg automatisk motta skrivebordsvarsler på forespørsel eller når langvarige kommandoer er fullført. Den kan like godt sende push-varsler til telefonen din når en bestemt kommando er fullført.

Den støtter skallintegrasjon med populære Linux-skall som bash og zsh; som standard vil ntfy bare sende varsler for kommandoer som varer lenger enn 10 sekunder og hvis terminalen er fokusert. Den tilbyr også funksjoner for prosess, emjoi, XMPP, Telegram, Instapush og Slack-varslingsstøtte.

Sjekk ut følgende video som demonstrerer noe av ntfy-funksjonaliteten:

Trinn 1: Slik installerer du Ntfy i Linux

Ntfy-pakken kan installeres ved å bruke Python Pip som følger.

sudo pip install ntfy

Når ntfy er installert, kan den konfigureres ved hjelp av en YAML-fil som ligger i ~/.ntfy.yml eller på standard plattformspesifikke steder, ~/config/ntfy/ntfy.yml på Linux.

Den opererer via dbus, og fungerer på de fleste om ikke alle populære Linux-skrivebordsmiljøer som Gnome, KDE, XFCE og med libnotify. Sørg for at du har nødvendige avhengigheter installert før du bruker den som vist.

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

Trinn 2: Integrer Ntfy med Linux Shells

ntfy tilbyr støtte for spontan sending av varsler når langvarige kommandoer er fullført i bash og zsh. I bash gjengir den funksjonen til zshs preexec- og precmd-funksjonalitet ved å bruke rcaloras/bash-preexec.

Du kan aktivere den i filen .bashrc eller .zshrc som nedenfor:

eval  "$(ntfy shell-integration)"

Etter å ha integrert den med skallet, vil nfty sende varsler på skrivebordet ditt for alle kommandoer som varer lenger enn 10 sekunder forutsatt at terminalen er fokusert, dette er standardinnstillingen.

Merk at terminalfokus fungerer på X11 og med Terminal.app. Du kan konfigurere den via flaggene --longer-than og --foreground-too.

Ignorer unødvendige varsler

Tenk, du kan gjøre unna unødvendige varsler når du kjører interaktive programmer, dette kan konfigureres ved å bruke AUTO_NTFY_DONE_IGNORE env-variabelen.

Hvis du for eksempel bruker eksport-kommandoen nedenfor, vil du forhindre at kommandoen «vim screen meld» genererer varsler:

export AUTO_NTFY_DONE_IGNORE="vim screen meld"

Trinn 3: Slik bruker du Nfty i Linux

Når du har installert og konfigurert ntfy, kan du teste det med disse eksemplene:

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

Eksemplet nedenfor viser hvordan du kjører en kommando og sender et varsel når den er ferdig:

ntfy done sleep 5

For å bruke en egendefinert varslingstittel, sett -t-flagget som følger.

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

Eksemplet nedenfor viser en emoji for den aktuelle koden som brukes.

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

For å sende et varsel til skrivebordet når en prosess med den angitte IDen er fullført, bruk eksemplet nedenfor:

ntfy done --pid 2099

Du kan se alle varsler ved å bruke varslingsindikatoren, kjør kommandoene nedenfor for å installere nylige varslingsindikatorer.

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

Når installasjonen er fullført, start indikatoren fra Unity Dash, kjør noen ntfy-kommandoer og klikk på ikonet fra panelet for å se alle varsler.

For å se en hjelpemelding, kjør:

ntfy -h

Trinn 4: Installer flere Ntfy-funksjoner

Du kan installere tilleggsfunksjoner, men dette krever ekstra avhengigheter:

ntfy ferdig -p $PID – krever installasjon som ntfy[pid].

pip install ntfy[pid]

emjoi-støtte – krever installasjon som ntfy[emoji].

pip install ntfy[emoji]

XMPP-støtte – krever installasjon som ntfy[xmpp].

pip install ntfy[xmpp]

Telegramstøtte – krever installasjon som ntfy[telegram].

pip install ntfy[telegram]

Instapush-støtte – krever installasjon som ntfy[instapush].

pip install ntfy[instapush]

Slack-støtte – krever installasjon som ntfy[slack].

pip install ntfy[slack]

Og for å installere flere ekstra funksjoner ved hjelp av en enkelt kommando, separer dem med komma slik:

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

For en uttømmende bruksveiledning, sjekk ut: http://ntfy.readthedocs.io/en/latest/

Det er alt! I denne artikkelen viste vi deg hvordan du konfigurerer og bruker ntfy i de vanlige Linux-distribusjonene. Bruk tilbakemeldingsskjemaet nedenfor for å dele tankene dine angående denne artikkelen, eller del informasjon med oss om lignende Linux-verktøy.