Tagging von Devices - <devspec> mehrer Attribute

Begonnen von jostereo, 21 August 2018, 13:18:54

Vorheriges Thema - Nächstes Thema

jostereo

Hallo zusammen,

ich habe den Plan meinen Devices ein Tagging hinzuzufügen.
Ein UserAttribut (für alle Devices) habe ich angelegt und es auch befüllt.

Was ist mein Plan:

Tagging -> Bekannt durch Twitter (#) oder Drupal (Taxonomie)

Als Erklärung hier mal an einem Beispiel:

Eine smarte Steckdose bekommt im UserAttr "Tags" den Wert:

Steckdose Gosund Tasmota MQTT

Das sind also 4 Tags.

Was möchte ich damit erreichen:

Durch das Thema <devspec> ist es nun möglich z.B. Devices nach bestimmten Tags zu selektieren.

Beispiel: list Tags=.*Tasmota   -> listet mir alle Devices die "Tasmota" als Tag haben.


Jetzt mein Problem/Frage:

Wenn ich nun mehrere Tags kombinieren möchte, kriege ich Probleme mit dem Regex, da dies nicht Reihenfolgeunabhängig angegeben werden kann.

Ein "list Tags=.*Tasmota.*MQTT" würde die obere Steckdose zwar finden, aber das auch nur weil die Reihenfolge der Begriffe stimmt.


Hätte jemand eine Idee wie dies zu lösen ist?

Scheinbar kann ich auch keine <devspec> mit 2 Attributen angeben:

list Tags=.*Tasmota Tags=.*Gosund   -> funktioniert so nicht.


Bin für Ideen offen

Vielen Dank.

CoolTux

Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

jostereo

#2
Zitat von: CoolTux am 21 August 2018, 13:21:35
list Tags=.*Tasmota:FILTER=Tags=.*Gosund

Ah danke schonmal für den Tipp mit dem Filter.
Dann kann ich mal ein paar Testläufe machen.

ich habe übrigens scheinbar noch die ".*" am Ende der Tags vergessen.

Der Kurztest mit:

list a:Tags=.*Tasmota.*:FILTER=Tags=.*Gosund.*

hat erfolgreich geklappt. (das "a:" habe ich vorne angehangen, um direkt zu definieren das es ein Attribut ist -> Commandref)


Klappt auch mit mehreren Filtern, also z.B.:

list a:Tags=.*Tasmota.*:FILTER=Tags=.*Gosund.*:FILTER=Tags=.*MQTT.*