FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: roman1528 am 20 Dezember 2015, 19:58:09

Titel: WebViewControl userReadings funktioniert nicht?
Beitrag von: roman1528 am 20 Dezember 2015, 19:58:09
Moin.

Für's einfache Auslesen in FTUI der "powerPlugged" und "powerLevel" Readings aus einem Reading im WebViewControl-Modul habe ich mir ein userReading angelegt:

attr WebViewDevice userReadings power {ReadingsVal("$name","powerLevel","0"); ReadingsVal("$name","powerPlugged","false");}

Funktioniert allerdings nicht... Liegt es an mir oder wird userReadings hier nicht unterstützt?

Das Attr stateFormat wäre ja noch einfacher... aber das kann man nicht anlegen.

Danke.

Grüße^^
Titel: Antw:WebViewControl userReadings funktioniert nicht?
Beitrag von: CoolTux am 20 Dezember 2015, 20:01:06
Teste mal ob nur eines erstmal geht.


Grüše
Titel: Antw:WebViewControl userReadings funktioniert nicht?
Beitrag von: roman1528 am 20 Dezember 2015, 20:07:41
Zitat von: CoolTux am 20 Dezember 2015, 20:01:06
Teste mal ob nur eines erstmal geht.

Geht leider auch nicht...

Es wird kein neues Reading angelegt. Auch nicht wenn eine Änderung des AusgangsReadings erfolgt.
Titel: Antw:WebViewControl userReadings funktioniert nicht?
Beitrag von: CoolTux am 20 Dezember 2015, 20:17:15

attr WebViewDevice userReadings power { ReadingsVal( "$name", "powerLevel", "0" ), ReadingsVal( "$name", "powerPlugged", "false" ) }


Teste mal so, wenn nicht dann teste mal mit nur einem. KEIN Semikolon bitte
Titel: Antw:WebViewControl userReadings funktioniert nicht?
Beitrag von: roman1528 am 20 Dezember 2015, 20:23:23
Zitat von: CoolTux am 20 Dezember 2015, 20:17:15

attr WebViewDevice userReadings power { ReadingsVal( "$name", "powerLevel", "0" ), ReadingsVal( "$name", "powerPlugged", "false" ) }

Teste mal so, wenn nicht dann teste mal mit nur einem. KEIN Semikolon bitte

Leider auch hier nicht... Weder einzeln noch zusammen -.- ich hatte auch schon die Variante:
attr WebViewDevice userReadings power {.ReadingsVal("$name","powerLevel","0")." ".ReadingsVal("$name","powerPlugged","false")}
soll geholfen haben...
http://forum.fhem.de/index.php/topic,43131.msg351185.html#msg351185 (http://forum.fhem.de/index.php/topic,43131.msg351185.html#msg351185)
geht bei mir aber auch nicht... weder einzeln noch zusammen
Titel: Antw:WebViewControl userReadings funktioniert nicht?
Beitrag von: marvin78 am 20 Dezember 2015, 20:25:54
Was genau soll hier überhaupt passieren? Du möchtest 2 Readings in einem userReading unterbringen? Bei den Verianten oben (auch von CoolTux) sollten Fehler im Log auftauchen. Mal da rein gesehen? CommandRef zu userReading gelesen?

attr WebViewDevice userReadings power {ReadingsVal( "$name", "powerLevel", "0" )."% - ".ReadingsVal( "$name", "powerPlugged", "false" )}

Würde ein Reading erzeugen, das so aussieht

70% - true

oder ähnliches.

Ach und "geht nicht" ist keine hinreichende Fehlerbeschreibung!

