Aus gegebenen Anlass, habe ich mal wieder ein kleinen 
PRTG-Sensor benötigt der auf einen Raspberry Pi läuft.
Die Software ist wie bei mir meistens in C# geschrieben,
daher wird auch wieder das Mono-Paket auf den Pi benötigt.
Features:
- Bring einen eigenen Webserver mit
- Kann direkt den DHT11 (Temp/Hum Sensor) auswerten
- Datenausgabe über JSON und XML
- Unterstützt den ISC-DHCPD Server (Kann in der App.config aktiviert werden)
Lizenz:
Download:
Bilder:
Aufbau:
Abfage:
- http://<IP>/api/xml
<prtg> <result> <channel>Temperature</channel> <value>24</value> </result> <result> <channel>Humidity</channel> <value>35</value> </result> </prtg>
- http://<IP>/api/json/all
{"temp":24,"hum":35} - http://<IP>/api/json/temp
{"temp":24} - http://<IP>/api/json/hum
{"hum":35}
Installation:
1.Mono Installieren
erstmal müssen wir mono installieren
sudo apt-get install mono-complete
2. ISC-DHCPD installieren (Optional)
auch hier einfach über nachfolgenden befehl installieren.
sudo apt-get install isc-dhcp-server
3. Programm entpacken
Jetzt erstmal den download entpacken und in z.B. /home/pi Kopieren
4. Programm anpassen
Jetzt kann unter /home/pi/SKBB.PRTGSensor/SKBB.PRTGSensor.exe.config
der SKBB.PRTGSensor Konfiguriert werden.
<!--##########################################################################################################--> <!--Der Port auf dem der Webserver läuft --> <add key="ListeningPort" value="80" /> <!--Zeitspanne der Messung vom Sensor (ms) --> <add key="DoWorkCheckInterval" value="30000" /> <!--Debug Modus? --> <add key="DebugMode" value="false" /> <!--Ist der ISC-DHCPD Server installiert? --> <add key="ISC-DHCPD" value="false" /> <!--##########################################################################################################-->
5. Programm starten
sudo mono /home/pi/SKBB.PRTGSensor/SKBB.PRTGSensor.exe
6. Programm Init Start-Script erstellen (Optional)
Für diese Lösung müssen wir erstmal screen installieren.
sudo apt-get install screen
Jetzt unter /etc/init.d de Script erstellen.
#! /bin/sh
# SKBB.PRTGSensor Startscript
# Author: Dennis Hinzpeter
# Email: kontakt@bastelbunker.de
#
### BEGIN INIT INFO
# Provides: SKBB.PRTGSensor
# Required-Start: $local_fs $remote_fs
# Required-Stop: $local_fs $remote_fs
# Should-Start: $network
# Should-Stop: $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: SKBB.PRTGSensor
# Description: Starts the SKBB.PRTGSensor service
### END INIT INFO
cd /
DESC="SKBB.PRTGSensor"
SCREEN="/usr/bin/screen -- -D -m -S $DESC"
DAEMON="/usr/bin/mono /home/pi/SKBB.PRTGSensor/SKBB.PRTGSensor.exe"
PIDFILE=/var/run/SKBB.PRTGSensor.pid
set -e
start_daemon()
{
echo -n "==> Starting $DESC: "
start-stop-daemon --start --make-pidfile --pidfile $PIDFILE --background --exec $SCREEN $DAEMON
echo "$DESC started."
}
stop_daemon()
{
echo -n "==> Stopping $DESC: "
start-stop-daemon --stop --pidfile $PIDFILE
rm -f $PIDFILE
echo "$DESC stopped."
}
case "$1" in
start)
start_daemon
;;
stop)
stop_daemon
;;
restart|force-reload)
stop_daemon
sleep 1
start_daemon
;;
*)
N=/etc/init.d/$DESC
echo "Usage: $N {start|stop|restart}" >&2
exit 1
;;
esac
exit 0
Jetzt noch den Script ausführbar machen.
sudo chmod +x /etc/init.d/SKBB.PRTGSensor
Jetzt kann der SKBB.PRTGSensor über den Script gestartet werden.
sudo service SKBB.PRTGSensor start








