FHEM Forum

FHEM - Entwicklung => Wunschliste => Thema gestartet von: M.Schulze am 21 Juli 2022, 10:13:07

Titel: cmd deletegroup
Beitrag von: M.Schulze am 21 Juli 2022, 10:13:07
Hallo,

ein Befehl um alle Geräte in einer Gruppe schnell zu löschen wäre cool.


Die Gruppe wird sich dann ja auch löschen.

Also spezifizeren der zu löschenden Geräte über <group> anstatt <devspec> ?

z.B.
delete group <groupname>
deletegroup <groupname>


Weiterhin sollte diese Funktion auch in FHEM WEB angeboten werden

z.B.

  FW_pH "cmd=delete $d", "Delete Device", undef, "detLink delDev"
         if($d ne "global");
  FW_pH "cmd=deletegroup " . AttrVal($d, "group", undef), "Delete Group", undef, "detLink delDev"
         if($d ne "global" && AttrVal($d, "group", undef));


Sollte es diese Funktion schon geben ist sie vielleicht etwas versteckt.

MfG
Titel: Antw:cmd deletegroup
Beitrag von: marvin78 am 21 Juli 2022, 10:29:02
Du könntest dir einen cmdalias dafür bauen. Da es über devspec schon leicht funktionert und kaum mehr Schreibarbeit ist, muss man hier sicher nicht einen eigenen Befehl einbauen.
Titel: Antw:cmd deletegroup
Beitrag von: M.Schulze am 21 Juli 2022, 10:51:06
Also da ich diese Funktion oft nutzen werde brauche ich da eine vernünftige Lösung. Ohne .cfg anzupassen, ohne "cmdalias", mit hilfe.

Aber als Provisorium danke für den Tip! Funktioniert auf den ersten Blick wie gewünscht. Auch im FHEM-WEB.

MfG



define c_deletegroup cmdalias deletegroup .* AS { for my $name (devspec2array("group=$EVENT")){ map { /^$EVENT$/ ? fhem("delete $name") : do{s/,$EVENT|$EVENT,//;; fhem("attr $name group $_")} } AttrVal($name,'group','') } }
Titel: Antw:cmd deletegroup
Beitrag von: marvin78 am 21 Juli 2022, 10:55:31
Ich halte das für eine sehr vernünftige Lösung :)
Titel: Antw:cmd deletegroup
Beitrag von: marvin78 am 21 Juli 2022, 11:57:19
Ach: Ohne cmdalias und mit Hilfe:

delete group=GROUP
Titel: Antw:cmd deletegroup
Beitrag von: M.Schulze am 21 Juli 2022, 13:42:02
Super, danke, hat sich dann erledigt.