Difference between revisions of "Add-On Services/de"
(Created page with "Im Ergebnis entspricht ein Auslesen des Ports 5557 dem Aufruf von "livedataxml.cgi" und eine Abfrage von Port 5556 dem Skript "livedata.cgi".") |
(Created page with "===Template-basierende individuelle Daten=== Der vorangegangenen Skripte liefern Daten in einem Standardformat aus. Unter Verweundung des Meteobridge-Template-Mechanismus, der...") |
||
Line 50: | Line 50: | ||
Im Ergebnis entspricht ein Auslesen des Ports 5557 dem Aufruf von "livedataxml.cgi" und eine Abfrage von Port 5556 dem Skript "livedata.cgi". | Im Ergebnis entspricht ein Auslesen des Ports 5557 dem Aufruf von "livedataxml.cgi" und eine Abfrage von Port 5556 dem Skript "livedata.cgi". | ||
− | ===Template- | + | ===Template-basierende individuelle Daten=== |
− | + | Der vorangegangenen Skripte liefern Daten in einem Standardformat aus. Unter Verweundung des Meteobridge-Template-Mechanismus, der auch hier im Wiki beschriebven ist, kann mit dem Skript "template.cgi" eine angepasste Ausgabe von Meteobridge-Variablen in Form eines mit Daten gefüllten Templates erreicht werden. | |
URL to call is "http://ip-of-meteobridge/cgi-bin/template.cgi" with mandatory parameter "template=YOUR_TEMPLATE_TEXT" and optional paramater "contenttype=CONTENT_TYPE". Both parameters have to be URL-encoded with special characters represented as "%XX" (where XX is a two digit hex code) and spaces are represented by "+". | URL to call is "http://ip-of-meteobridge/cgi-bin/template.cgi" with mandatory parameter "template=YOUR_TEMPLATE_TEXT" and optional paramater "contenttype=CONTENT_TYPE". Both parameters have to be URL-encoded with special characters represented as "%XX" (where XX is a two digit hex code) and spaces are represented by "+". |
Revision as of 17:06, 1 June 2013
<languages />
Web server of Meteobridge client, which presents web interface for adminstration to you, can also deliver weather data. There are three URLs defined that can be polled to get most recent sensor data in a standard XML or plain text format or in user-defined format. Although we don't recommend this for security reasons, you can make that URLs accessible from the Internet by configuring your router appropriately. However, when you want to bring sensor data to one of your own servers in the Internet we recommend to make use of Meteobridge's Push Services, which will not need you to open up your firewall.
Remark: In order to reach these HTTP services you need to handle basic authentification by adding "<username>:<password>@" in front of the URL.
===Live-Daten als XML===
Mit dem Meteobridge HTTP-Request wie "http://ip-of-meteobridge/cgi-bin/livedataxml.cgi", wobei "ip-of-meteobridge" durch die korrekte IP der Meteobridge ersetzt werden muss, liefert Meteobridge Wetterdaten in XML-Notation aus. Die von Meteobridge erzeugte Ausgabe beginnt mit "<logger>" und endet mit "</logger>". Die Werte der Sensoren werden mit den sensorspezifischen Tags "THB", "TH", "WIND", "RAIN", "UV", "SOLAR" berichtet. Das anhängende Beispiel illustriert das XML-Format:
<logger> <THB date="20121227224318" id="thb0" temp="26.0" hum="37" dew="10.2" press="1008.8" seapress="1010.1" fc="2"/> <TH date="20130104141909" id="th0" temp="9.1" hum="95" dew="8.3"/> <RAIN date="20130104141856" id="rain0" rate="0.0" total="3.0" delta="0.0"/> <WIND date="20130104141916" id="wind0" dir="109" gust="0.9" wind="2.2" chill="9.1"/> </logger>
Jedes Sensordatenpaket enthält immer die Felder "date" und "id". Die anderen Parameter sind sensorspezifisch. Die Bedeutung der Parameter ist wie folgt:
- date: UTC Zeitstempel der Sensordaten im Format "JJJJMMTThhmmss"
- id: ID des Sensors, die aus einem Sensorkurzbezeichnung gefolgt von einer Zahl ("0") besteht.
- temp: Temperatur in Grad Celsius (mit einer Nachkommastelle)
- hum: Relative Luftfeuchte in Prozent (keine Nachkommastellen)
- dew: Taupunkttemperatur in Grad Celsius (mit einer Nachkommastelle)
- press: Luftdruck auf Stationshöhe ohne Höhenkorrektur in hPa (mit einer Nachkommastelle)
- seapress: Luftdruck auf Meeresspiegelhöhe zurückgerechnet in hPa (mit einer Nachkommastelle)
- fc: Vorhersage, sofern von der Wetterstation bereitgestellt. Da dieser Wert wenig zuverlässig ist, raten wir davon ab, diesen zu verwenden.
- rate: Regenrate in mm pro Stunde (mit einer Nachkommastelle).
- total: Aktueller Wert des Regenwippenzählers umgerechnet auf mm (mit einer Nachkommastelle).
- delta: Hinzugekommene Regenmenge in mm seit dem letzten Auslesen (mit einer Nachkommastelle).
- wind: Aktuelle gemittelte Windgeschwindigkeit im m/s (mit einer Nachkommastelle).
- gust: Aktuelle, nicht gemittelte Windgeschwindigkeit in m/s (mit einer Nachkommastelle).
- dir: Windrichtung in Grad (0-359, keine Nachkommastellen).
- chill: Windchill-Temperatur in Grad Celsius (mit einer Nachkommastelle).
- ...
Live-Daten als Textdatei
Mit dem HTTP-Request "http://ip-of-meteobridge/cgi-bin/livedata.cgi", wobei "ip-of-meteobridge" durch die IP der Meteobridge zu ersetzen ist, gibt Meteobridge die aktuellen Sensorwerte als Textdatei aus. Das Ergebnis besteht aus einer Reiehe von Zeilen, die jeweils einen Sensor mit seinen Werten repräsentieren. Die Struktur ist gleich der XML-Daten im vorangegangenen Abschnitt, jedoch ohne die umgebende XML-Struktur:
20130104142614 thb0 26.9 38 11.4 1020.4 1021.7 2 20130104142610 rain0 0.0 3.0 0.0 20130104142636 th0 9.1 95 8.3 20130104142652 wind0 160 2.2 1.8 8.0
Live-Daten über eine Socket-Verbindung
Bei den oben angegebenen Verfahren wird eine HTTP-Authentifizierung wie für das gesammte Meteobridge Web-Interface benötigt. Wenn man sich das Skript "livedataxml.cgi" ansieht, kann man erkennen, dass dieses ledglich Daten vom Port 5557 liest, mit einem HTTP-Header versieht und dann an den anfragenden Browser ausliefert:
#!/bin/sh echo -ne "Content-type: text/xml; charset=UTF-8\n\n" nc 127.0.0.1 5557 2>/dev/null
Im Ergebnis entspricht ein Auslesen des Ports 5557 dem Aufruf von "livedataxml.cgi" und eine Abfrage von Port 5556 dem Skript "livedata.cgi".
Template-basierende individuelle Daten
Der vorangegangenen Skripte liefern Daten in einem Standardformat aus. Unter Verweundung des Meteobridge-Template-Mechanismus, der auch hier im Wiki beschriebven ist, kann mit dem Skript "template.cgi" eine angepasste Ausgabe von Meteobridge-Variablen in Form eines mit Daten gefüllten Templates erreicht werden.
URL to call is "http://ip-of-meteobridge/cgi-bin/template.cgi" with mandatory parameter "template=YOUR_TEMPLATE_TEXT" and optional paramater "contenttype=CONTENT_TYPE". Both parameters have to be URL-encoded with special characters represented as "%XX" (where XX is a two digit hex code) and spaces are represented by "+".
Example: In oder to get current outdoor temp and humidity this URLhttp://ip-of-meteobridge/cgi-bin/template.cgi?template=[DD].[MM].[YY]+[HH]:[mm][APM]%0D[th0temp-act]%BAC%0d[th0hum-act]%25&contenttype=text/plain;charset=iso-8859-1returns
01.06.13 04:55PM 23.2ºC 61.0%