Allergy: Unterschied zwischen den Versionen
Fabian (Diskussion | Beiträge)  (Initial erstellt nach Forums-Threat)  | 
				Fabian (Diskussion | Beiträge)  K (→Werte aktualisieren:  Umbenannt in "Werte manuell aktualisieren")  | 
				||
| (5 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
{{Infobox Modul  | {{SEITENTITEL:allergy}}{{Infobox Modul  | ||
|ModPurpose=Legt ein Device an, das Vorhersagedaten zum Pollenflug der nächsten 7 Tage ausliest.  | |ModPurpose=Legt ein Device an, das Vorhersagedaten zum Pollenflug der nächsten 7 Tage ausliest.  | ||
|ModType=d  | |ModType=d  | ||
|  | |ModForumArea=Unterstuetzende Dienste  | ||
|  | |ModCmdRef=allergy  | ||
|ModTechName=60_allergy.pm  | |ModTechName=60_allergy.pm  | ||
|ModOwner=Markus   | |ModOwner={{Link2FU|291|Markus M.}}}}  | ||
}}  | |||
[[allergy]] ist ein Modul zur Vorhersage des Pollenflugs ausgehend von einer deutschen Postleitzahl. Folgende Allergene werden ermittelt:  | [[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  | Ambrosia, Ampfer, Beifuß, Birke, Buche, Eiche, Erle, Gräser, Hasel, Pappel, Roggen, Ulme, Wegerich, Weide  | ||
| Zeile 17: | Zeile 15: | ||
== Anwendung ==  | == Anwendung ==  | ||
Updates erfolgen automatisch alle   | Updates erfolgen automatisch alle 3 Stunden, die Tageswerte und generierten Readings lassen sich über ''ignoreList'' einschränken.  | ||
Mit updateIgnored lassen sich die leeren und ignorierten Readings trotzdem generieren.  | Mit ''updateIgnored'' lassen sich die leeren und ignorierten Readings trotzdem generieren.  | ||
=== Define ===  | === Define ===  | ||
:<code>define <Name> allergy <plz>  | :<code>define <Name> allergy <plz></code>  | ||
'''<plz>''' - Postleitzahl in Deutschland  | |||
Beispiel:  | Beispiel:  | ||
:<code>define Pollenflugvorhersage allergy 10115</code>  | :<code>define Pollenflugvorhersage allergy 10115</code>  | ||
=== Werte aktualisieren ===  | === Werte manuell aktualisieren ===  | ||
:<code>get <Name> data</code>  | :<code>get <Name> data</code>  | ||
Beispiel:  | Beispiel:  | ||
| Zeile 36: | Zeile 31: | ||
=== Aktualisierungsintervall festlegen ===  | === Aktualisierungsintervall festlegen ===  | ||
Updates erfolgen automatisch alle   | Updates erfolgen automatisch alle 3 Stunden.  | ||
=== Weitere Attribute ===  | === Weitere Attribute ===  | ||
| Zeile 55: | Zeile 50: | ||
== Anwendungsbeispiel(e) ==  | == Anwendungsbeispiel(e) ==  | ||
[[Datei:RgPollenvorhersage.png|mini|240px|Beispielausgabe mit readingsGroup]]  | |||
Im folgenden Beispiel sind folgende Besonderheiten enthalten:  | Im folgenden Beispiel sind folgende Besonderheiten enthalten:  | ||
* per levelsFormat werden die Werte als farbige Punkte formatiert  | * 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)  | * per Skripten werden die Werte für den Vortag erstellt und als fc0 eingetragen (falls nicht gewünscht, alle fc0-Einträge entfernen)  | ||
Sollten keine farbigen Kreise dargestellt werden, sondern nur Einträge wie "rc_dot@yellow", dann müssen noch die Icon-Pfade in fhem aktualisiert werden (vgl. [[Icons#Mehr_Icons_zur_Auswahl]]).  | |||
'''Definition der Pollenflugvorhersage für Berlin:'''  | '''Definition der Pollenflugvorhersage für Berlin:'''  | ||
| Zeile 71: | Zeile 69: | ||
'''Darstellung der Vorhersage''' (Quelle: [https://forum.fhem.de/index.php/topic,37194.120.html]):  | '''Darstellung der Vorhersage''' (Quelle: [https://forum.fhem.de/index.php/topic,37194.120.html]):  | ||
Definitionen für eine [[readingsGroup]] zur Darstellung der Pollenflugvorhersage:  | |||
<pre>  | <pre>  | ||
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 \  | 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 \  | ||
| Zeile 96: | Zeile 94: | ||
Die Pollenvorhersage zeigt standardmäßig nicht die Werte des Vortags an. Möchte man dies trotzdem haben so helfen diese beiden Skripte:  | Die Pollenvorhersage zeigt standardmäßig nicht die Werte des Vortags an. Möchte man dies trotzdem haben so helfen diese beiden Skripte:  | ||
<pre>  | <pre>  | ||
# kopiert um 12:00 die Werte des aktuellen Tags fc1 in Temp-Einträge fcy  | # kopiert um 12:00 die Werte des aktuellen Tags fc1 in die Temp-Einträge fcy  | ||
define PollenAt12 at *12:00 \  | define PollenAt12 at *12:00 \  | ||
    setreading Pollenflugvorhersage fcy_day_of_week [Pollenflugvorhersage:fc1_day_of_week];; \  |     setreading Pollenflugvorhersage fcy_day_of_week [Pollenflugvorhersage:fc1_day_of_week];; \  | ||
| Zeile 117: | Zeile 115: | ||
    setreading Pollenflugvorhersage fcy_day_of_week [Pollenflugvorhersage:fc1_day_of_week]  |     setreading Pollenflugvorhersage fcy_day_of_week [Pollenflugvorhersage:fc1_day_of_week]  | ||
# kopiert um 24:00 die Temp-Einträge fcy in   | # kopiert um 24:00 die Temp-Einträge fcy in die Vortags-Einträge fc0  | ||
define PollenAt24 at *00:00 \  | define PollenAt24 at *00:00 \  | ||
    setreading Pollenflugvorhersage fc0_day_of_week [Pollenflugvorhersage:fcy_day_of_week];; \  |     setreading Pollenflugvorhersage fc0_day_of_week [Pollenflugvorhersage:fcy_day_of_week];; \  | ||
| Zeile 138: | Zeile 136: | ||
    setreading Pollenflugvorhersage fc0_day_of_week [Pollenflugvorhersage:fcy_day_of_week]  |     setreading Pollenflugvorhersage fc0_day_of_week [Pollenflugvorhersage:fcy_day_of_week]  | ||
</pre>  | </pre>  | ||
== Links ==  | == Links ==  | ||
* {{Link2Forum|Topic=37194|LinkText=Forum-Thread zum Modul}}  | * {{Link2Forum|Topic=37194|LinkText=Forum-Thread zum Modul}}  | ||
* Andere Möglichkeiten zum Thema   | * Andere Möglichkeiten zum Thema siehe [[Pollenflug]]  | ||
Aktuelle Version vom 17. Juni 2016, 17:54 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 | 
| Support (Forum) | Unterstuetzende Dienste | 
| Modulname | 60_allergy.pm | 
| Ersteller | Markus M. | 
| 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 3 Stunden, 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 manuell aktualisieren
get <Name> data
Beispiel:
get Pollenflugvorhersage data
Aktualisierungsintervall festlegen
Updates erfolgen automatisch alle 3 Stunden.
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)
 
Sollten keine farbigen Kreise dargestellt werden, sondern nur Einträge wie "rc_dot@yellow", dann müssen noch die Icon-Pfade in fhem aktualisiert werden (vgl. Icons#Mehr_Icons_zur_Auswahl).
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]):
Definitionen für eine 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 die 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 die 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 siehe Pollenflug