Probleme mit HSB Farbwechsel Script
Verfasst: 13. Okt 2023 09:26
Hallo zusammen,
ich versuche mich gerade mit einem Script für einen automatischen HSB Farbwechsel. Bei dem Farbwechsel soll das Item mauerfarbe (vom Typ hsb mit 3 werten) alle 2 Sekunden beim Wert hue um eins erhöht werden. Dabei bekomme ich 2 Fehler:
1. der Script wird in der Regel nicht gefunden
2. der Script wird nicht richtig ausgeführt
Ich bekomme folgende 2 Fehlermeldungen:
1: [ERROR] [internal.handler.ScriptActionHandler] - Script execution of rule with UID 'script-1' failed: Script 'huefade' cannot be found. in script
2: [ERROR] [internal.handler.ScriptActionHandler] - Script execution of rule with UID 'huefade' failed: <eval>:1:27 Expected ; but found as
var hsb = mauerfarbe.state as HSBType
^ in <eval> at line number 1 at column number 27
OH ist 3.4.2.
Die Regel wurde in einer Textdatei namens scripts.rules erstellt.
die Regel ist so erstellt:
Den Script habe ich in der UI als ECMA Script unter name und ID huefade erstellt. Name Der Script sieht so aus:
Sieht jemand von euch das Problem bzw. hat einen alternativen Lösungsvorschlag?
danke
ich versuche mich gerade mit einem Script für einen automatischen HSB Farbwechsel. Bei dem Farbwechsel soll das Item mauerfarbe (vom Typ hsb mit 3 werten) alle 2 Sekunden beim Wert hue um eins erhöht werden. Dabei bekomme ich 2 Fehler:
1. der Script wird in der Regel nicht gefunden
2. der Script wird nicht richtig ausgeführt
Ich bekomme folgende 2 Fehlermeldungen:
1: [ERROR] [internal.handler.ScriptActionHandler] - Script execution of rule with UID 'script-1' failed: Script 'huefade' cannot be found. in script
2: [ERROR] [internal.handler.ScriptActionHandler] - Script execution of rule with UID 'huefade' failed: <eval>:1:27 Expected ; but found as
var hsb = mauerfarbe.state as HSBType
^ in <eval> at line number 1 at column number 27
OH ist 3.4.2.
Die Regel wurde in einer Textdatei namens scripts.rules erstellt.
die Regel ist so erstellt:
Code: Alles auswählen
rule "Partytime"
when Time cron "*/2 * * * * ?"
then
if (partymodus.state == ON) {
callScript("huefade");
}
end
Code: Alles auswählen
var hsb = mauerfarbe.state as HSBType
var DecimalType hue = new DecimalType(hsb.hue.intValue % 360 + 1)
var PercentType sat = new PercentType(hsb.saturation.intValue)
var brightValue = 65;
var PercentType bright = new PercentType(brightValue)
var HSBType newHsb = new HSBType(hue, sat, bright)
mauerfarbe.sendCommand(newHsb);
danke