Hauptmenü

set "lampe 1 bis 3" ?

Begonnen von TubeHead, 20 Februar 2026, 20:29:28

Vorheriges Thema - Nächstes Thema

TubeHead

Hallo liebe Leute,

nur mal schnell eine Frage zwischendurch; fällt mir einfach nicht mehr ein...

Es gibt doch eine Möglichkeit, im Ausführungsteil mehrere Geräte (ohne Modul "structure") mit fortlaufender Nummerierung gemeinsam anzusprechen, oder?

Beispiel:
Ich habe lampe1, lampe2 und lampe3

Jetzt könnte ich sagen "set lampe1 on, set lampe2 on, ..."

Kann man nicht irgendwie sagen "set lampe{1-3} on" ???
Das ging doch irgendwie, oder habe ich da gerade einen Knoten im Hirn?


Otto123

nahe dran: lampe[1-3] :)
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle

aktives Mitglied des FHEM e.V. (Technik)

TubeHead

#2
Danke Dir  8)
... immer drum rum geeiert ... Aber so ist das manchnal ^^

Ähhh... ne... geit net... Gerade mal bei einem MQTT-"machmal" getestet:

(set MQTT publish pixel[1-3]/custom/TMP {"icon":"tmp_ani_out_01","text":"[TMP]"})
generiert ein "Gerät" /pixel[1-3]


Gugst Du, was da so luschtiges auf dem MQTT-Explorer auftaucht... habe also schon reichlich Kombinationen durch  :))  :))  :))

Per

In fhem kannst du das machen, auch
 Lampe.
würde gehen. Was MQTT draus macht, ist was ganz anderes.

Otto123

#4
Zitat von: TubeHead am 20 Februar 2026, 23:47:27set MQTT publish pixel[1-3] /custom/TMP...
Das ist ein string in dem publish Befehl, was Du gefragt hast war set devspec Befehl. Siehe in der commandref unter Geräte-Spezifikation (devspec)
Also in deinem Fall ginge
(set MQTT[1-3] publish pixel/custom/TMP {"icon":"tmp_ani_out_01","text":"[TMP]"})aber das willst Du nicht. Die beschrieben Ersetzung funktioniert bei der "Suche" nach dem Device, Du willst die Ersetzung im Befehl.
Sorry, aber das was Du jetzt willst geht so einfach nicht.

Und die ganze Frage hat mMn nichts mit DOIF zu tun, ist hier im Board also ziemlich verkehrt ;)
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle

aktives Mitglied des FHEM e.V. (Technik)

TomLee

#5
Hallo,

es gibt doch bestimmt eine Ulanzi-MQTT2_DEVICE Definition?

Hier zwei Lösungsansätze mit zusätzlichen settern in der Ulanzi Definition:
bli:noArg {for(1..3){fhem("set $NAME bla $_")}}
bla pixel$EVTPART1/custom/TMP {"icon":"tmp_ani_out_01","text":"[TMP]"}

in deinem DOIF machst dann ein
set <ulanzidevice> bli
oder nur mit einem setter:
blub:noArg {for (1..3) {fhem (qq(set MQTT publish pixel$_/custom/TMP {"icon":"tmp_ani_out_01","text":"[TMP]"}))}}
im DOIF macht dann
set <ulanzidevice> blub
Geht bestimmt auch noch anders...

Gruß Thomas

TubeHead

Zitat von: TomLee am 21 Februar 2026, 14:42:34es gibt doch bestimmt eine Ulanzi-MQTT2_DEVICE Definition?

Öhhh... nö. Braucht man das?
Scherz beiseite... Habe ich noch nie eine Notwendigkeit für gesehen. Die MQTT Nachrichten landen alle in einem großen Topf.

Dein Lösungsansatz verstehe ich leider nur rudimentär. Wenn ich das richtig sehe, wird auf PERL-Ebene Name und Zäher zusammengesetzt und dann angestoßen? Perl resp. wie man aus Fhem heraus direkt in Perl rumwurschtelt, habe ich noch nie wirklich verstanden...

Zwischenzeitlich habe ich es aber auch so gelöst. Damit ich nicht jedes mal für jeweils eine Uhr den ganzen Payload mitschreiben muss, habe ich den einfach in eine Readinglist gepackt und muss, im Fall der Fälle, nur diese Zeile ändern. Ist so'n bisschen von hinten durch's Auge, aber das kann ich auch in einem Jahr noch nachvollziehen  8)