Hauptmenü

Alle Lichter auf einmal schalten

Begonnen von Det20, 22 September 2017, 10:20:32

Vorheriges Thema - Nächstes Thema

Det20

Hallo,

ich möchte alle Lichter auf einen Schlag ein- oder ausschalten, die Lichtschalter heißen "Licht.EG.Flur", "Licht.OG.Bad" usw., sind also durch einen . voneinander getrennt.

set Licht.* off

Als Ergebnis bekomme ich nun "Can't locate object method "set" via package "Licht" (perhaps you forgot to load "Licht"?) at (eval 4290) line 1. ". Ich habe es schon mit " versucht, selbes Ergebnis. Habe ich etwas übersehen?

KölnSolar

so wird das vermutlich nix....
Schau Dir mal structure an.
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Beta-User

...und die Verwendung des "." in Gerätenamen ist auch eher suboptimal (schau dir mal die Bedeutung des "." in regex an ;) ).

Was liefert denn ein
list Licht.*
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Det20

Zitat
...und die Verwendung des "." in Gerätenamen ist auch eher suboptimal

Dachte ich auch schon, blöderweise verwende ich den . überall (gewohnt aus anderen Entwicklungssprachen). Gibt es da einen Workaround? Ein \ davor oder so?



list Licht.*

Licht.DG.Flur
Licht.DG.Schraege
Licht.EG.Flur
Licht.EG.HWR
Licht.EG.WC
...
Licht.EG.Nina

Otto123

#4
Hi Det20,

Ich habe fast die gleichen Namensgebung wie Du, bloß ohne die sinnlosen Punkte.
Da funktioniert das was Du willst einwandfrei. Einfach so  ;D

Wenn Du das nicht mehr ändern willst kannst Du einen Filter im devspec nehmen. Du setzt z.B. attr <> comment auf Licht und kannst dann set comment=Licht off  verwenden.

Siehe -> https://fhem.de/commandref_DE.html#devspec

Bei Dir muss das eigentlich auch funktionieren, es wird wohl ein Gerät dabei sein was kein Schalter ist. Schau das list nochmal komplett an.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Det20

Da habe ich doch einen Punkt vergessen, so funktioniert es:

set Licht.EG.* off
set Licht.OG.* off

Danke für die schnellen Antworten

Otto123

es braucht keinen Workaround, Du kannst mit regEx den Punkt nicht einfach so eindeutig ermitteln, dass ist alles. Der Punkt match jedes Zeichen auch den Punkt.
Du kannst nur nicht auf diese Wiese Licht.bla von Licht_bla unterscheiden.

Der Fehler liegt in einem Deiner Geräte.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz