Hauptmenü

Variable abfragen - WIE ?

Begonnen von kaktus567, 27 Februar 2016, 11:19:52

Vorheriges Thema - Nächstes Thema

kaktus567

Hallo,

define Test1 dummy
attr Test1 setList state:1,2,3,4,5,6,7,8,9
attr Test1 webCmd state


Wie kann ich den Wert der Variablen Test1 in einer IF-Abfrage verwenden ? Ich finde seit 1 Std. keine Möglichkeit einer Auswertung ...
(Ich würde das gerne über die Eingabezeile definieren )

kaktus567

auch mit

get ReadingsVal("Test1","state,0)

bekomme ich den Wert nicht ausgelesen. Fehlermeldung:

ZitatPlease define ReadingsVal("Test1","state",0) first

Kann mir bitte jemand einen TIPP geben, ich habe keine Idee wonach ich suchen soll ...

CoolTux

Bitte bitte lese das Änfänger PDF. Du bringst soooo viel durcheinander.

Test1 ist keine Variable sondern ein Dummy Device. Den Inhalt des Readings state eines Devices fragt man mit Value ab, andere Readings mit ReadingsVal.

So nun hast Du genug Suchbegriffe um alleine weiter zu kommen.



Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Thorsten Pferdekaemper

Zitat von: kaktus567 am 27 Februar 2016, 11:19:52define Test1 dummy
attr Test1 setList state:1,2,3,4,5,6,7,8,9
attr Test1 webCmd state


Wie kann ich den Wert der Variablen Test1 in einer IF-Abfrage verwenden ? Ich finde seit 1 Std. keine Möglichkeit einer Auswertung ...
(Ich würde das gerne über die Eingabezeile definieren )

IF ([Test1:state] eq "5") (blablabla) ELSE (blubblubbblubb)


Zitat von: kaktus567 am 27 Februar 2016, 12:33:37
get ReadingsVal("Test1","state,0)

{ReadingsVal("Test1","state",0)}


..ansonsten siehe den Beitrag von CoolTux.
Gruß,
   Thorsten
FUIP

kaktus567

#4
@thorsten:
ok, danke.  8)

@Tux:

ZitatBitte bitte lese das Änfänger PDF. Du bringst soooo viel durcheinander.

Test1 ist keine Variable sondern ein Dummy Device. Den Inhalt des Readings state eines Devices fragt man mit Value ab, andere Readings mit ReadingsVal.

ZitatDummy
In fhem können dummy-devices angelegt werden, die wie eine Variable genutzt werden können. So
wird z.B. zur Abbildung des HomeStatus ein dummy benutzt: Der Wert des HomeStatus soll gespeichert
werden, eine Funkkommunikation wie z.B. bei einem FS20-Gerät gibt es aber nicht. Diesem dummy
können dann Attribute zugeordnet werden, die z.B. nur das Setzen bestimmter Werte zulassen, siehe
Nur bestimmte Befehle für ein Gerät - webCmd.
Infos in der commandref finden Sie hier.

Zitatdummy

    Define a dummy. A dummy can take via set any values. Used for programming.

    Define
        define <name> dummy

        Example:
            define myvar dummy
            set myvar 7

    Set
        set <name> <value>
        Set any value.
    Get
        N/A
    Attributes
        readingList
        Space separated list of readings, which will be set, if the first argument of the set command matches one of them.
        setList
        Space separated list of commands, which will be returned upon "set name ?", so the FHEMWEB frontend can construct a dropdown and offer on/off switches. Example: attr dummyName setList on off
        readingFnAttributes


Klare Ansagen von Thorsten würde ich mir eher wünschen,  als immer dieses "klugsch......"
Oben habe ich zitiert und im Forum gesucht, komisch, dass ich das nicht gefunden
habe.

Als Anfänger hat man nicht alles parat, wenn doch, dann wäre man kein Anfänger  >:( >:( >:(




CoolTux

#5
Du wüsstest aber wie man Readings aus Devices aus liest, Du wüsstest auch was ein Reading ist, Du wüsstest das man nicht in der Commandline zwischenspeichern kann, Du wüsstest wie man mittels notify oder eigenem 99_myUtils sowas aber machen kann, Du wüsstest was eine 99_myUtils ist und und und,

Klare Ansagen sind gut wenn klare Fragen und vor allem Fragen mit Wissenshintergrund gestellt werden. Ich gebe einem Dreijährigen doch keine Handgranate weil er schreit Gib mir sofort den Apfel oder ich heule   >:(


So das wars, bin weg
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

kaktus567

#6
ZitatDu wüsstest aber wie man Readings aus Devices aus liest, Du wüsstest auch was ein Reading ist, Du wüsstest das man nicht in der Commandline zwischenspeichern kann, Du wüsstest wie man mittels notify oder eigenem 99_myUtils sowas aber machen kann, Du wüsstest was eine 99_myUtils ist und und und,

... wenn ich das alles wüsste, wüsste ich, das ich entweder:

- Im Anfängerforum "helfen" würde, mit klaren Ansagen, welche dann auch motivieren zum weitersuchen (s. Beitrag von Thorsten)
- oder ich es einfach sein lasse !!! und die Zeit anderweitig nutze.


Ich "wüsste" definitiv, dass ich nicht immer auf alle möglichen pdf's und Forum-Beiträge hinweisen würde und mich dann als FHEM-Kenner-Könner-was-weis-ich hinstelle !!!

Entweder man möchte im "Anfängerforum" helfen, oder man lässt es, dazwischen gibt's einfach nix ... Der Anfängerbereich wäre sauberer und leserlicher und die Anfänger würden eher Lösungsansätze finden....

CoolTux

Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

CoolTux

Und weil Du ja anscheinend das PDF nun mal kurz gelesen hast, kannst Du gerne Dich auch noch weitere 2 Stunden hinsetzten und dann hast Du das Grundwissen um FHEM zu steuern. Wenn Du dann Fragen stellst antworte ich weiter gerne





Gerätewerte in Bedingungen –Value, ReadingsVal, ReadingsTimestamp

Häufig sollen Schaltvorgänge abhängig gemacht werden. Für das Gerät, das ein notify auslöst, steht wie oben dargestellt die Variable $EVENT zur Verfügung. Sollen jedoch Werte anderer Geräte mit einbezogen werden, kommen die Funktionen Value() und Readings Val zum Einsatz.
Das o.g. Beispiel kann man auch so schreiben:

define Schalter1Notify notify Schalter1 { if ( Value("Schalter1")eq "off") {fhem("set wz_Media off")} }

Die Variable $EVENTist hier ersetzt durch die Funktion Value(), es wird der Status des Geräts Schalter1 ausgelesen. Man hat nun die Möglichkeit, den Status eines beliebigen Geräts als Schaltbedingung einzubauen, es muss nicht dasselbe sein, das den notify auslöst.
Also z.B.define Schalter1Notify notify Schalter1 { if ( Value("Schalter1")eq "off"&& Value("Schalter2") eq "off") {fhem("set wz_Media off")} }

Hier wird wz_Media nur dann ausgeschaltet, wenn sowohl Schalter1 als auch Schalter2 den Zustand offhaben



Anfänger PDFm, Seite 38. fortlaufend
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

ernst1024

@kaktus

ja so ist das hier, machst du nix. Hatte das auch schon einmal hier: http://forum.fhem.de/index.php/topic,49634.msg413614.html#msg413614 thematisiert.

Aber was soll's.
Gruß Ernst

kaktus567

#10
@Tux:

Du verstehst es nicht, ich hatte gehofft, das Thema hier bleibt SAUBER !

... und damit es nicht in Vergessenheit gerät zitiere ich mich nochmal:

Zitat... wenn ich das alles wüsste, wüsste ich, das ich entweder:

- Im Anfängerforum "helfen" würde, mit klaren Ansagen, welche dann auch motivieren zum weitersuchen (s. Beitrag von Thorsten)
- oder ich es einfach sein lasse !!! und die Zeit anderweitig nutze.

Ich "wüsste" definitiv, dass ich nicht immer auf alle möglichen pdf's und Forum-Beiträge hinweisen würde und mich dann als FHEM-Kenner-Könner-was-weis-ich hinstelle !!!

Entweder man möchte im "Anfängerforum" helfen, oder man lässt es, dazwischen gibt's einfach nix ... Der Anfängerbereich wäre sauberer und leserlicher und die Anfänger würden eher Lösungsansätze finden....


Warum musst Du das hier wieder komplett "zerstören" ? Geh' raus bei dem schönen Wetter oder schreib etwas, was "kurz" und "bündig" zur LÖSUNGSFINDUNG beiträgt !!!!  >:( >:( >:( >:( >:(


Nochmal für alle, die leider das eigentliche Thema wieder überlesen aufgrund von unötigen Hinweisen:


http://forum.fhem.de/index.php/topic,49948.0.html