Edit: bei der Verwendung ist es wichtig, dass vom Device events erzeugt werden. Noch besser wäre es, wenn powerLevel oder powerPlugged events erzeugen und man eines von diesen gemäß commandref als Trigger verwendet.
Titel: Antw:WebViewControl userReadings funktioniert nicht?
Beitrag von: roman1528 am 20 Dezember 2015, 20:35:31
Zitat von: marvin78 am 20 Dezember 2015, 20:25:54
Was genau soll hier überhaupt passieren? Du möchtest 2 Readings in einem userReading unterbringen? Bei den Verianten oben (auch von CoolTux) sollten Fehler im Log auftauchen. Mal da rein gesehen? CommandRef zu userReading gelesen?

attr WebViewDevice userReadings power {ReadingsVal( "$name", "powerLevel", "0" )."% - ".ReadingsVal( "$name", "powerPlugged", "false" )}

Würde ein Reading erzeugen, das so aussieht

70% - true

oder ähnliches.

Ach und "geht nicht" ist keine hinreichende Fehlerbeschreibung!

Edit: bei der Verwendung ist es wichtig, dass vom Device events erzeugt werden. Noch besser wäre es, wenn powerLevel oder powerPlugged events erzeugen und man eines von diesen gemäß commandref als Trigger verwendet.

Keine Log-Einträge.. das wurmt mich ja so... sonst wüsste ich ob ich einen Fehler in der Syntax hab...

Das ist natürlich sehr gut möglich, dass WebViewControl keine Events erzeugt... ich teste mal:


attr WebViewDevice userReadings power {ReadingsVal( "$name", "powerLevel", "0" )."% - ".ReadingsVal( "$name", "powerPlugged", "false" )}
attr WebViewDevice event-on-change-reading powerLevel,powerPlugged


EDIT:
schade.....
TAB3: unknown attribute event-on-change-reading. Type 'attr TAB3 ?' for a detailed list.
Titel: Antw:WebViewControl userReadings funktioniert nicht?
Beitrag von: marvin78 am 20 Dezember 2015, 20:37:23
Doch. Es erzeugt generell Events. Allerdings kann man diese natürlich raus konfigurieren.
Titel: Antw:WebViewControl userReadings funktioniert nicht?
Beitrag von: roman1528 am 20 Dezember 2015, 20:40:37
Also es tut mir leid... auch bei deiner Variante passiert nichts... kein neues Reading.

Auch nicht mit power:powerLevel als trigger....

Und immernoch keine Einträge im Log
Titel: Antw:WebViewControl userReadings funktioniert nicht?
Beitrag von: marvin78 am 20 Dezember 2015, 20:44:12
Eine Sache habe ich übersehen:

attr WebViewDevice userReadings power {ReadingsVal($name,"powerLevel",0)."% - ".ReadingsVal($name,"powerPlugged","false")}

Finde den Unterschied ;)

Andernfall erzeuge das Reading einmal mit setreading und schaue, ob es dann verändert wird.
Titel: Antw:WebViewControl userReadings funktioniert nicht?
Beitrag von: roman1528 am 20 Dezember 2015, 20:51:40
Das:
setreading WebViewDevice power {ReadingsVal($name,"powerLevel",0)." ".ReadingsVal($name,"powerPlugged","false")}

klappt super... Die aktuellen Werte werden übernommen...

Aber nicht aktualisiert....

Und den unterschied entdeckt. 0 ist int aber vorher als string geschrieben "0" .... genau wie $name
klappt überall anders aber auch wenns in "" ist.
Titel: Antw:WebViewControl userReadings funktioniert nicht?
Beitrag von: marvin78 am 20 Dezember 2015, 20:53:06
Mach mal ein List von deinem WebViewDevice und poste es hier in Code Tags.
Titel: Antw:WebViewControl userReadings funktioniert nicht?
Beitrag von: roman1528 am 20 Dezember 2015, 20:56:47
Zitat von: marvin78 am 20 Dezember 2015, 20:53:06
Mach mal ein List von deinem WebViewDevice und poste es hier in Code Tags.


