Autor Thema: Verständnisfrage: "state","STATE"  (Gelesen 7425 mal)

Offline akw

  • Developer
  • Full Member
  • ****
  • Beiträge: 200
    • Bytefeed
Verständnisfrage: "state","STATE"
« am: 09 März 2014, 13:55:37 »
Hi,

ich habe ein kleines Verständnisproblem mit dem default-state. Die Beschreibung im FHEMwiki hat da leider auch nicht weitergeholfen.

Angenommen ich habe ein Modul geschrieben, dass mittels "readingsBulkUpdate" u.a. einen Wert names "power" schreibt.
Was sollte ich tun, damit er als Default-Reading genommen wird?
a) $hash->{STATE} setzen
b) das reading auch nach "state" schreiben.
c) .. ?


Vielen Dank für die Hilfe!

Ciao, Arno
FHEM-SVN auf MacMini OSX 10.7.5

FS20,FHT,HMS,CUL_WS,CUL_HM,KS300,HUE,FB_DECT

FHEMobile: www.fhemobile.de

Offline Loredo

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3753
  • ~ Challenging Innovation ~
Antw:Verständnisfrage: "state","STATE"
« Antwort #1 am: 09 März 2014, 14:09:58 »
Am flexibelsten bleibst du (und deine Nutzer), wenn du das Attribut stateFormat auf "power" setzt. wer möchte, kann es später dann noch abändern und dein STATE bleibt nicht statisch.


Gruß
Julian
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline akw

  • Developer
  • Full Member
  • ****
  • Beiträge: 200
    • Bytefeed
Antw:Verständnisfrage: "state","STATE"
« Antwort #2 am: 09 März 2014, 14:21:33 »
Hi Loredo,

Du meinst also etwas wie:

$attr{$name}{"stateFormat"} = "power";
Das klingt sehr gut für mich! "stateFormat" kannte ich noch nicht.

Ciao, Arno
FHEM-SVN auf MacMini OSX 10.7.5

FS20,FHT,HMS,CUL_WS,CUL_HM,KS300,HUE,FB_DECT

FHEMobile: www.fhemobile.de

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 20743
Antw:Verständnisfrage: "state","STATE"
« Antwort #3 am: 09 März 2014, 14:22:12 »
STATE solltest du nicht schreiben. damit verhinderst du das es der anwender konfigurieren kann

state kannst du mit etwas sinnvollem füllen. wenn es STATE und stateFormat nicht gibt wird state automatisch nach STATE kopiert. so hat der anwender einen vernünftigen default auch wenn er sich nicht weiter mit der konfiguration beschäftigt.

das automatische kopieren kann der anwender dann mit stateFormat konfigurieren wenn er sich mehr mit dem system beschäftigt hat.

gruss
  andre

edit: loredo war schneller :)
ob man aus dem modul direkt stateFormat setzt ist umstritten :) ich finde es auch keine schlechte lösung. du musst nur aufpassen das du nicht verhinderst das der anwender etwas anderes setzt. du kannst es also z.b. im define setzen.
« Letzte Änderung: 09 März 2014, 14:23:49 von justme1968 »
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline Loredo

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3753
  • ~ Challenging Innovation ~
Antw:Verständnisfrage: "state","STATE"
« Antwort #4 am: 09 März 2014, 14:22:26 »
ja ganz genau so  ;)
achte nur drauf, dass du es nur setzt, wenn es nicht schon gesetzt ist. sonst kann der User es nicht mehr dauerhaft ändern.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Offline rudolfkoenig

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 24242
Antw:Verständnisfrage: "state","STATE"
« Antwort #5 am: 09 März 2014, 14:24:35 »
Der Modulautor schlaegt in state vor, was angezeigt werden soll.
fhem.pl kopiert state nach STATE, falls kein stateFormat existiert, sonst wird stateFormat genomen
Der Benutzer (und nicht der Modulautor) setzt stateFromat, falls er mit dem Vorschlag des Modulautors nicht einverstanden ist.
Angezeigt wird STATE (von FHEMWEB und list, usw).
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline akw

  • Developer
  • Full Member
  • ****
  • Beiträge: 200
    • Bytefeed
Antw:Verständnisfrage: "state","STATE"
« Antwort #6 am: 09 März 2014, 18:30:05 »
Okay,
also wenn ich Rudolf richtig verstanden habe, ist es doch besser, das "state" Attribut zu setzen und "stateFormat" komplett dem User zu überlassen.

