Keyfob rule triggert nicht / Item name nicht korrekt?
Verfasst: 3. Apr 2020 00:05
Hallo,
ich bin leider neu in diesem Stoff, daher ist meine Frage wohl etwas beginnerlike aber dadurch vielleicht schnell zu klären. Mir werden inzwischen alle Google-Links zu dem Thema als gelesen markiert und ich weiß irgendwie nicht mehr weiter:
Ich versuche einen Fibaro Keyfob in mein OpenHAB einzubinden, das scheint auch gemäß events.log grundsätzlich zu funktionieren:
Der Keyfob selbst wird mir als KeyfobTest zwave:device:3ab768e4:node15 in der PaperUI (über die es auch eingebunden wurde) unter Things angezeigt.
Nun möchte ich natürlich die einzelnen Tastenereignisse innerhalb eines .rules-Files auswerten und entsprechenden Kommandos zuordnen. Dazu habe ich ein bei https://community.openhab.org/t/how-to- ... it/41044/4 gefundenes Gerüst verwendet und Informationen von anderer Stelle einfließen lassen. Meine "keyfob.rules" sieht testweise entsprechend nun so aus:
Problem: Die logInfo, die wohl eigentlich in der openhab.log erscheinen sollte, wird nicht ausgegeben. D.h. die Bedingung wird offensichtlich nicht erfüllt.
Frage: Muss ich in der Bedingung einen anderen Item-Name verwenden? Da in der events.log immer von "KeyfobTest_SceneNumber changed..." zu lesen ist, habe ich in der .rules-Datei "KeyfobTest" durch z.B. "Keyfob_SceneNumber" ersetzt. Dann erhalte ich in der openhab.log allerdings folgende Meldung:
Jetzt stehe ich ziemlich auf dem Schlauch. Wie kann ich das Ereignis in der .rules abfangen?
Vielen Dank vorab. Ich hoffe die Formatierung ist ok so.
ich bin leider neu in diesem Stoff, daher ist meine Frage wohl etwas beginnerlike aber dadurch vielleicht schnell zu klären. Mir werden inzwischen alle Google-Links zu dem Thema als gelesen markiert und ich weiß irgendwie nicht mehr weiter:
Ich versuche einen Fibaro Keyfob in mein OpenHAB einzubinden, das scheint auch gemäß events.log grundsätzlich zu funktionieren:
Code: Alles auswählen
[vent.ItemStateChangedEvent] - KeyfobTest_SceneNumber changed from 2.0 to 1.0
Nun möchte ich natürlich die einzelnen Tastenereignisse innerhalb eines .rules-Files auswerten und entsprechenden Kommandos zuordnen. Dazu habe ich ein bei https://community.openhab.org/t/how-to- ... it/41044/4 gefundenes Gerüst verwendet und Informationen von anderer Stelle einfließen lassen. Meine "keyfob.rules" sieht testweise entsprechend nun so aus:
Code: Alles auswählen
rule "Keyfob"
when
Item KeyfobTest received update
then
logInfo("then-Block wird durchlaufen!")
var swState = KeyfobTest.state as Number
var name = "KeyfobRule"
logInfo(name, "Update: " + swState.toString)
switch swState {
case 1.0: {
logInfo(name, "Square1xClick")
StudioRolloRechts_BlindsControl.sendCommand(UP)
}
...
}
end
Frage: Muss ich in der Bedingung einen anderen Item-Name verwenden? Da in der events.log immer von "KeyfobTest_SceneNumber changed..." zu lesen ist, habe ich in der .rules-Datei "KeyfobTest" durch z.B. "Keyfob_SceneNumber" ersetzt. Dann erhalte ich in der openhab.log allerdings folgende Meldung:
Code: Alles auswählen
[ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'Keyfob': An error occurred during the script execution: index=1, size=1
Vielen Dank vorab. Ich hoffe die Formatierung ist ok so.