Internals:
   DEF        TAB3
   NAME       TAB3
   NR         86
   STATE      powerLevel=49, powerPlugged=false
   TYPE       webViewControl
   appID      TAB3
   lastCmd    screenBrightness 255
   Readings:
     2015-12-20 20:49:33   power           52 false
     2015-12-20 20:55:18   powerLevel      49
     2015-12-20 20:55:18   powerPlugged    false
     2015-12-20 20:55:18   state           powerLevel=49, powerPlugged=false
     2015-12-18 14:41:53   voiceRecognitionLastError 6:No speech input
     2015-12-14 14:51:45   voiceRecognitionLastResult LED Stripe im Flur aus
Attributes:
   group      Display
   room       Büro
   userReadings power {ReadingsVal($name,"powerLevel",0)." ".ReadingsVal("$name","powerPlugged","false")}
Titel: Antw:WebViewControl userReadings funktioniert nicht?
Beitrag von: marvin78 am 20 Dezember 2015, 21:00:52
Naja. Schau mal hin. Stichwort $name und Anführungszeichen.

Wenn das alles nichts bringt, teste folgendes:

power:powerLevel {return ReadingsVal($name,"powerLevel",0)." ".ReadingsVal($name,"powerPlugged","false")}
Titel: Antw:WebViewControl userReadings funktioniert nicht?
Beitrag von: roman1528 am 20 Dezember 2015, 21:23:48
Zitat von: marvin78 am 20 Dezember 2015, 21:00:52
Naja. Schau mal hin. Stichwort $name und Anführungszeichen.

Sorry.. da hat ich nochmal getestet...

auch mit return gibt keine Änderung. Auch nicht nach neustart.
Titel: Antw:WebViewControl userReadings funktioniert nicht?
Beitrag von: marvin78 am 21 Dezember 2015, 08:06:47
Ich frage mich gerade, was bei dir nicht stimmt. Dass du stateFormat nicht anlegen kannst, ist schon seltsam. Hast du es mal versucht (über die Kommandozeile)?

attr WebViewDevice stateFormat power% - powerPlugged

Wie alt ist dein FHEM?
Titel: Antw:WebViewControl userReadings funktioniert nicht?
Beitrag von: roman1528 am 21 Dezember 2015, 10:10:59
Zitat von: marvin78 am 21 Dezember 2015, 08:06:47
Ich frage mich gerade, was bei dir nicht stimmt. Dass du stateFormat nicht anlegen kannst, ist schon seltsam. Hast du es mal versucht (über die Kommandozeile)?

attr WebViewDevice stateFormat power% - powerPlugged

Wie alt ist dein FHEM?
Kommandozeile:
attr TAB3 stateFormat powerLevel powerPlugged
Antwort:
TAB3: unknown attribute stateFormat. Type 'attr TAB3 ?' for a detailed list.

FHEM: letztes Update gestern Nachmittag.

Habe auch schon mal versucht stateFormat über userattr anzulegen. kann es dann in der dropdownliste auswählen. dann natürlich gesetzt (wie oben). Nach dem setzen des attr zeigt er mir dann den STATE so an wie ich es gern hätte. Allerdings nur bis zur nächsten aktualisierung des Moduls (powerLevel ändert sich) Dann sieht der STATE wieder so aus:

STATE    powerLevel=64 powerPlugged=false
Titel: Antw:WebViewControl userReadings funktioniert nicht?
Beitrag von: marvin78 am 21 Dezember 2015, 10:32:58
Ich bin geneigt, zu sagen, dass du hier mal im Forum für WebViewControl anfragst.

Funktionieren solche Dinge bei dir mit anderen Devices. Also dummy und/oder Homematic/FS20 etc.?
Titel: Antw:WebViewControl userReadings funktioniert nicht?
Beitrag von: roman1528 am 21 Dezember 2015, 10:39:46
Ja auf jeden Fall.

attr gds userReadings alerts { ReadingsVal( "$name", "a_valid", "0" ); }, alertsCount { ReadingsVal( "$name", "a_count", "0"); }

Ich werd mich mal daran setzen. Danke dir trotzdem für alles