FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: MichaelO am 26 Juli 2017, 08:59:44

Titel: eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: MichaelO am 26 Juli 2017, 08:59:44
Moin,

irgendwie stelle ich mich mit setReading etwas blöd an, oder verwende den falschen Befehl. Vielleicht kann mir wer weiterhelfen.

Ich habe ein DOIF, das eine Lampe steuert. Wenn das DOIF die Lampe anschaltet, soll im DOIF ein Reading "lastActivationType" auf "auto" gesetzt werden. Schaltet man die Lampe selbst ein oder aus, dann soll das Reading "manuell" enthalten. Das DOIF wertet das Reading aus, um selbst entsprechend anders zu reagieren, je nachdem, ob die Lampe eben manuell oder automatisch geschaltet wurde.

Ich setze den Wert des Reading innerhalb des DOIF mit

setReading $SELF lastActivationType manuell

Und bekomme im Log stets eine Fehlermeldung. Anführungszeichen um das "manuell" haben nichts geholfen, ich komme hier nicht weiter. Wie kann ich denn das Reading korrekt befüllen?

Danke
Michael
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: igami am 26 Juli 2017, 09:22:00
Zitat von: MichaelO am 26 Juli 2017, 08:59:44
Und bekomme im Log stets eine Fehlermeldung.
Hast du die Fehlermeldung denn verstanden?

