LUGStatus

LUGStatus

Mitwirkende: klonfish
Beginn: 2013-04-25
Fertigstellung: 2013-04-25
Status: fertig

Der LUGStatus ist ein kleines Icon, das auf der Webcam-Seite http://lug-saar.no-ip.org anzeigt, ob sich im Moment jemand in den Vereinsräumen aufhält oder nicht.

Der aktuelle Status wird ermittelt, indem ein Skript per Cronjob jede Minute per SNMP am immer aktiven Switch im Hauptraum prüft, ob bestimmte Ports Link haben oder nicht. An diesen Ports hängen die beiden Switche am Tisch im Hauptraum sowie der Switch im Nebenraum. Dies ist ein ziemlich eindeutiges Indiz dafür, ob jemand in den Räumen ist oder nicht, da diese Switche nur dann an sind, wenn jemand da ist.

Das Skript schreibt dann den aktuellen Status in eine Datei, die dann vom PHP-Skript der Webseite ausgewertet wird. Zudem wird der LUGStatus dazu benutzt, dass WLAN im Vereinsraum an- bzw. abzuschalten (s. neo)

Eingesetztes Skript

statusbot.sh
#! /bin/bash
 
set -u
set -e
 
# LUG is considered online if at least one of the ports on switch0 is up
# 4: Table switch 1
# 6: Table switch 2
# 25: Switch above fridge
PORTS="4 6 26"
AGENT="switch0"
OID_PREF="1.3.6.1.2.1.2.2.1.8."
COMMUNITY=public
SNMP_VERSION=1
STATUSFILE="/tmp/lug-status.dat"
 
for port in $PORTS; do
	status=`snmpget -v $SNMP_VERSION -c $COMMUNITY -O vq $AGENT $OID_PREF$port`
	if [ "$status" = "up" ]; then
		echo 1 > $STATUSFILE
		exit 0
	fi
done
 
# LUG is offline if all ports are down
echo 0 > $STATUSFILE
projekte/lugstatus.txt · Zuletzt geändert: 2014/10/26 20:20 von klonfish
Nach oben
chimeric.de = chi`s home Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0