udo1toni hat geschrieben: ↑13. Jun 2020 14:24
Ich verstehe nicht so ganz, worauf Du damit hinaus willst. 
 
So bin jetzt ein gutes Stück weiter um zu zeigen, was ich eigentlich erreichen möchte. 
Ziel:
In der Sitemap sollte das Item 
pollenTodayGrassesOutput mit dem Wert 
 mittel bis hoch (2-3) ausgegeben werden.
Frage: 
Warum wird mein - in einer rule befülltes - Item 
pollenTodayGrassesOutput nicht auf der Sitemap ausgegeben? Wie im logging zu sehen ist, wird mein spezielle Output Item 
pollenTodayGrassesOutput korrekt gefüllt.
xyz.sitemap;
Code: Alles auswählen
            // DWD Polleninformation 
            Text item=pollenTodayGrasses  valuecolor=[=="3"="#f00014",
                                                      =="2-3"="#f00014",
                                                      =="2"="#ff9900",
                                                      =="1-2"="#ff9900",
                                                      =="1"="#8E8787",
                                                      =="0-1"="#8E8787"] icon="lawnmower"
            Text item=pollenTodayGrassesOutput  icon="lawnmower"
Code: Alles auswählen
String pollenTodayGrasses "Pollen Gräser Binding" {channel="dwdpollenflug:region:dwd:region112:grasses#today"}
// Formatierte Output Items für sitemap
String pollenTodayGrassesOutput "Pollen Gräser Output"
Code: Alles auswählen
0=keine
0-1=keine bis gering
1=gering
1-2=gering bis mittel
2=mittel
2-3=mittel bis hoch
3=hoch
-1=keine Daten (-1)
-=keine Daten (-)
NULL=keine Daten (NULL)
In der Rule habe ich momentan noch ein 
currentDateTime Item, dass jede Minute ausgelöst wird. Das habe ich nur da drin, damit die .rules regelmässig jede Minute ausgelöst wird. Damit läßt sich besser testen.
dwdpollenflug.rules:
Code: Alles auswählen
rule "DWD Pollenflug Itemausgabe Formatieren (dwdpollenflug.rules)"
when
    Channel "dwdpollenflug:region:dwd:region112:grasses#today" triggered or 
    Item currentDateTime changed
then 
    // aktuellen Item value abholen und als String formatierenm Transform mit MAP + ursprünglichen Wert  
    var outStr = transform('MAP', 'pollen.map', pollenTodayGrasses.state.toString) + ' (' + pollenTodayGrasses.state.toString + ')'
    // Logging neuer Wert
    logInfo('dwdpollenflug.rules changed outStr:',outStr)
    // Output Item mit zusammen gesetzten Werten füllen
    pollenTodayGrassesOutput.postUpdate(outStr)
    logInfo('pollenTodayGrassesOutput.state',pollenTodayGrassesOutput.state.toString)
end
Code: Alles auswählen
2020-06-14 16:18:25.134 [vent.ItemStateChangedEvent] - currentDateTime changed from 2020-06-14T16:17:25.137+0200 to 2020-06-14T16:18:25.139+0200
2020-06-14 16:18:25.140 [INFO ] [.dwdpollenflug.rules changed outStr:] - mittel bis hoch (2-3)
2020-06-14 16:18:25.150 [INFO ] [cript.pollenTodayGrassesOutput.state] - mittel bis hoch (2-3)
OpenHabWeatherMaps.JPG
Tipps?
Danke und Grüße
Thomas
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.