diff options
Diffstat (limited to 'noise/modules/shackstatus')
| -rwxr-xr-x | noise/modules/shackstatus | 104 | 
1 files changed, 104 insertions, 0 deletions
| diff --git a/noise/modules/shackstatus b/noise/modules/shackstatus new file mode 100755 index 00000000..a5058f0a --- /dev/null +++ b/noise/modules/shackstatus @@ -0,0 +1,104 @@ +#! /bin/bash + +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}' ) +   +      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. +        /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 +} + +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 +} + +main "$@" | 