Ciao, Arno
FHEM-SVN auf MacMini OSX 10.7.5

FS20,FHT,HMS,CUL_WS,CUL_HM,KS300,HUE,FB_DECT

FHEMobile: www.fhemobile.de

Offline Loredo

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3753
  • ~ Challenging Innovation ~
Antw:Verständnisfrage: "state","STATE"
« Antwort #7 am: 09 März 2014, 18:34:09 »
also wenn ich Rudolf richtig verstanden habe, ist es doch besser, das "state" Attribut zu setzen und "stateFormat" komplett dem User zu überlassen.


Das sowieso. Ich nahm an du hättest deine Gründe so genau zu fragen, daher habe ich es nicht weiter hinterfragt.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Offline akw

  • Developer
  • Full Member
  • ****
  • Beiträge: 200
    • Bytefeed
Antw:Verständnisfrage: "state","STATE"
« Antwort #8 am: 10 März 2014, 07:51:30 »
Hi,


ich finde es halt nur irgendwie ungünstig, ein Attribut "power" anzulegen und den gleichen Wert in ein Attribut "state" zu schreiben. Deswegen schien das Vorgeben eines "stateFormat" beim define eine ganz nette Idee.
FHEM-SVN auf MacMini OSX 10.7.5

FS20,FHT,HMS,CUL_WS,CUL_HM,KS300,HUE,FB_DECT

FHEMobile: www.fhemobile.de

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17227
  • s/fhem\.cfg/configDB/g
Antw:Verständnisfrage: "state","STATE"
« Antwort #9 am: 10 März 2014, 10:32:03 »
Ich finde den Messwert in "power" auf jeden Fall richtig aufgehoben. Warum willst Du den zusätzlich noch in STATE haben und das dem User auch noch vorschreiben wollen? Der User hat jederzeit die Möglichkeit, den Wert dort sichtbar zu machen, wenn er es möchte.

Einen entsprechenden Hinweis über die Vorgehensweise kannst Du jederzeit in die commandref packen.
-----------------------
Unaufgeforderte Anfragen per email werden von mir nicht beantwortet. Dafür ist das Forum da.
-----------------------
Lesen gefährdet die Unwissenheit!

Offline Dr. Boris Neubert

  • Global Moderator
  • Hero Member
  • ****
  • Beiträge: 4878
  • Are we just self-replicating DNA?
Antw:Verständnisfrage: "state","STATE"
« Antwort #10 am: 10 März 2014, 10:34:54 »
Der Modulautor schlaegt in state vor, was angezeigt werden soll.
fhem.pl kopiert state nach STATE, falls kein stateFormat existiert, sonst wird stateFormat genomen
Der Benutzer (und nicht der Modulautor) setzt stateFromat, falls er mit dem Vorschlag des Modulautors nicht einverstanden ist.
Angezeigt wird STATE (von FHEMWEB und list, usw).

[OT]
Ist das schon irgendwo im fhemwiki.de dokumentiert? Falls nein, wer macht's?

Hatten wir nicht mal in Vorforumszeiten die Regel, daß in Entwicklungssachen der Fragesteller die Antwort dokumentiert?

Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

Offline rudolfkoenig

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 24242
Antw:Verständnisfrage: "state","STATE"
« Antwort #11 am: 10 März 2014, 10:49:02 »
Zitat
Hatten wir nicht mal in Vorforumszeiten die Regel, daß in Entwicklungssachen der Fragesteller die Antwort dokumentiert?

Toller Vorschlag, bin dabei :)

Offline akw

  • Developer
  • Full Member
  • ****
  • Beiträge: 200
    • Bytefeed
Antw:Verständnisfrage: "state","STATE"
« Antwort #12 am: 10 März 2014, 21:36:49 »
hmmmph. Also gut, ich mach's  ;)

http://www.fhemwiki.de/wiki/DevelopmentState
« Letzte Änderung: 10 März 2014, 21:57:46 von akw »
FHEM-SVN auf MacMini OSX 10.7.5

FS20,FHT,HMS,CUL_WS,CUL_HM,KS300,HUE,FB_DECT

FHEMobile: www.fhemobile.de
Gefällt mir Gefällt mir x 1 Liste anzeigen

 

decade-submarginal