JsonList2 erweitern für eine Abfrage mehrerer Devices

Begonnen von maddy, 11 August 2016, 21:29:48

Vorheriges Thema - Nächstes Thema

maddy

Hallo,

ich habe die Anforderung Informationen aus FHEM auszulesen und verwende dafür das Cmd jsonList2.

Damit die Rückgabe möglichst klein ist frage ich einen device über dessen Namen ab. Da ich aber im konkreten Fall zwei Devices brauche und nicht zwei Abfragen nutzen möchte, habe das Modul bei mir leicht angepasst. Die Umsetzung erfolgte nur mit rudimentärsten Perl Kenntnissen und Googles Hilfe, aber vielleicht macht es ja Sinn den Code (ggf. auch überarbeitet) mit aufzunehmen.

> #    @d = devspec2array($arg[0],$cl);
>
>     my @multiarg = split(":",$arg[0]);
>     @d = devspec2array($multiarg[0],$cl);
>     for(my $ma = 1; $ma < int(@multiarg); $ma++) {
>        push(@d, devspec2array($multiarg[$ma],$cl));
>     }

Der übergebende Parameter wird durch einen Separator ':' in Stücke geparsed und dann in einer Schleife verarbeitet.

Möglicher Aufruf: jsonlist2+NAME=device1:NAME=device2

Grüße
maddy

justme1968

schau dir devspec in der commandref an.

du kannst doch z.b. jsonlist device1|device2verwenden.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

rudolfkoenig


maddy

Hallo und vielen Dank. Mit , trennen ist natürlich noch viel besser - dann kann der Post hier ignoriert werden  ;)

Ich hatte die Möglichkeit in der Dokumentation zu JsonList(2) nicht gesehen.

Viele Grüße
Maddy