From 0c633c12d5658c963cec93526936666781f4f359 Mon Sep 17 00:00:00 2001 From: root Date: Fri, 22 Apr 2011 11:18:51 +0200 Subject: modules/shackstatus: krebsified --- modules/shackstatus | 218 ++++++++++++++++++++++++---------------------------- 1 file changed, 101 insertions(+), 117 deletions(-) diff --git a/modules/shackstatus b/modules/shackstatus index 8b32d48b..4e103310 100755 --- a/modules/shackstatus +++ b/modules/shackstatus @@ -1,127 +1,111 @@ #! /bin/bash -inputdir=$HOME/noise/streams -speak () { - echo "$@" >> $NOISE_linefeed +main() { + case "$1" in + (--help) + echo "report status of all shack services." + ;; + (*) + test "$(dig +short localhost @10.42.0.10 )" = "127.0.0.1" && + STAT_DNS_I="läuft" || STAT_DNS_I="antwortet nicht" + test "$(dig +short shackspace.de @10.42.0.10 )" = "141.31.176.214" && + STAT_DNS_E="läuft" || STAT_DNS_E="antwortet nicht" + test "$(dig +short shackspace.de @141.31.176.214 )" = "141.31.176.214" && + STAT_DNS_X="läuft"|| STAT_DNS_X="antwortet nicht" + + STAT_LINE=$(ping -c 5 -i 0.2 -q 141.31.176.214 | + awk '/packet loss/ { print 100-$6}' ) + STAT_TEMP=$(dig +short txt outside.elwood.temp.citecs.de | + sed 's/^"DEG //; + s/"$//; + s/^-/minus /; + s/\./ komma /; + s/\(.\)$/ \1 grad zelsius/ + ') + + cat <<-EOF >> $NOISE_linefeed + /set pitch 10 + /espeak -v Hallo - Ich bin Krebs. + /espeak -v Heute ist `wochentag`, der `tag` --- `monat` -- `date +%Y` + /zeit + /espeak -v tcheck der systeme: + /espeak -v Energie versorgung -- aktiv + /espeak -v shackhost -- läuft + /espeak -v telnet -- läuft + /espeak -v interner - D N S -- interne - do-mejn -- $STAT_DNS_I + /espeak -v interner - D N S -- externe - do-mejn -- $STAT_DNS_E + /espeak -v externer - D N S - $STAT_DNS_X + /espeak -v Leitungsqualität - $STAT_LINE prozent. + /espeak -v Die Außen-tempera-tur beträgt $STAT_TEMP + /espeak -v krebs kompjuting bereit + EOF + ;; + esac 2>&1 } -wochentag () { - case $(date +%a) in - Mon) echo Montag ;; - Tue) echo Dienstag ;; - Wed) echo Mittwoch ;; - Thu) echo Donnerstag ;; - Fri) echo Freitag ;; - Sat) echo Samstag ;; - Sun) echo Sonntag ;; - esac +wochentag() { + case $(date +%a) in + (Mon) echo Montag ;; + (Tue) echo Dienstag ;; + (Wed) echo Mittwoch ;; + (Thu) echo Donnerstag ;; + (Fri) echo Freitag ;; + (Sat) echo Samstag ;; + (Sun) echo Sonntag ;; + esac } -tag () { - case $(date +%d) in - 1) echo erste ;; - 2) echo zweite ;; - 3) echo dritte ;; - 4) echo vierte ;; - 5) echo fünfte ;; - 6) echo sechste ;; - 7) echo siebte ;; - 8) echo achte ;; - 9) echo neunte ;; - 10) echo zehnte ;; - 11) echo elfte ;; - 12) echo zwölfte ;; - 13) echo dreizehnte ;; - 14) echo vierzehnte ;; - 15) echo fünfzehnte ;; - 16) echo sechzehnte ;; - 17) echo siebzehnte ;; - 18) echo achtzehnte ;; - 19) echo neunzehnte ;; - 20) echo zwanzigste ;; - 21) echo einundzwanzigste ;; - 22) echo zweiundzwanzigste ;; - 23) echo dreiundzwanzigste ;; - 24) echo vierundzwanzigste ;; - 25) echo füfundzwanzigste ;; - 26) echo sechsundzwanzigste ;; - 27) echo siebenundzwanzigste ;; - 28) echo achtundzwanzigste ;; - 29) echo neunundzwanzigste ;; - 30) echo dreissigste ;; - 31) echo einunddreissigste ;; - esac +tag() { + case $(date +%d) in + (1) echo erste ;; + (2) echo zweite ;; + (3) echo dritte ;; + (4) echo vierte ;; + (5) echo fünfte ;; + (6) echo sechste ;; + (7) echo siebte ;; + (8) echo achte ;; + (9) echo neunte ;; + (10) echo zehnte ;; + (11) echo elfte ;; + (12) echo zwölfte ;; + (13) echo dreizehnte ;; + (14) echo vierzehnte ;; + (15) echo fünfzehnte ;; + (16) echo sechzehnte ;; + (17) echo siebzehnte ;; + (18) echo achtzehnte ;; + (19) echo neunzehnte ;; + (20) echo zwanzigste ;; + (21) echo einundzwanzigste ;; + (22) echo zweiundzwanzigste ;; + (23) echo dreiundzwanzigste ;; + (24) echo vierundzwanzigste ;; + (25) echo füfundzwanzigste ;; + (26) echo sechsundzwanzigste ;; + (27) echo siebenundzwanzigste ;; + (28) echo achtundzwanzigste ;; + (29) echo neunundzwanzigste ;; + (30) echo dreissigste ;; + (31) echo einunddreissigste ;; + esac } -monat () { - case $(date +%b) in - Jan) echo Januar ;; - Feb) echo Februar ;; - Mar) echo März ;; - Apr) echo April ;; - May) echo Mai ;; - Jun) echo Juni ;; - Jul) echo Juli ;; - Aug) echo August ;; - Sep) echo September ;; - Oct) echo Oktober ;; - Nov) echo November ;; - Dec) echo Dezember ;; - esac +monat() { + case $(date +%b) in + (Jan) echo Januar ;; + (Feb) echo Februar ;; + (Mar) echo März ;; + (Apr) echo April ;; + (May) echo Mai ;; + (Jun) echo Juni ;; + (Jul) echo Juli ;; + (Aug) echo August ;; + (Sep) echo September ;; + (Oct) echo Oktober ;; + (Nov) echo November ;; + (Dec) echo Dezember ;; + esac } -case "$1" in - (--help) - echo "report status of all shack services." - ;; - (*) -# just a multiline comment -cat << EOF > /dev/null - /set pitch 10 - /espeak -v Hallo. Krietscher hat seinen Meister vermisst. - /espeak -v Heute ist `wochentag`, der `tag` --- `monat` -- `date +%Y` - /zeit - /espeak -v check der systeme: - /espeak -v Energie versorgung -- aktiv - /espeak -v schäckhost -- läuft - /espeak -v telnet -- läuft - /espeak -v interner - de - enn -- es, interne domein -- $STAT_DNS_I - /espeak -v interner - de - enn -- es, externe domein -- $STAT_DNS_E - /espeak -v externer - de - enn -- es - $STAT_DNS_X - /espeak -v Leitungsqualität - $STAT_LINE prozent. - /espeak -v Die Aussen temper atur beträgt $STAT_TEMP - /espeak -v Willkommen zu Hause, -- Meister -EOF - -[ $( dig +short localhost @10.42.0.10 ) = "127.0.0.1" ] && STAT_DNS_I="läuft" || STAT_DNS_I="antwortet nicht" -[ $( dig +short shackspace.de @10.42.0.10 ) = "141.31.176.214" ] && STAT_DNS_E="läuft"|| STAT_DNS_E="antwortet nicht" -[ $( dig +short shackspace.de @141.31.176.214 ) = "141.31.176.214" ] && STAT_DNS_X="läuft"|| STAT_DNS_X="antwortet nicht" - -STAT_LINE=$( ping -c 5 -i 0.2 -q 141.31.176.214 | awk '/packet loss/ { print 100-$6}' ) -STAT_TEMP=$( dig +short txt outside.elwood.temp.citecs.de | - sed 's/^"DEG //; - s/"$//; - s/^-/minus /; - s/\./ komma /; - s/\(.\)$/ \1 grad zelsius/ - ' -) - -cat <<-EOF >> $NOISE_linefeed - /set pitch 10 - /espeak -v Hallo. Krietscher hat seinen Meister vermisst. - /espeak -v Heute ist `wochentag`, der `tag` --- `monat` -- `date +%Y` - /zeit - /espeak -v check der systeme: - /espeak -v Energie versorgung -- aktiv - /espeak -v schäckhost -- läuft - /espeak -v telnet -- läuft - /espeak -v interner - de - enn -- es, interne domein -- $STAT_DNS_I - /espeak -v interner - de - enn -- es, externe domein -- $STAT_DNS_E - /espeak -v externer - de - enn -- es - $STAT_DNS_X - /espeak -v Leitungsqualität - $STAT_LINE prozent. - /espeak -v Die Aussen temper atur beträgt $STAT_TEMP - /espeak -v Willkommen zu Hause, -- Meister -EOF - ;; -esac 2>&1 +main "$@" -- cgit v1.2.3