Hier mal der Link zur commandref (https://fhem.de/commandref.html#setreading)
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: MichaelO am 26 Juli 2017, 09:27:04
Zitat von: igami am 26 Juli 2017, 09:22:00
Hast du die Fehlermeldung denn verstanden?

Nein, sonst hätte ich das Problem ja selbst lösen oder meine Frage genauer eingrenzen können. Die commandref habe ich auch bereits angeschaut, ich komme jedoch mit der Beschreibung des setReading-Befehls dahingehend nicht zurecht, dass ich nicht erkennen kann, was bei mir falsch sein könnte.

Die Fehlermeldung im Logfile lautet
2017.07.26 08:48:40 2: di_WZ_DekobeleuchtungAutomatik:        setReading di_WZ_DekobeleuchtungAutomatik lastActivationType auto: Usage: setreadingdesc <devspec> <readingspec> [noCheck] <key>=[<value>|?]
where <devspec> is a single device name, a list separated by comma (,) or a regexp. See the devspec section in the commandref.html for details.
<readingspec> can be a single reading name, a list separated by comma (,) or a regexp.


Da wird mir doch auch nur erklärt, wie denn der Befehl aufgebaut ist. Was genau ich nun falsch gemacht hab, steht da nicht. Oder hab ich was übersehen?

Gruß
Michael
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: Otto123 am 26 Juli 2017, 10:24:13
Hallo Michael,

an dem setreading Befehl selbst ist nichts falsch, ich nehme an der Syntax innerhalb Deines DOIF stimmt nicht. Er macht doch offenbar etwas anderes als setreading
Führe doch den Befehl einfach mal in der Kommandozeile von FHEM aus.
Gruß Otto
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: CoolTux am 26 Juli 2017, 10:26:10
setReading != setreading

Commandref hätte geholfen
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: igami am 26 Juli 2017, 10:53:52
Zitat von: CoolTux am 26 Juli 2017, 10:26:10
setReading != setreading

Commandref hätte geholfen
Aber != ist doch kein Textvergleich, dann kommt nur sowas wie PERL WARNING: Argument "setReading" isn't numeric in numeric :P
Wenn schon dann "setReading" ne "setreading"
Und FHEM cmds sind nicht case sensitive, kann man mit "DEFINE test dummy" testen, sonst müsste man ja auch immer wissen wie das Modul geschrieben wurde, Dummy, dummy oder DUMMY.

Die Fehlermeldung ist aber nicht wirklich aussagekräftig.
Poste mal bitte ein List von dem device NACHDEM der Fehler auftritt.
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: CoolTux am 26 Juli 2017, 11:13:06
tatsächlich. man kann den Befehl auch Groß klein schreiben.
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: Manul am 26 Juli 2017, 14:24:51
Ist jetzt nur geraten, aber wenn ich das

Zitat von: MichaelO am 26 Juli 2017, 09:27:04
Usage: setreadingdesc <devspec> <readingspec> [noCheck] <key>=[<value>|?]

hiermit vergleiche

Zitat von: MichaelO am 26 Juli 2017, 08:59:44
setReading $SELF lastActivationType manuell

würde ich für denkbar halten, daß da einfach ein "=" fehlt.

Edit: Falsch geraten, wie die commandref zeigt.
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: nils_ am 26 Juli 2017, 14:59:39
Zitat von: MichaelO am 26 Juli 2017, 09:27:04
Usage: setreadingdesc <devspec> <readingspec> [noCheck] <key>=[<value>|?]
where <devspec> is a single device name, a list separated by comma (,) or a regexp. See the devspec section in the commandref.html for details.
<readingspec> can be a single reading name, a list separated by comma (,) or a regexp.

fehlermeldung kommt denke ich hierher: https://svn.fhem.de/trac/browser/trunk/fhem/FHEM/Unit.pm#L4510

wie das mit DOIF bzw. dem Logeintrag zusammenhängt, kann ich leider nicht beantworten  :-\
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: MichaelO am 26 Juli 2017, 16:02:46
So, dank Eurer Hinweise hab ich den Befehl ersteinmal in die Kommandozeile getippt, und bekam dieselbe Fehlermeldung - auch, wenn ich statt "auto" dort eine Zahl eingebe. Mit einem "=" war es auch nix.

Aaaaber... es scheint tatsächlich die verdammte Schreibweise gewesen zu sein. Wenn ich setreading statt setReading schreibe, kommt keine Fehlermeldung und das Reading nimmt den gewünschten Wert an. Sowas doofes aber auch... kommt davon, wenn man zu viele unterschiedliche Systeme beackert - ich schreibe beim Programmieren bei Namen von Prozeduren/Variablen immer das erste Wort klein und dann jedes neue, zusammengesetzte groß.

Allerdings ist die Fehlermeldung (wenn es das wirklich war) nicht besonders toll...

Werde das jetzt mal korrigieren und sehen, was die Automatik macht, sobald das DOIF scharf geht.

Gruß
Michael
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: Otto123 am 26 Juli 2017, 17:35:09
Hallo Michael,

kann nicht sein, ich weiß nicht was Du da auf welcher Kommandozeile eingetippt hast.
Ich habe einen dummy Test
Ob ich setReading Test lastActivationType auto
oder
setreading Test lastActivationType auto
eintippe ist völlig egal. Es funktioniert in beiden Fällen.

Wie er aus setreading -> setreadingdesc macht ist mir noch unklar  :-[

Es kann sein, weil Du es im DOIF aufrufst, oder das es an $SELF liegt. Aber $SELF wird eigentlich korrekt aufgelöst wie die Fehlermeldung zeigt.

Gruß Otto
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: MichaelO am 26 Juli 2017, 18:42:00
Das ist ja echt komisch, ich habe es gerade nochmal getestet...

Kommandozeile
setreading di_WZ_DekobeleuchtungAutomatik lastActivationType auto
Keine Fehlermeldung, das Reading wird korrekt gesetzt

Kommandozeile
setReading di_WZ_DekobeleuchtungAutomatik lastActivationType auto
Fehlermeldung wie gehabt

Usage: setreadingdesc <devspec> <readingspec> [noCheck] <key>=[<value>|?]
where <devspec> is a single device name, a list separated by comma (,) or a regexp. See the devspec section in the commandref.html for details.
<readingspec> can be a single reading name, a list separated by comma (,) or a regexp.


Das soll wer verstehen
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: Otto123 am 26 Juli 2017, 18:50:19
hast Du eine besondere FHEM Version? Was sagt version?

Gruß Otto
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: MichaelO am 26 Juli 2017, 18:53:43
Eigentlich mache ich recht regelmäßig Updates...

Latest Revision: 14773

Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: Otto123 am 26 Juli 2017, 19:02:04
Sehr komisch.

Ich habe gerade nochmal auch ein DOIF probiert, es ist völlig egal wie ich setreading schreibe, ob groß klein komplett groß - geht alles.

Was sagt denn list TYPE=cmdalias

Gruß Otto
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: nils_ am 27 Juli 2017, 08:59:48
poste doch auch mal ein list von deinem DOIF
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: MichaelO am 27 Juli 2017, 10:45:49
Hier das ganze DOIF, mit setreading jetzt komplett kleingeschrieben:

Internals:
   DEF        ## Dekobeleuchtung an, wenn es dunkel ist, der Rolladen offen, eine Deko existiert
## die Deko noch aus ist jeweils morgens und abends:

( [?dy_WZ_Dekobeleuchtung] ne "keine" and
  [?WZ_ZS_Fenster] eq "off" and
  [RS_WZ_Rolladen:position] > 60 and
  [AU_Sonnensensor:Helligkeit] < [dy_SchwellwertLichtZimmerVorne] and
  ( [?05:00-09:00] or [?15:30-22:30] )
)

     (set WZ_ZS_Fenster on,
      setreading $SELF lastActivationType auto)

DOELSEIF
## Dekobeleuchtung aus wenn Deko existiert und die Automatik sie auch eingeschaltet hat,
## der Rolladen zu geht und die Leistungsaufnahme des Entertainment unter 30 Watt ist,
## oder es hell wird
( [?dy_WZ_Dekobeleuchtung] ne "keine" and [?$SELF:lastActivationType] eq "auto" and
  ( ([RS_WZ_Rolladen:position] < 40 and [?WZ_ZS_Entertainment:power:d] < 30) or
    ([RS_WZ_Rolladen:position] > 39 and [AU_Sonnensensor:Helligkeit] > [dy_SchwellwertLichtZimmerVorne])
  )
)

     (set WZ_ZS_Fenster off,
      setreading $SELF lastActivationType manual)

DOELSEIF
## Dekobeleuchtung an wenn Deko existiert, abends der Rolladen zu ist
## und die Leistungsaufnahme des Entertainment über 30 Watt ist.
## lastActivationType auf manual, weil ja jetzt wer im Raum ist
( [?dy_WZ_Dekobeleuchtung] ne "keine" and
  [RS_WZ_Rolladen:position] < 10 and
  [WZ_ZS_Entertainment:power:d] > 30
)

     (set WZ_ZS_Fenster on,
      setreading $SELF lastActivationType manual)

DOELSEIF
## Dekobeleuchtung nach 3 Minuten aus wenn sie an ist, abends der Rolladen zu ist
## und die Leistungsaufnahme des Entertainment unter 30 Watt fällt.
## lastActivationType auf manual, weil ja jetzt wer im Raum ist
( [?dy_WZ_Dekobeleuchtung] ne "keine" and
  [RS_WZ_Rolladen:position] < 10 and
  [?17:00-02:00] and
  [WZ_ZS_Entertainment:power:d] < 30
)

     (set WZ_ZS_Fenster off,
      setreading $SELF lastActivationType manual)
   NAME       di_WZ_DekobeleuchtungAutomatik
   NR         92
   NTFY_ORDER 50-di_WZ_DekobeleuchtungAutomatik
   STATE      initialized
   TYPE       DOIF
   READINGS:
     2017-07-27 10:43:34   Device          AU_Sonnensensor
     2017-07-27 10:43:03   cmd             0
     2017-07-27 10:43:34   e_AU_Sonnensensor_Helligkeit 3521
     2017-07-27 08:52:44   lastActivationType manual
     2017-07-27 10:43:03   state           initialized
     2017-07-27 10:43:03   timer_01_c01    28.07.2017 05:00:00
     2017-07-27 10:43:03   timer_02_c01    28.07.2017 09:00:00
     2017-07-27 10:43:03   timer_03_c01    27.07.2017 15:30:00
     2017-07-27 10:43:03   timer_04_c01    27.07.2017 22:30:00
     2017-07-27 10:43:04   timer_05_c04    27.07.2017 17:00:00
     2017-07-27 10:43:04   timer_06_c04    28.07.2017 02:00:00
   condition:
     0           InternalDoIf($hash,'dy_WZ_Dekobeleuchtung','STATE') ne "keine" and    InternalDoIf($hash,'WZ_ZS_Fenster','STATE') eq "off" and    ReadingValDoIf($hash,'RS_WZ_Rolladen','position') > 60 and   ReadingValDoIf($hash,'AU_Sonnensensor','Helligkeit') < InternalDoIf($hash,'dy_SchwellwertLichtZimmerVorne','STATE') and   ( DOIF_time($hash,0,1,$wday,$hms) or DOIF_time($hash,2,3,$wday,$hms) )
     1           InternalDoIf($hash,'dy_WZ_Dekobeleuchtung','STATE') ne "keine" and ReadingValDoIf($hash,'di_WZ_DekobeleuchtungAutomatik','lastActivationType') eq "auto" and    ( (ReadingValDoIf($hash,'RS_WZ_Rolladen','position') < 40 and ReadingValDoIf($hash,'WZ_ZS_Entertainment','power','','d') < 30) or     (ReadingValDoIf($hash,'RS_WZ_Rolladen','position') > 39 and ReadingValDoIf($hash,'AU_Sonnensensor','Helligkeit') > InternalDoIf($hash,'dy_SchwellwertLichtZimmerVorne','STATE'))   )
     2           InternalDoIf($hash,'dy_WZ_Dekobeleuchtung','STATE') ne "keine" and    ReadingValDoIf($hash,'RS_WZ_Rolladen','position') < 10 and    ReadingValDoIf($hash,'WZ_ZS_Entertainment','power','','d') > 30
     3           InternalDoIf($hash,'dy_WZ_Dekobeleuchtung','STATE') ne "keine" and    ReadingValDoIf($hash,'RS_WZ_Rolladen','position') < 10 and    DOIF_time($hash,4,5,$wday,$hms) and    ReadingValDoIf($hash,'WZ_ZS_Entertainment','power','','d') < 30
   days:
   devices:
     0           RS_WZ_Rolladen AU_Sonnensensor dy_SchwellwertLichtZimmerVorne
     1           RS_WZ_Rolladen AU_Sonnensensor dy_SchwellwertLichtZimmerVorne
     2           RS_WZ_Rolladen WZ_ZS_Entertainment
     3           RS_WZ_Rolladen WZ_ZS_Entertainment
     all         RS_WZ_Rolladen AU_Sonnensensor dy_SchwellwertLichtZimmerVorne WZ_ZS_Entertainment
   do:
     0:
       0          set WZ_ZS_Fenster on,       setreading di_WZ_DekobeleuchtungAutomatik lastActivationType auto
     1:
       0          set WZ_ZS_Fenster off,       setreading di_WZ_DekobeleuchtungAutomatik lastActivationType manual
     2:
       0          set WZ_ZS_Fenster on,       setreading di_WZ_DekobeleuchtungAutomatik lastActivationType manual
     3:
       0          set WZ_ZS_Fenster off,       setreading di_WZ_DekobeleuchtungAutomatik lastActivationType manual
     4:
   helper:
     event      VAD: 0.07,VDD: 5.1,vis: 0.0131814,temperature: 22.7188,Helligkeit: 3521,Einstrahlung: 229.35636
     globalinit 1
     last_timer 6
     sleeptimer -1
     triggerDev AU_Sonnensensor
     triggerEvents:
       VAD: 0.07
       VDD: 5.1
       vis: 0.0131814
       temperature: 22.7188
       Helligkeit: 3521
       Einstrahlung: 229.35636
     triggerEventsState:
       VAD: 0.07
       VDD: 5.1
       vis: 0.0131814
       temperature: 22.7188
       Helligkeit: 3521
       Einstrahlung: 229.35636
   internals:
     0           dy_WZ_Dekobeleuchtung:STATE WZ_ZS_Fenster:STATE dy_SchwellwertLichtZimmerVorne:STATE
     1           dy_WZ_Dekobeleuchtung:STATE dy_SchwellwertLichtZimmerVorne:STATE
     2           dy_WZ_Dekobeleuchtung:STATE
     3           dy_WZ_Dekobeleuchtung:STATE
     all         dy_WZ_Dekobeleuchtung:STATE WZ_ZS_Fenster:STATE dy_SchwellwertLichtZimmerVorne:STATE
   interval:
     0          -1
     1          0
     2          -1
     3          2
     4          -1
     5          4
   itimer:
   localtime:
     0          1501210800
     1          1501225200
     2          1501162200
     3          1501187400
     4          1501167600
     5          1501200000
   readings:
     0           RS_WZ_Rolladen:position AU_Sonnensensor:Helligkeit
     1           RS_WZ_Rolladen:position AU_Sonnensensor:Helligkeit
     2           RS_WZ_Rolladen:position WZ_ZS_Entertainment:power
     3           RS_WZ_Rolladen:position WZ_ZS_Entertainment:power
     all         RS_WZ_Rolladen:position AU_Sonnensensor:Helligkeit WZ_ZS_Entertainment:power
   readingsDesc:
     Device:
       lastActivationType 2
     cmd:
       lastActivationType 2
     e_AU_Sonnensensor_Helligkeit:
       lastActivationType 2
     lastActivationType:
       lastActivationType 2
     state:
       lastActivationType 2
     timer_01_c01:
       lastActivationType 2
     timer_02_c01:
       lastActivationType 2
     timer_03_c01:
       lastActivationType 2
     timer_04_c01:
       lastActivationType 2
     timer_05_c01:
       lastActivationType 2
     timer_06_c04:
       lastActivationType 2
     timer_07_c04:
       lastActivationType 2
   realtime:
     0          05:00:00
     1          09:00:00
     2          15:30:00
     3          22:30:00
     4          17:00:00
     5          02:00:00
   regexp:
     0:
     1:
     2:
     3:
     all:
   state:
     STATE:
   time:
     0          05:00:00
     1          09:00:00
     2          15:30:00
     3          22:30:00
     4          17:00:00
     5          02:00:00
   timeCond:
     0          0
     1          0
     2          0
     3          0
     4          3
     5          3
   timer:
     0          0
     1          0
     2          0
     3          0
     4          0
     5          0
   trigger:
   triggertime:
     1501162200:
       localtime  1501162200
       hash:
     1501167600:
       localtime  1501167600
       hash:
     1501187400:
       localtime  1501187400
       hash:
     1501200000:
       localtime  1501200000
       hash:
     1501210800:
       localtime  1501210800
       hash:
     1501225200:
       localtime  1501225200
       hash:
Attributes:
   disable    0
   room       9.1.1_Skript
   userReadings lastActivationType
   wait       10:10:5:180
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: Otto123 am 27 Juli 2017, 14:12:18
Ist das das Problem:  ???
ZitatuserReadings lastActivationType
Warum hast Du das gemacht? Das brauchst Du nicht. Reading setzen kannst Du ohne userReadings

Das userReadings hat eigentlich eine andere Funktion.

Gruß Otto
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: MichaelO am 27 Juli 2017, 14:29:08
Zitat von: Otto123 am 27 Juli 2017, 14:12:18
Ist das das Problem:  ???Warum hast Du das gemacht? Das brauchst Du nicht. Reading setzen kannst Du ohne userReadings

Das userReadings hat eigentlich eine andere Funktion.

Gruß Otto

Da hast Du recht, das muss noch aus älteren Versuchen drin gewesen sein. Ich habe gelöscht, das Verhalten ist aber gleich. Gebe ich in der Kommandozeile setReading ein, mault fhem rum, schreibe ich alles klein, läuft es.

Ich hab keine Ahnung, was da los ist, aber wenigstens konnte ich so rausfinden, wie ich die Fehlermeldung weg bekomme.

Erstmal danke allen!
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: Otto123 am 27 Juli 2017, 14:35:45
Was bekommst Du für eine Fehler Meldung wenn Du in der Kommanozeile bloß folgendes eingibst:
setreading
setReading
SETREADING

Bei mir gibt es immer diese hier:
ZitatUsage: setreading <name> <reading> <value>
where <name> is a single device name, a list separated by komma (,) or a regexp. See the devspec section in the commandref.html for details.
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: MichaelO am 27 Juli 2017, 14:38:35
setreading:
Usage: setreading <name> <reading> <value>
where <name> is a single device name, a list separated by komma (,) or a regexp. See the devspec section in the commandref.html for details.


setReading und SETREADING (wie gehabt):
Usage: setreadingdesc <devspec> <readingspec> [noCheck] <key>=[<value>|?]
where <devspec> is a single device name, a list separated by comma (,) or a regexp. See the devspec section in the commandref.html for details.
<readingspec> can be a single reading name, a list separated by comma (,) or a regexp.
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: Otto123 am 27 Juli 2017, 14:45:47
geht das auch bei anderen Befehlen? Also alles klein: ordentlicher Hilfetext, ein Buchstabe groß ein ganz andere "Hilfetext"?

Ich weiß noch nicht genau was wir hier untersuchen :) aber offenbar schlägt bei Dir etwas zu wenn der Befehl nicht komplett klein geschrieben ist.
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: nils_ am 27 Juli 2017, 14:49:04
starte doch mal fhem mit der demo cfg.
nicht das irgendwas dazwischenhaut.  :o
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: MichaelO am 27 Juli 2017, 14:53:16
Ui, ich hoffe, da hab ich nix falsches eingetippt...

deletereading
Usage: deletereading <name> <reading>
where <name> is a single device name, a list separated by komma (,) or a regexp. See the devspec section in the commandref.html for details.


und dann deleteReading
Removed timer_07_c04 lastActivationType=2 from attribute di_WZ_DekobeleuchtungAutomatik readingsDesc
Removed timer_03_c01 lastActivationType=2 from attribute di_WZ_DekobeleuchtungAutomatik readingsDesc
Removed timer_05_c01 lastActivationType=2 from attribute di_WZ_DekobeleuchtungAutomatik readingsDesc
Removed lastActivationType lastActivationType=2 from attribute di_WZ_DekobeleuchtungAutomatik readingsDesc
Removed e_AU_Sonnensensor_Helligkeit lastActivationType=2 from attribute di_WZ_DekobeleuchtungAutomatik readingsDesc
Removed timer_04_c01 lastActivationType=2 from attribute di_WZ_DekobeleuchtungAutomatik readingsDesc
Removed cmd lastActivationType=2 from attribute di_WZ_DekobeleuchtungAutomatik readingsDesc
Removed state lastActivationType=2 from attribute di_WZ_DekobeleuchtungAutomatik readingsDesc
Removed timer_06_c04 lastActivationType=2 from attribute di_WZ_DekobeleuchtungAutomatik readingsDesc
Removed Device lastActivationType=2 from attribute di_WZ_DekobeleuchtungAutomatik readingsDesc
Removed timer_02_c01 lastActivationType=2 from attribute di_WZ_DekobeleuchtungAutomatik readingsDesc
Removed timer_01_c01 lastActivationType=2 from attribute di_WZ_DekobeleuchtungAutomatik readingsDesc


Komischerweise ist das alles was von dem Reading, das mir die Kopfzerbrechen bereitet.  :o
Ich hab deleteReading danach wiederholt, da kommt nix mehr, keine Fehlermeldung, der Browser macht einen Refresh und das wars.
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: nils_ am 27 Juli 2017, 15:10:23
bei deletereading
landest du hier:
https://svn.fhem.de/trac/browser/trunk/fhem/fhem.pl#L2167

bei
deleteReading
da:
https://svn.fhem.de/trac/browser/trunk/fhem/FHEM/Unit.pm#L4582
bzw. https://svn.fhem.de/trac/browser/trunk/fhem/FHEM/Unit.pm#L4404 am ende der sub kommt die ausgabe


eigentlich schon so ähnlich wie ich hier vermutet habe
Zitat von: nils_ am 26 Juli 2017, 14:59:39
fehlermeldung kommt denke ich hierher: https://svn.fhem.de/trac/browser/trunk/fhem/FHEM/Unit.pm#L4510

wie das mit DOIF bzw. dem Logeintrag zusammenhängt, kann ich leider nicht beantworten  :-\

Zitat von: MichaelO am 27 Juli 2017, 14:53:16
Komischerweise ist das alles was von dem Reading, das mir die Kopfzerbrechen bereitet.  :o
Ich hab deleteReading danach wiederholt, da kommt nix mehr, keine Fehlermeldung, der Browser macht einen Refresh und das wars.
das nix mehr kommt, könnte daran liegen weil er alles entfernt hat.

Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: Otto123 am 27 Juli 2017, 15:14:13
Das klingt nach "etwas" was auf groß geschrieben Reading anspringt - ich habe immer noch keine Vorstellung.

Wenn ich deleteReading eingebe kommt:
ZitatUsage: deletereading <name> <reading>
where <name> is a single device name, a list separated by komma (,) or a regexp. See the devspec section in the commandref.html for details.

Er hat sicher das gelöscht:
readingsDesc:
     Device:
       lastActivationType 2
     cmd:
       lastActivationType 2
     e_AU_Sonnensensor_Helligkeit:
       lastActivationType 2
     lastActivationType:
       lastActivationType 2
     state:
       lastActivationType 2
     timer_01_c01:
       lastActivationType 2
     timer_02_c01:
       lastActivationType 2
     timer_03_c01:
       lastActivationType 2
     timer_04_c01:
       lastActivationType 2
     timer_05_c01:
       lastActivationType 2
     timer_06_c04:
       lastActivationType 2
     timer_07_c04:
       lastActivationType 2


Gruß Otto
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: MichaelO am 27 Juli 2017, 15:16:02
Also da bin ich raus... soll ich das hier mal woanders posten, damit wer draufschauen kann, der tiefere Einblicke hat? Ich weiß nur weder wo, noch wer...
Titel: Antw:eigenes Reading mit String befüllen... Syntaxfrage
Beitrag von: nils_ am 27 Juli 2017, 15:21:49
Zitat von: MichaelO am 27 Juli 2017, 15:16:02
Also da bin ich raus... soll ich das hier mal woanders posten, damit wer draufhauen kann, der tiefere Einblicke hat? Ich weiß nur weder wo, noch wer...

gute frage....
da es bei dir im Zusammenhang mit DOIF war, wäre evtl. Damian der Ansprechpartner.
falls es nicht an DOIF liegt, müsstest du "weitersuchen".  -> Unit.pm maintainer
und als letzte Instanz dann rudi  :o :o


//edit:
nochmal ein bisschen gesucht
https://forum.fhem.de/index.php/topic,60285.msg521255.html
und speziell https://forum.fhem.de/index.php/topic,60285.msg521255.html#msg521255
steht was zu 'showUnits=1'.
habt ihr beide da evtl. einen unterschied??

ansonsten bin ich auch erstmal raus, das ist alles zu tiefgehend und da habe ich absolut die ganzen zusammenhänge noch nicht verstanden.