Seite 1 von 1

thing - members

Verfasst: 30. Nov 2024 09:17
von hr2
Hallo,
ich möchte in einer textual-rule die Liste aller things abarbeiten und suche nach einer Möglichkeit die ähnlich <group>.members.forEach[item|.. ist. Gibt es soetwas?

Re: thing - members

Verfasst: 30. Nov 2024 10:26
von udo1toni
Kurze Antwort: Nein. (jedenfalls nicht in der DSL).

Lange Antwort: Man könnte natürlich auch in der DSL API Aufrufe einbauen. Der Aufwand steht aber in keinem Verhältnis, sprich, das wäre definitiv besser in einem externen Script aufgehoben.
Eventuell geht es über JRuby, Groovy oder JavaScript - es gibt dort mit things eine Instanz von org.openhab.core.thing.ThingRegistry, darüber sollte also eine Aufzählung aller im System vorhandenen Things zur Verfügung stehen. Allerdings habe ich zumindest in der offiziellen Doku bis auf die bloße Erwähnung nichts dazu gefunden...

https://www.openhab.org/javadoc/latest/ ... ngregistry erklärt den Zugriff, .getAll sollte eine Aufzählung liefern, da endet die Doku... vermutlich wird aber eine Liste mit Objekten zurückgeliefert, da müsste man dann halt schauen, ob man über diese Liste iterieren kann (things.getAll.forEach oder sowas in der Richtung)

Eine andere Frage wäre, wozu Du das brauchst.