Transform String
Verfasst: 6. Jul 2016 13:55
Hallo zusammen,
ich habe mal meine Urlaubs-Rules erweitert und hab nun einen kleinen Schönheitsfehler.
Rule:
Die Rule läuft einwandfrei.Wenn ALLE Kontakte "CLOSED" sind und man dann einen öffnet, steht in der Message auch die richtige "Übersetzung" aus der Transform Datei.
Ist aber beim öffnen bereits an anderer Kontakt offen, passiert das, was Ihr nun unten seht. Er packt alles zusammen in den String
Fehler:
Wie kann ich das ändern?
CYA
Cyrelian
ich habe mal meine Urlaubs-Rules erweitert und hab nun einen kleinen Schönheitsfehler.
Rule:
Code: Alles auswählen
var String conOpened = ""
rule "Urlaubsmodus / Tür-Fensterkontakte"
when
Item gAllContacts received update or
System started
then
if ((AutoHoliday.state == ON) && (gAllContacts.state == OPEN)) {
gAllContacts?.allMembers.filter(s | s.state == OPEN).forEach(contact | conOpened = conOpened + contact.name)
var String sensorState = transform("MAP","Sensoren.map",conOpened)
logInfo("UrlaubRules:Kontakte Erdgeschoss","" + sensorState + " wurde geöffnet")
pushover("Tür-Fensterkontakt " + sensorState + " wurde geöffnet")
conOpened = ""
}
end
Ist aber beim öffnen bereits an anderer Kontakt offen, passiert das, was Ihr nun unten seht. Er packt alles zusammen in den String

Fehler:
Code: Alles auswählen
[t.i.s.MapTransformationService] - Could not find a mapping for 'GarageTorsensorEGSchlafzimmerTuersensorEGBadezimmerFenstersensor' in the file 'Sensoren.map'.
[INFO ] [laubRules:Kontakte Erdgeschoss] - wurde geöffnet
CYA
Cyrelian