Allergy: Unterschied zwischen den Versionen
Fabian (Diskussion | Beiträge) (Initial erstellt nach Forums-Threat) |
Fabian (Diskussion | Beiträge) K (Typos) |
||
Zeile 21: | Zeile 21: | ||
=== Define === | === Define === | ||
:<code>define <Name> allergy <plz> | :<code>define <Name> allergy <plz></code> | ||
'''<plz>''' - Postleitzahl in Deutschland | |||
Beispiel: | Beispiel: |
Version vom 16. Mai 2016, 14:12 Uhr
Allergy | |
---|---|
Zweck / Funktion | |
Legt ein Device an, das Vorhersagedaten zum Pollenflug der nächsten 7 Tage ausliest. | |
Allgemein | |
Typ | Gerätemodul |
Details | |
Dokumentation | EN / DE |
Modulname | 60_allergy.pm |
Ersteller | Markus / |
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref! |
allergy ist ein Modul zur Vorhersage des Pollenflugs ausgehend von einer deutschen Postleitzahl. Folgende Allergene werden ermittelt:
Ambrosia, Ampfer, Beifuß, Birke, Buche, Eiche, Erle, Gräser, Hasel, Pappel, Roggen, Ulme, Wegerich, Weide
Voraussetzungen
Das Perl Modul XML::Simple wird benötigt.
Installation unter Ubuntu/Debian: sudo apt-get install libxml-simple-perl
Anwendung
Updates erfolgen automatisch alle 3h, die Tageswerte und generierten Readings lassen sich über ignoreList einschränken. Mit updateIgnored lassen sich die leeren und ignorierten Readings trotzdem generieren.
Define
define <Name> allergy <plz>
<plz> - Postleitzahl in Deutschland
Beispiel:
define Pollenflugvorhersage allergy 10115
Werte aktualisieren
get <Name> data
Beispiel:
get Pollenflugvorhersage data
Aktualisierungsintervall festlegen
Updates erfolgen automatisch alle 3h.
Weitere Attribute
- ignoreList
- Tageswerte und generierten Readings einschränken
- updateEmpty
- leere Readings trotzdem generieren
- updateIgnored
- ignorierte Readings trotzdem generieren
- levelsFormat
- legt eine individuelle Formatierung der Readings fest
- stateFormat
Anwendungsbeispiel(e)
Im folgenden Beispiel sind folgende Besonderheiten enthalten:
- per levelsFormat werden die Werte als farbige Punkte formatiert
- per Skripten werden die Werte für den Vortag erstellt und als fc0 eingetragen (falls nicht gewünscht, alle fc0-Einträge entfernen)
Definition der Pollenflugvorhersage für Berlin:
define Pollenflugvorhersage allergy 10115 attr Pollenflugvorhersage levelsFormat rc_dot@white,rc_dot@yellow,rc_dot@orange,rc_dot@red attr Pollenflugvorhersage room Wetter-vorhersage attr Pollenflugvorhersage stateFormat fc1_maximum attr Pollenflugvorhersage updateEmpty 1 attr Pollenflugvorhersage updateIgnored 1
Darstellung der Vorhersage (Quelle: [1]):
ReadingsGroup zur Darstellung der Pollenflugvorhersage:
define rgPollenvorhersage readingsGroup Pollenflugvorhersage:<Pollen>,fc0_day_of_week,fc1_day_of_week,fc2_day_of_week,fc3_day_of_week,fc4_day_of_week,fc5_day_of_week,fc6_day_of_week,fc7_day_of_week \ Pollenflugvorhersage:<Ambrosia>,fc0_Ambrosia,fc1_Ambrosia,fc2_Ambrosia,fc3_Ambrosia,fc4_Ambrosia,fc5_Ambrosia,fc6_Ambrosia,fc7_Ambrosia \ Pollenflugvorhersage:<Ampfer>,fc0_Ampfer,fc1_Ampfer,fc2_Ampfer,fc3_Ampfer,fc4_Ampfer,fc5_Ampfer,fc6_Ampfer,fc7_Ampfer \ Pollenflugvorhersage:<Beifuß>,fc0_Beifuss,fc1_Beifuss,fc2_Beifuss,fc3_Beifuss,fc4_Beifuss,fc5_Beifuss,fc6_Beifuss,fc7_Beifuss \ Pollenflugvorhersage:<<b>Birke<Birke</b>>,fc0_Birke,fc1_Birke,fc2_Birke,fc3_Birke,fc4_Birke,fc5_Birke,fc6_Birke,fc7_Birke \ Pollenflugvorhersage:<Buche>,fc0_Buche,fc1_Buche,fc2_Buche,fc3_Buche,fc4_Buche,fc5_Buche,fc6_Buche,fc7_Buche \ Pollenflugvorhersage:<Eiche>,fc0_Eiche,fc1_Eiche,fc2_Eiche,fc3_Eiche,fc4_Eiche,fc5_Eiche,fc6_Eiche,fc7_Eiche \ Pollenflugvorhersage:<<b>Erle<Erle</b>>,fc0_Erle,fc1_Erle,fc2_Erle,fc3_Erle,fc4_Erle,fc5_Erle,fc6_Erle,fc7_Erle \ Pollenflugvorhersage:<<b>Gräser</b>>,fc0_Graeser,fc1_Graeser,fc2_Graeser,fc3_Graeser,fc4_Graeser,fc5_Graeser,fc6_Graeser,fc7_Graeser \ Pollenflugvorhersage:<<b>Hasel<Hasel</b>>,fc0_Hasel,fc1_Hasel,fc2_Hasel,fc3_Hasel,fc4_Hasel,fc5_Hasel,fc6_Hasel,fc7_Hasel \ Pollenflugvorhersage:<Pappel>,fc0_Pappel,fc1_Pappel,fc2_Pappel,fc3_Pappel,fc4_Pappel,fc5_Pappel,fc6_Pappel,fc7_Pappel\ Pollenflugvorhersage:<Roggen>,fc0_Roggen,fc1_Roggen,fc2_Roggen,fc3_Roggen,fc4_Roggen,fc5_Roggen,fc6_Roggen,fc7_Roggen \ Pollenflugvorhersage:<Ulme>,fc0_Ulme,fc1_Ulme,fc2_Ulme,fc3_Ulme,fc4_Ulme,fc5_Ulme,fc6_Ulme,fc7_Ulme \ Pollenflugvorhersage:<Wegerich>,fc0_Wegerich,fc1_Wegerich,fc2_Ulme,fc3_Wegerich,fc4_Wegerich,fc5_Wegerich,fc6_Wegerich,fc7_Wegerich \ Pollenflugvorhersage:<Weide>,fc0_Weide,fc1_Weide,fc2_Weide,fc3_Weide,fc4_Weide,fc5_Weide,fc6_Weide,fc7_Weide attr rgPollenvorhersage mapping %READING attr rgPollenvorhersage room Wetter-vorhersage attr rgPollenvorhersage valueIcon %VALUE attr rgPollenvorhersage valueStyle %VALUE
Die Pollenvorhersage zeigt standardmäßig nicht die Werte des Vortags an. Möchte man dies trotzdem haben so helfen diese beiden Skripte:
# kopiert um 12:00 die Werte des aktuellen Tags fc1 in Temp-Einträge fcy define PollenAt12 at *12:00 \ setreading Pollenflugvorhersage fcy_day_of_week [Pollenflugvorhersage:fc1_day_of_week];; \ setreading Pollenflugvorhersage fcy_Ambrosia [Pollenflugvorhersage:fc1_Ambrosia];; \ setreading Pollenflugvorhersage fcy_Ambrosia [Pollenflugvorhersage:fc1_Ambrosia];; \ setreading Pollenflugvorhersage fcy_Ampfer [Pollenflugvorhersage:fc1_Ampfer];; \ setreading Pollenflugvorhersage fcy_Beifuss [Pollenflugvorhersage:fc1_Beifuss];; \ setreading Pollenflugvorhersage fcy_Birke [Pollenflugvorhersage:fc1_Birke];; \ setreading Pollenflugvorhersage fcy_Buche [Pollenflugvorhersage:fc1_Buche];; \ setreading Pollenflugvorhersage fcy_Eiche [Pollenflugvorhersage:fc1_Eiche];; \ setreading Pollenflugvorhersage fcy_Erle [Pollenflugvorhersage:fc1_Erle];; \ setreading Pollenflugvorhersage fcy_Esche [Pollenflugvorhersage:fc1_Esche];; \ setreading Pollenflugvorhersage fcy_Graeser [Pollenflugvorhersage:fc1_Graeser];; \ setreading Pollenflugvorhersage fcy_Hasel [Pollenflugvorhersage:fc1_Hasel];; \ setreading Pollenflugvorhersage fcy_Pappel [Pollenflugvorhersage:fc1_Pappel];; \ setreading Pollenflugvorhersage fcy_Roggen [Pollenflugvorhersage:fc1_Roggen];; \ setreading Pollenflugvorhersage fcy_Ulme [Pollenflugvorhersage:fc1_Ulme];; \ setreading Pollenflugvorhersage fcy_Wegerich [Pollenflugvorhersage:fc1_Wegerich];; \ setreading Pollenflugvorhersage fcy_Weide [Pollenflugvorhersage:fc1_Weide];; \ setreading Pollenflugvorhersage fcy_day_of_week [Pollenflugvorhersage:fc1_day_of_week] # kopiert um 24:00 die Temp-Einträge fcy in den Vortags-Einträge fc0 define PollenAt24 at *00:00 \ setreading Pollenflugvorhersage fc0_day_of_week [Pollenflugvorhersage:fcy_day_of_week];; \ setreading Pollenflugvorhersage fc0_Ambrosia [Pollenflugvorhersage:fcy_Ambrosia];; \ setreading Pollenflugvorhersage fc0_Ambrosia [Pollenflugvorhersage:fcy_Ambrosia];; \ setreading Pollenflugvorhersage fc0_Ampfer [Pollenflugvorhersage:fcy_Ampfer];; \ setreading Pollenflugvorhersage fc0_Beifuss [Pollenflugvorhersage:fcy_Beifuss];; \ setreading Pollenflugvorhersage fc0_Birke [Pollenflugvorhersage:fcy_Birke];; \ setreading Pollenflugvorhersage fc0_Buche [Pollenflugvorhersage:fcy_Buche];; \ setreading Pollenflugvorhersage fc0_Eiche [Pollenflugvorhersage:fcy_Eiche];; \ setreading Pollenflugvorhersage fc0_Erle [Pollenflugvorhersage:fcy_Erle];; \ setreading Pollenflugvorhersage fc0_Esche [Pollenflugvorhersage:fcy_Esche];; \ setreading Pollenflugvorhersage fc0_Graeser [Pollenflugvorhersage:fcy_Graeser];; \ setreading Pollenflugvorhersage fc0_Hasel [Pollenflugvorhersage:fcy_Hasel];; \ setreading Pollenflugvorhersage fc0_Pappel [Pollenflugvorhersage:fcy_Pappel];; \ setreading Pollenflugvorhersage fc0_Roggen [Pollenflugvorhersage:fcy_Roggen];; \ setreading Pollenflugvorhersage fc0_Ulme [Pollenflugvorhersage:fcy_Ulme];; \ setreading Pollenflugvorhersage fc0_Wegerich [Pollenflugvorhersage:fcy_Wegerich];; \ setreading Pollenflugvorhersage fc0_Weide [Pollenflugvorhersage:fcy_Weide];; \ setreading Pollenflugvorhersage fc0_day_of_week [Pollenflugvorhersage:fcy_day_of_week]
Links
- Forum-Thread zum Modul
- Andere Möglichkeiten zum Thema s. Pollenflug