Freitag, 4. September 2009

libnotify - einfach und praktisch

Durch Hack A Day bin ich heute auf das kleine Programm libnotify gestoßen. Dieses erlaubt sehr einfach Benachrichtigungen auf dem Desktop auszugeben. Schnell ergeben sich einige Einsatzszenarien:
  1. Systemüberwachung:
    Sehr einfach ist die Ausgabe des syslogs oder von anderen Logdateien. Das geht sicher auch eleganter, aber diese wenigen Zeilen zeigen wie einfach libnotify funktioniert:
    #!/bin/bash
    
    X="EIN"
    syslog="leer"
    syslogalt="leer"
    dmsg="leer"
    dmsgalt="leer"
    publicip="leer"
    publicipalt="leer"
    
    while [ "$X" == "EIN" ] ; do
    
            syslog=$(tail -n 1 /var/log/syslog)
            if [ ! "$syslog" = "$syslogalt" ]; then
                    notify-send -i $HOME/skripte/syslog.png "syslog:" "$syslog"
            fi
            syslogalt="$syslog"
            sleep 5
            dmsg=$(tail -n 1 /var/log/dmesg)
            if [ ! "$dmsg" = "$dmsgalt" ]; then
                    notify-send -i $HOME/skripte/dmesg.png "dmesg:" "$dmsg"
            fi
            dmsgalt="$dmsg"
            sleep 5
            publicip=$(lynx -dump http://checkip.dyndns.org)
            if [ ! "$publicip" = "$publicipalt" ]; then
                    notify-send -i $HOME/skripte/ip.png "Neue IP-Adresse:" "$publicip"
            fi
            publicipalt="$publicip"
            sleep 5
    done
    
    Sehr primitiv und nichts für den Dauereinsatz, aber es funktioniert. Übrigens, unter skripte/ liegen bei mir auch die Icons für die Notifications.
  2. Irssi-Highlights remote:
    Was mich viel mehr begeistert, ist eine andere Möglichkeit. Wie viele, lasse ich Irssi remote in Screen laufen um es nicht immer neu starten zu müssen. Das macht leider die Ausgabe von Highlights als Notification schwieriger und beeinträchtigt so den Nutzen. Durch ein einfaches Skript lässt sich dies aber auch hier lösen:
    #!/bin/bash
    
    ssh server "tail -n 10 $HOME/.irssi/fnotify; > $HOME/.irssi/fnotify; tail -f $HOME/.irssi/fnotify" |
            sed -ru "
                    s/&/\&/g;
                    s//\>/g;
                    s%(#[a-zA-Z]+ )<([^>]{0,10})>%\1\2 %g;" |
            while read heading message
            do
                    notify-send -i "$HOME/skripte/irssi.png" -- "${heading}" "${message}"
            done
    
    Vorlage für dieses Skript war dieses hier. Damit es funktioniert, wird das Irssi-Skript fnotify benötigt, welches in .irssi/scripts/ liegen muss und in Irssi mittels /run fnotify.pl gestartet wird.

User Status

Du bist nicht angemeldet.

Suche

 

Aktuelle Beiträge

Sorry, dass ich schon...
Sorry, dass ich schon wieder nerve, aber dann sitzt...
Maxe (Gast) - 23. Nov, 22:37
Das erste "tail" ist...
Das erste "tail" ist remote, das zweite lokal. Die...
Barahir - 23. Nov, 20:15
Super
Danke. Kannst du mir jetzt noch verraten, wozu das...
Maxe (Gast) - 23. Nov, 18:23

Charts Lieblingskünstler - Diese Woche

RSS Box

The Harlequin project
This impressive little mod is quite fantastic really....
Caleb Kraft - 11. Dez, 23:13
Remote bike mountain
The Remote Bike project, caught our eye today. Inspired...
Caleb Kraft - 11. Dez, 21:36
Advanced in car computer system
[Jonathan] sent us a pretty in-depth writeup of his...
Caleb Kraft - 11. Dez, 19:28
Bender keg cooler
What? Another Bender project? This almost went in...
Caleb Kraft - 11. Dez, 17:55
Perspective tracking with only a web cam
[Johhny chung Lee], eat your heart out. Check out...
Caleb Kraft - 11. Dez, 16:31
Word Clock redux
[drj113] wrote back to let us know his latest version...
Jakob Griffith - 11. Dez, 15:29
Barahir: Gründe warum Amazon so erfolgreich ist: Gestern...
Barahir: Gründe warum Amazon so erfolgreich ist:...
11. Dez, 09:25
Remote control pellet gun – with scope
Project Thunderbird is an automated predator and pest...
Mike Szczys - 11. Dez, 00:32
WiiMote + iPhone Update
Using a Wii remote as the controller for iPhone games?...
Mike Szczys - 10. Dez, 21:01
Bulbdial clock kit released
Evil Mad Scientist Laboratories has just released...
Mike Szczys - 10. Dez, 19:00
AC Shield will take your breath (heart beat) away.
[Ryanjmclaughlin] came up with the idea of a Arduino...
Mike Szczys - 10. Dez, 17:28
Bendërbrau now a reality
It appears to be 5 o’clock somewhere as everyone...
Jakob Griffith - 10. Dez, 15:27
Schöner die Cluster nie schwenken
Es gibt Dinge über die kann man wunderbar streiten:...
Joern - 9. Dez, 19:46
Verizon users shout “I am root!”
Droid has been rooted. It was only a matter of time...
Mike Szczys - 9. Dez, 17:44
Robot hands you your ass at beer pong
Guess who built this contraption? You’re right,...
Mike Szczys - 9. Dez, 16:44

Status

Online seit 1136 Tagen
Zuletzt aktualisiert: 23. Nov, 22:37