Speichern Sie das entsprechend modifizierte Skript als backup.py im Verzeichnis /home/pi/project/scripts, wechseln Sie dorthin und machen Sie die Datei mit dem Kommando chmod +x backup.py ausführbar. Nun öffnen Sie in einem Texteditor die Konfigurationsdatei /etc/webiopi/config und fügen dort dem Abschnitt [SCRIPTS] die folgende Zeile hinzu:
myproject = /home/pi/project/scripts/backup.py
Über das Kommando sudo /etc/init.d/webiopi restart starten Sie jetzt WebIOPi neu. Damit die Webapp aus Listing 2 mit dem Python-Makro zusammenspielt, ersetzen Sie den GPIO-Schalter durch den Makro-Button aus Listing 8. Die Routine webiopi().createMacroButton, die den Makro-Button definiert, nimmt dazu drei Parameter entgegen: eine ID (hier: macro), ein Label (Backup) und einen Bezeichner für das Makro (RunBackup). Dabei muss der Makro-Bezeichner dem Funktionsnamen aus dem Python-Skript entsprechen.
Listing 8
<script type="text/javascript">
webiopi().ready(function() {
var button = webiopi().createMacroButton("macro", "Backup", "RunBackup");
$("#controls").append(button);
});
</script>
Um das Ganze auszuprobieren, laden Sie die App im Webbrowser und klicken dann den Schalter Backup an. Haben Sie alles richtig gemacht, läuft daraufhin das Python-Skript an.
Fazit
Die hier vorgestellten Beispiele decken nur die einfachsten Funktionen von WebIOPi ab. Mit etwas Übung bauen Sie mithilfe des vielseitigen Frameworks ausgefeilte Webapplikationen für den Einsatz auf dem Raspberry Pi zusammen. Leider fällt die (obendrein ausschließlich englischsprachig verfügbare) Online-Dokumentation von WebIOPi recht sparsam aus und lässt sich zudem ohne ein tieferes Verständnis der innerhalb des Frameworks verwendeten Techniken nur bedingt durchschauen. Haben Sie Fragen zu kniffligen Problemen rund um WebIOPi, bietet dessen offizielles Community-Forum [5] eine gute Anlaufstelle.
Infos
- WebIOPi: http://code.google.com/p/webiopi
- RasPi analog: Dmitri Popov, “Pi am Drücker”, RPG 03/2014, S. 76, http://www.raspi-geek.de/32427
- Temperatursensor DS18B20: http://www.watterott.com/de/DS18B20
- Temperatursensor auslesen in Google Gauge: http://is.gd/smQL2l
- WebIOPi-Forum: http://groups.google.com/group/webiopi





