Seite 2 von 2

Re: ZIgbee2MQTT RGB Controller Farbe

Verfasst: 2. Feb 2023 18:47
von DemonKing
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

Re: ZIgbee2MQTT RGB Controller Farbe

Verfasst: 16. Mär 2023 20:52
von bananajoe86
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.
Hey Udo,
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

Re: ZIgbee2MQTT RGB Controller Farbe

Verfasst: 16. Mär 2023 21:41
von udo1toni
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.

Re: ZIgbee2MQTT RGB Controller Farbe

Verfasst: 3. Apr 2023 21:11
von bananajoe86
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:

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"     ]
et voila. Ihr benötigt dann noch das "JavaScript Scripting". Zu installieren unter Bindings - Automationen

Gruß Joe