Z-Wave
Aus Programmers Guide
Roy (Diskussion | Beiträge) |
Roy (Diskussion | Beiträge) |
||
Zeile 33: | Zeile 33: | ||
Kurz zur Erklärung: Ein PHP-Skript auf meinem Webserver berechnet anhand der übergebenen Werte zum ungefähren Standort den Sonnenaufgang und den Sonnenuntergang. Diese Werte werden im sogenannten JSON-Format zurückgegeben. Dieses Format ist einfach auswertbar und besitzt nicht so viel Overhead wie z.B. XML.<br> | Kurz zur Erklärung: Ein PHP-Skript auf meinem Webserver berechnet anhand der übergebenen Werte zum ungefähren Standort den Sonnenaufgang und den Sonnenuntergang. Diese Werte werden im sogenannten JSON-Format zurückgegeben. Dieses Format ist einfach auswertbar und besitzt nicht so viel Overhead wie z.B. XML.<br> | ||
- | Zurückgegebener String:'''{ "status" | + | Zurückgegebener String:'''{ "status": "ok", "now": "11:37", "sunrise": "04:57", "sunset": "21:25", "is_dark": "off", "offset": "60" } '''<br> |
<br> | <br> | ||
Zeile 49: | Zeile 49: | ||
<br> | <br> | ||
- | == Fehlermeldungen<br> == | + | == Fehlermeldungen<br> == |
- | Sollte ein Parameter fehlen oder im falschen Format angegeben sein, so wird ein Fehler als JSON-Objekt ausgegeben:<br> | + | Sollte ein Parameter fehlen oder im falschen Format angegeben sein, so wird ein Fehler als JSON-Objekt ausgegeben:<br> |
- | '''{ "status" : "error", "desc": "bitte Parameter übergeben Beispiel: ?latitude=50.1111&longitude=10.5555"}'''<br> | + | '''{ "status" : "error", "desc": "bitte Parameter übergeben Beispiel: ?latitude=50.1111&longitude=10.5555"}'''<br> |
- | oder<br> | + | oder<br> |
- | '''{ "status" : "error", "desc": "Das Offset muss numerisch sein."}'''<br> | + | '''{ "status" : "error", "desc": "Das Offset muss numerisch sein."}'''<br> |
- | + | ||
- | + | ||
+ | Bitte gebt statt Komma einen Punkt ein. | ||
+ | <br> | ||
== Verwendung<br> == | == Verwendung<br> == | ||
Ihr könnt diese "Schnittstelle" ruhig mit verwenden, der Server hält größere Lasten aus. Außerdem werde ich das Script so belassen und nicht ändern, ihr könnt also eure Lösungen damit implementieren, denn ich benutze diese selbst in mehreren Lösungen. | Ihr könnt diese "Schnittstelle" ruhig mit verwenden, der Server hält größere Lasten aus. Außerdem werde ich das Script so belassen und nicht ändern, ihr könnt also eure Lösungen damit implementieren, denn ich benutze diese selbst in mehreren Lösungen. | ||
- | |||
- | |||
- | |||
- | |||
[[Category:Z-Wave]] [[Category:Z-Way]] [[Category:RaZBerry]] [[Category:AJAX]] [[Category:Javascript]] [[Category:PHP]] [[Category:Snippet]] | [[Category:Z-Wave]] [[Category:Z-Way]] [[Category:RaZBerry]] [[Category:AJAX]] [[Category:Javascript]] [[Category:PHP]] [[Category:Snippet]] |
Aktuelle Version vom 09:36, 10. Jun. 2015
Inhaltsverzeichnis |
Z-Wave Dämmerungsschalter - Astronomische Dämmerung online - Berechneter Sonnenuntergang
Einleitung
Aufgesetzt auf einem Raspberry mit dem "Z-Wave.Me RaZberry"-Modul (razberry.z-wave.me) wollte ich gern einen Dämmerungsschalter über eine Astro-Funktion realisieren.
Vorgehensweise
- Preference -> Modules -> Devices -> HTTPDevice hinzufügen
Hier sind folgende Einstellungen vorzunehmen:
Typ: sensorBinary
URL: http://ebs-gera.de/prog/astrouhr_json.php?latitude=50.11111&longitude=12.11111&offset=0
Inline Javascript: JSON.parse($$).is_dark
Intervall: 60
HTTP-method: GET
Beschreibung
Für Latitude und Longitude müsst ihr euren Standort eingeben. Am Besten zu maps.google.de gehen, den Standort eingeben und dann oben in der Adresszeile die Parameter herauslesen.
Kurz zur Erklärung: Ein PHP-Skript auf meinem Webserver berechnet anhand der übergebenen Werte zum ungefähren Standort den Sonnenaufgang und den Sonnenuntergang. Diese Werte werden im sogenannten JSON-Format zurückgegeben. Dieses Format ist einfach auswertbar und besitzt nicht so viel Overhead wie z.B. XML.
Zurückgegebener String:{ "status": "ok", "now": "11:37", "sunrise": "04:57", "sunset": "21:25", "is_dark": "off", "offset": "60" }
Der Parameter "is_dark" wechselt dabei (hier um 21:25) von "off" auf "on" und 04:57 wieder zurück.
Offset - Parameter
Der Offset-Parameter kann bei Bedarf mit übergeben werden, ist aber nicht zwingend notwendig. Er wird in Minuten angegeben und zu der Sunrise-Zeit (Aufgang) hinzuaddiert und von der Sunset (Untergang) - Zeit subtrahiert.
So verschiebt ein positiver offset-Parameter die Kurve in Richtung Helligkeit und ein negativer Parameter in Richtung Dunkelheit.
Fehlermeldungen
Sollte ein Parameter fehlen oder im falschen Format angegeben sein, so wird ein Fehler als JSON-Objekt ausgegeben:
{ "status" : "error", "desc": "bitte Parameter übergeben Beispiel: ?latitude=50.1111&longitude=10.5555"}
oder
{ "status" : "error", "desc": "Das Offset muss numerisch sein."}
Bitte gebt statt Komma einen Punkt ein.
Verwendung
Ihr könnt diese "Schnittstelle" ruhig mit verwenden, der Server hält größere Lasten aus. Außerdem werde ich das Script so belassen und nicht ändern, ihr könnt also eure Lösungen damit implementieren, denn ich benutze diese selbst in mehreren Lösungen.