Sammelbefehl get/set/attr <device>.* <Befehl> beschränken

Begonnen von caldir65, 18 Februar 2024, 13:40:25

Vorheriges Thema - Nächstes Thema

caldir65

Moin,

ich möchte mit einen Sammelbefehl z.B. einen Schwung Devices (Hier: alle Shellys) auf einmal ein bestimmtes Attribut ändern. Es sollen aber nur die eigentliche Devices angesprochen werden, nicht jedoch ähnlich lautende Notifies oder ähnliches.

Der Befehlget Shelly* status funktionert z.B. soweit, aber natürlich bekomme ich dann auch Fehlermeldungen, weil z.B. auf den Shellys aufbauende Aktionen (doif) den Get-Befehl bekommen, aber nichts mit anfangen können.

Ich möchte jetzt die Befehlszeile dahin gehend erweitern, daß jetzt nur Devices vom Typ Shelly dieses Kommando bekommen:get Shelly.*:FILTER=TYPE=Shelly statusAls Reaktion bekomme ich jetzt nur einen leeren fhem-Dialog, den ich mit OK bestätigen kann. auch im Log (bei global verbose 3) kommen keine weiteren Einträge.

Gebe ich z.B. einList Shelly.*:FILTER=TYPE=Shelly bekomme ich alle gewünschten Devices angezeigt, die auf den get-Befehl reagieren sollen, aber (wie gewünscht) keine anderen, zufällig auch mit Shelly beginnenden Gerätschaften.

Was müsste ich jetzt anpassen, damit es halt auch mit dem get-Befehl funktioniert?

Gruß, Christoph
Alte Techniker-Regel: "kaum macht man es richtig, funktioniert es auch"
------
Dell Wyse5070 ThinClient 16GBRam, 64GB SSD, Lubuntu 22.04LTS, fhem (aktuell), debmatic, Homematic-Devs, ConBee II und deConz, viele Shellys, Rademacher, NextCloud-Anbindung, FullyKioskBrowser+FUIP uvm.

betateilchen

get TYPE=Shelly:FILTER=NAME=Shelly.* status
Wobei ich aber nicht verstehe

Zitat von: caldir65 am 18 Februar 2024, 13:40:25ich möchte mit einen Sammelbefehl ... auf einmal ein bestimmtes Attribut ändern.

wie man mit einem "get" ein Attribut in einem device ändern möchte.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

caldir65

#2
Moin,

da habe ich mich wohl ein wenig unglücklich ausgedrückt - genau genommen sollen damit die Shellys in fhem lediglich animiert werden, erneut bei ihre Devices im Netzwerk den Status abzufragen - nach einem Neustart kommt es gelegendlich vor, daß im Status "nur" ein network error steht, und dann ist das Gerät für fhem nicht zu bedienen.
Durch ein get ... status kann dieser Zustand behoben werden (vorausgesetzt, das Gerät funktioniert normal und ist erreichbar ;-) )

get TYPE=Shelly:FILTER=NAME=Shelly.*:network='network error' statusKönnte ich damit evtl. sogar den Befehl nuch noch an jene Shellys senden, die den fraglichen Fehler haben? Wobei ich mir im Moment nicht einmal sicher bin, in welchem Reading der Fehler stand bzw. wie er genau ausgesehen hat - ist jetzt (zum Glück) schon länger nicht mehr aufgetreten ...

Gruß, Christoph
Alte Techniker-Regel: "kaum macht man es richtig, funktioniert es auch"
------
Dell Wyse5070 ThinClient 16GBRam, 64GB SSD, Lubuntu 22.04LTS, fhem (aktuell), debmatic, Homematic-Devs, ConBee II und deConz, viele Shellys, Rademacher, NextCloud-Anbindung, FullyKioskBrowser+FUIP uvm.