Sorry für die späte Antwort.
Dass das formatBeforPublish nicht richtig ist hatte ich gelesen und auch deinen Vorschlag ausprobiert. Leider hat damit nicht funktioniert. So funktioniert es. Wieso weshalb auch immer. Und das bei beiden RGB Controllern.
Den Payload poste ich wenn ich schaffe heute noch aber spätestens morgen. Hab leider gar viel um die Ohren
ZIgbee2MQTT RGB Controller Farbe
-
- Beiträge: 8
- Registriert: 12. Mär 2022 16:42
-
- Beiträge: 5
- Registriert: 5. Sep 2020 10:43
Re: ZIgbee2MQTT RGB Controller Farbe
Hey Udo,udo1toni hat geschrieben: ↑31. Jan 2023 20:22 Hat mir keine Ruhe gelassen, ein paar Posts später eine Lösung, die vermutlich exakt passen wird:
https://community.openhab.org/t/zigbee2 ... /86362/201
Die beiden Scripte müssen im Ordner $OPENHAB_CONF/transform/ liegen, die Dateiendung ist verpflichtend .js, weil das die Scriptsprache ist.
Nur für den Hinterkopf, um noch mehr Verwirrung zu stiften...:
Mit openHAB3.4 gibt es auch noch den Script Transformation Service, der mittelfristig JS ablösen wird. Mit dem Script Transformation Service muss die Endung dann .script lauten, dafür kann man dort dann über den Link angeben, welche Scriptsprache verwendet wird.
nachdem ich im Changelog für OH4 schon gelesen hab, dass die .js nicht mehr funktionieren habe ich gleich mal eine Testumgebung angelegt. Kannst du schon sagen, wie die .js dann zukünftig funktionieren könnte.
Wäre schade wenn OH4 released wird, ich es aber wegen 3 Lampen nicht nutzen könnte.
Gruß Joe
- udo1toni
- Beiträge: 15247
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: ZIgbee2MQTT RGB Controller Farbe
Es läuft zukünftig so, dass es die SCRIPT Transformation gibt (die sollte es unter openHAB3.4.2 auch schon geben, bin gerade zu faul danach zu suchen) und weil es einen Zusammenhang der Dateiendung zum Addon Namen gibt (also einen automatischen...) müssen die Scripts zukünftig alle die Endung .script tragen. Der Witz bei der SCRIPT Transformation ist aber, dass man nicht mehr nur auf JavaScript als Sprache beschränkt ist.
Der Preis dafür ist allerdings, dass man dem Addon zusätzlich zum Dateinamen auch noch als ersten Parameter mitteilen muss, welche Sprache verwendet wird. Im englischen Forum gibt es dazu schon Beispiele
Und ganz wichtig ist natürlich, dass es schon eine andere Art Dateien in openHAB gibt, die die Endung .script tragen und einen eigenen Ordner haben, der dummerweise auch noch unmittelbar neben dem transform-Ordner liegt und scripts heißt.
Es ist also zu 100 % sicher, dass es über Jahre tausende User geben wird, denen man immer wieder erklären muss, das die script-Dateien für die Transformation zwingend im Ordner transform liegen müssen, während die .script-Dateien selbstverständlich in den scripts Ordner gehören (und nur diese, aber nicht die anderen, die auch die .script Endung tragen).
Das ist ein Support-Alptraum, der so sicher ist, wie das Amen in der Kirche, und wenn jeder 2. Satz in der Dokumentation das erwähnt.
Der Preis dafür ist allerdings, dass man dem Addon zusätzlich zum Dateinamen auch noch als ersten Parameter mitteilen muss, welche Sprache verwendet wird. Im englischen Forum gibt es dazu schon Beispiele

Und ganz wichtig ist natürlich, dass es schon eine andere Art Dateien in openHAB gibt, die die Endung .script tragen und einen eigenen Ordner haben, der dummerweise auch noch unmittelbar neben dem transform-Ordner liegt und scripts heißt.
Es ist also zu 100 % sicher, dass es über Jahre tausende User geben wird, denen man immer wieder erklären muss, das die script-Dateien für die Transformation zwingend im Ordner transform liegen müssen, während die .script-Dateien selbstverständlich in den scripts Ordner gehören (und nur diese, aber nicht die anderen, die auch die .script Endung tragen).
Das ist ein Support-Alptraum, der so sicher ist, wie das Amen in der Kirche, und wenn jeder 2. Satz in der Dokumentation das erwähnt.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 5
- Registriert: 5. Sep 2020 10:43
Re: ZIgbee2MQTT RGB Controller Farbe
Danke Udo, mit deinen Hinweisen und ganz viel rumprobieren habe ich es letztlich hingebracht. Für alle, welche ebenfalls nach dieser https://community.openhab.org/t/zigbee2 ... /86362/193 das ganze gemacht haben hier die Lösung:
Die Dateien bright-zigbee-in.js und bright-zigbee-out.js im Ordner /transform kopieren und in bright-zigbee-in.script und bright-zigbee-out.script umbenennen. Die mqtt.things sieht dann wie folgt aus:
et voila. Ihr benötigt dann noch das "JavaScript Scripting". Zu installieren unter Bindings - Automationen
Gruß Joe
Die Dateien bright-zigbee-in.js und bright-zigbee-out.js im Ordner /transform kopieren und in bright-zigbee-in.script und bright-zigbee-out.script umbenennen. Die mqtt.things sieht dann wie folgt aus:
Code: Alles auswählen
Type color : Flur "Flur" [
stateTopic="zigbee2mqtt/Flur",
commandTopic="zigbee2mqtt/Flur/set",
transformationPatternOut= "SCRIPT:graaljs:bright-zigbee-out.script",
formatBeforePublish= "%s",
colorMode= "XYY",
transformationPattern= "SCRIPT:graaljs:bright-zigbee-in.script",
off= "0",
onBrightness= 100,
on= "1" ]
Gruß Joe