Seite 2 von 2

Re: Switch2Toggle

Verfasst: 23. Jul 2018 21:17
von Neuroplant
Hallo,
Ich habe eh einen MySQL Server und daher den persistence Dienst genommen.
Als strategy für Vent_DIM habe ich nur restore on startup, also keine automatische Sicherung des items.
Laut Beschreibung soll <item>.persist die Sicherung auslösen (Persists the current State of the Item)
Ich habe nur keine Ahnung wie ich es korrekt benutzen kann.
Die 100% sollten nur direkt bei dem Sprung von 0 auf 100 nicht erreichbar sein.
Gruß
Neuroplant

Re: Switch2Toggle

Verfasst: 23. Jul 2018 22:12
von Neuroplant
PS:
die Zeile

Code: Alles auswählen

		if ( Vent_DIM.state != 0 )		Vent_DIM.persist as DecimalType
Funktioniert
aber

Code: Alles auswählen

		if ( Vent_DIM.state == 100 )	Vent_DIM.sendCommand(Vent_DIM.previousState(true))
ist murx
Wäre nett wenn mir da jemand auf die Sprünge helfen könnte, wie es richtig geht.

Gruß
Neuroplant

Code: Alles auswählen

2018-07-23 21:59:41.574 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'Ventilator_Dimming': An error occurred during the script execution: Could not invoke method: org.eclipse.smarthome.model.script.actions.BusEvent.sendCommand(org.eclipse.smarthome.core.items.Item,java.lang.String) on instance: null


Re: Switch2Toggle

Verfasst: 23. Jul 2018 23:02
von udo1toni
Naja, Du musst

Code: Alles auswählen

if ( Vent_DIM.state == 100 )	Vent_DIM.sendCommand(Vent_DIM.previousState(true).state as Number)
nehmen.
Eventuell geht es auch ohne das as Number, aber .state muss hinten dran. Man könnte an dieser Stelle z.B. auch nach dem Zeitstempel fragen.

Re: Switch2Toggle

Verfasst: 24. Jul 2018 05:54
von Neuroplant
ob "as Number" oder nicht, ich bekomme den Fehler

Code: Alles auswählen

2018-07-24 05:41:14.546 [INFO ] [el.core.internal.ModelRepositoryImpl] - Validation issues found in configuration model 'unusual_Switches.rules', using it anyway:

Cannot cast from void to DecimalType
Aber: es läuft!
Dass die 100% nicht ansteuerbar sind werde ich auch noch lösen, ist aber nicht dringend, da meine Lampen tatsächlich eh nur 16 Dimmstufen haben, und ab 94% auf voller Leistung sind, der Ventilator ja schon bei 67%.

Vielen Dank
Ich wundere mich nur, zu diesem Thema bisher wenig gefunden zu haben, das Problem kommt mMn durch OpenHab, dass den Dimmern statt dem ON ein 100% schickt.

Code: Alles auswählen

2018-07-24 05:42:36.447 [ome.event.ItemCommandEvent] - Item 'Vent_DIM' received command ON

2018-07-24 05:42:36.472 [vent.ItemStateChangedEvent] - Vent_DIM changed from 0 to 100
Werde mich jetzt dran setzen und die Zeilen in allen Dimmern ergänzen

Gruß
Neuroplant
PS auch das Problem a) ist hausgemacht, an allen anderen meiner Lampen reicht ein einfaches received Change, auch wenn es dort nicht nötig ist.

Re: Switch2Toggle

Verfasst: 25. Jul 2018 16:57
von udo1toni
Wie schon oben erwähnt: Standard Verhalten ist, dass ein sendCommand(ON) automatisch auch ein postUpdate(100) bedeutet. Das sendCommand wird auch durch die UI ausgelöst. Wenn dieses Verhalten unerwünscht ist, hängst Du einfach ein

Code: Alles auswählen

{autoupdate="false"}
an das Item dran (wenn das Item verlinkt ist, hängst Du den Teil in die vorhandenen geschweiften Klammern).

Re: Switch2Toggle

Verfasst: 25. Jul 2018 18:44
von Neuroplant
Das heißt ich hätte mir den ganzen Quatsch sparen können mit dem kleinen {autoupdate="false"}?
Ich hatte es kurz drin, es gab aber Nebenwirkungen.
Werde es damit mal probieren.
Gruß
Neuroplant