Autor Thema: Keine Dropdown Liste bei webcmd  (Gelesen 9554 mal)

Offline Adam

  • Developer
  • Full Member
  • ****
  • Beiträge: 376
Keine Dropdown Liste bei webcmd
« am: 12 Dezember 2013, 23:01:11 »
Hallo ich habe folgendes Problem:

Ich habe ein eigenes Modul für das Auslesen meiner Viessmann Heizung geschrieben.

Habe nun das folgende Device konfiguriert:

define Heizung VIESSMANN 180
attr Heizung event-on-change-reading .*
attr Heizung setList state:ABSCHALT,HWW,WW
attr Heizung webCmd state:


Nun wird mir leider nicht wie bei meinen Dummy Devices eine Dropdown-Liste mit den Werten hinter state angezeigt,
sondern nur das Wort "state".

Hatte schon mal jemand ähnliche Probleme mit anderen Devices und webCmd?
Muss ich vielleicht in meinem Modul noch mehr implementieren?

Bisher habe ich wie in 98_dummy.pm die SetList als Attribut mit hinzugenommen.

Für Hinweise wäre ich Super dankbar.

Adam

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17003
Keine Dropdown Liste bei webcmd
« Antwort #1 am: 12 Dezember 2013, 23:47:28 »
es reicht nicht wenn du nur das attribut einbaus. du musst es auch verwenden. für ein modul das eine feste funktionalität bereit stellt ist es aber eigentlich auch nicht sinnvoll das über ein setList attribut konfigurierbar zu machen.

du musst in deinem modul die antwort auf ein 'set <dein device> ?' implementieren. darüber findet das web frontend raus welche kommandos mit welchen parametern ein device versteht. versuch doch einfach mal was deine dummys oder andere devices darauf antworten.

gruss
  andre
« Letzte Änderung: 13 Dezember 2013, 09:36:12 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 Adam

  • Developer
  • Full Member
  • ****
  • Beiträge: 376
Antw:Keine Dropdown Liste bei webcmd
« Antwort #2 am: 13 Dezember 2013, 07:38:26 »
hi, danke schon mal, aber:

ich habe eine VIESSMANN_Set($@) implementiert. Damit kann ich dann auch in der Eingabezeile in FHEM
z.B. set Heizung HWW  ausführen und mein Device wird entsprechend gesetzt (und natürlich an die Heiung weitergegeben ;-) ).

Ich hätte jedoch gerne eine Dropdown Liste, die ich dann auf meinem Tablet nur noch anklicken muss
und nicht alles eingeben muss.

Ich habe versucht alles aus Dummy zu übernehmen, was mir relevant vorkam. (der code von Dummy ist ja sehr übersichtlich)
d.h.:

in VIESSMANN_Initialize($):   $hash->{AttrList}  = "disable:0,1 setList ". $readingFnAttributes;
in VIESSMANN_Set($@) :   my $setList = AttrVal($pn, "setList", " ");


Offline rudolfkoenig

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 17420
Antw:Keine Dropdown Liste bei webcmd
« Antwort #3 am: 13 Dezember 2013, 08:37:56 »
Bitte die Antwort von justme1968 genau lesen.

dummy ist nicht das ideale Modul zum kopieren.

Offline Adam

  • Developer
  • Full Member
  • ****
  • Beiträge: 376
Antw:Keine Dropdown Liste bei webcmd
« Antwort #4 am: 13 Dezember 2013, 09:15:41 »
Danke, hätte erst nach dem ersten Kaffee antworten sollen  ;)
Werde mein Glück heute Abend einmal versuchen!

Offline Franz Tenbrock

  • Hero Member
  • *****
  • Beiträge: 1306
  • trotz 1000 Beiträgen immer noch Anfänger :-(
Antw:Keine Dropdown Liste bei webcmd
« Antwort #5 am: 13 Dezember 2013, 09:55:34 »
Hallo, kannst du dann dein Ergebniss hier posten, würde mich für was anders interessieren
cubi3, Cul 868, ESA2000WZ, EM1000GZ,  FS20, dashboard, 1-Wire, Max Thermos, Max Wandthermo, Max Lan, Fritzbox callmonitor, , nanocul, HM Led16, HM Bewegungsmelder, HM Schalter, RPi, banana, ESP8266, DoorPi

Offline Adam

  • Developer
  • Full Member
  • ****
  • Beiträge: 376
Antw:Keine Dropdown Liste bei webcmd
« Antwort #6 am: 13 Dezember 2013, 17:48:43 »
Also meine Lösung sieht nun wie folgt aus (nachdem ich das ? aus dem post von justme1968 richtig interpretiert habe ;-) ):

in VIESSMANN_Initialize($):   

$hash->{AttrList}  = "disable:0,1 setList ". $readingFnAttributes;

in VIESSMANN_Set($@) :   

my $setList = AttrVal($pn, "setList", " ");
return "Unknown argument ?, choose one of $setList" if( $arg eq "?");

und als Attribute sind dann gesetzt:

setList state:AUS,HWW,WW,P-ON,P-OFF,S-ON,S-OFF
webCmd state:

(Ich habe es nicht geschafft aus dem Modul heraus eine Liste vorzugeben, die dann ohne setList ein dropdown anzeigt.
Nur in der detail Ansicht des Devices.)

Ich kann aber mit dieser Lösung leben!


Offline Adam

  • Developer
  • Full Member
  • ****
  • Beiträge: 376
Antw:Keine Dropdown Liste bei webcmd
« Antwort #7 am: 13 Dezember 2013, 18:51:25 »
achja und Danke an Andre und Rudolf  ;D

Offline kvo1

  • Hero Member
  • *****
  • Beiträge: 1456
  • FHEMonaut
Antw:Keine Dropdown Liste bei webcmd
« Antwort #8 am: 13 Januar 2014, 13:02:12 »
ein gutes Beispiel, bin auch gerade an ähnlichem Thema dran.... muß ich mal testen Danke!

RPi1: mit CUL: HM-CC-RT-DN,HM-ES-PMSw1-Pl,HM-LC-BL1-FM,HM-LC-Bl1PBU-FM,HM-LC-SW1-PL2,HM-SCI-3-FM,HM-SEC-SC-2,KFM-Sensor
RPi2: Viessmann(optolink) mit 99_VCONTROL.pm,
Cubietruck: Wheezy / Apache / Owncloud
Cubietruck: Armbian(Jessie) / fhem 5.7 / LMS 7.9
RPi3: (Test) mit 7" Touch  &  HM-MOD-RPI-PCB

Offline cbvo

  • New Member
  • *
  • Beiträge: 42
Antw:Keine Dropdown Liste bei webcmd
« Antwort #9 am: 16 Januar 2014, 13:10:42 »
Hallo,
Wo wird das genau eingetragen in den 99_utils.pm?
in VIESSMANN_Initialize($):   

$hash->{AttrList}  = "disable:0,1 setList ". $readingFnAttributes;

in VIESSMANN_Set($@) :   

my $setList = AttrVal($pn, "setList", " ");
return "Unknown argument ?, choose one of $setList" if( $arg eq "?");

und als Attribute sind dann gesetzt:

setList state:AUS,HWW,WW,P-ON,P-OFF,S-ON,S-OFF
webCmd state:

Danke schön

Benni
RaspPi
Addon Board 868 Mhz, IT, VUplus solo²
Fritzbox 7390
Onewire Temp Fühler

Offline Adam

  • Developer
  • Full Member
  • ****
  • Beiträge: 376
Antw:Keine Dropdown Liste bei webcmd
« Antwort #10 am: 16 Januar 2014, 13:32:10 »
Ja also das muss in das Modul rein, dass Dein Device abbildet.
Bei mir war es ein selbst geschriebenes Modul mit dem Namen 99_VIESSMANN.pm

Intern "muss" es ja dann Routinen geben die

<modulname>_Initialize($) oder  <modulname>_Set($@) heissen

Das Attribut setList und webCmd wird dann in deiner cfg konfiguriert oder über FHEMWEB!

Hoffe das hilft weiter.

Adam

Offline Adam

  • Developer
  • Full Member
  • ****
  • Beiträge: 376
Antw:Keine Dropdown Liste bei webcmd
« Antwort #11 am: 05 Februar 2014, 12:03:47 »
Also für ein Dummy geht ja eigentlich schon so, ohne in einem eigenen Modul was anzupassen:

So müsste es eigentlich gehen:

define test_dummy dummy
attr test_dummy setList state:wert1,wert2,wert3
attr test_dummy webcmd state

Gruß
Adam

Offline Rantanplan

  • New Member
  • *
  • Beiträge: 35
Antw:Keine Dropdown Liste bei webcmd
« Antwort #12 am: 05 Februar 2014, 12:07:38 »
Also für ein Dummy geht ja eigentlich schon so, ohne in einem eigenen Modul was anzupassen:

So müsste es eigentlich gehen:

define test_dummy dummy
attr test_dummy setList state:wert1,wert2,wert3
attr test_dummy webcmd state

Gruß
Adam

Sorry, ich hatte es Gestern versucht und es ging nicht, gerade zum Zeitvertreib nochmals eingecheckt und es ging....  ;)
danke!

Offline stevestrong

  • New Member
  • *
  • Beiträge: 44
Antw:Keine Dropdown Liste bei webcmd
« Antwort #13 am: 14 Februar 2014, 14:46:25 »
hi leute,

ich wäre auch stark interessiert in einem modul für Viessmann-heizung, ich wollte gerade auch sowas basteln :)

@adam, könntest du vielleicht dein modul hier posten oder mir per pm schicken?

danke
steve.
FHEM 5.5 auf FB-7240
Vitotronic 200 (WO1B) <-> Optolink (self-made) <-> ATtiny (2xUART, +Volkszähler) <-> UART_2_WiFi (HLK-RM04) <-> Fritzy (telnet)
todo: Volkszähler

Offline Adam

  • Developer
  • Full Member
  • ****
  • Beiträge: 376
Antw:Keine Dropdown Liste bei webcmd
« Antwort #14 am: 14 Februar 2014, 15:43:21 »
Hallo Steve ,

Hier habe ich mal mein altes Modul gepostet:
http://forum.fhem.de/index.php?topic=11874.new;topicseen#new

Habe aber gerade ein neues Modul geschrieben, dass ohne vcontrol und vclient direkt auf der seriellen Schnittstelle
meine Heizung ausliest. Meine Heizungsteuerung ist vom Typ Vitotronic 200 KW1.
Ich teste es gerade. Und wenn es stabil läuft werde ich es hier im forum Posten.

Diese Lösung ist tausendmal besser, da sie vernünftig in fhem integriert ist und auf Windows und Linux laufen sollte.
Mein altes Modul wird ohne Anpassung nicht auf Linux laufen.

Also noch ein bisschen Geduld ;-)
Adam

Offline stevestrong

  • New Member
  • *
  • Beiträge: 44
Antw:Keine Dropdown Liste bei webcmd
« Antwort #15 am: 14 Februar 2014, 16:45:11 »
Zitat
Diese Lösung ist tausendmal besser, da sie vernünftig in fhem integriert ist ...

JAAAA, genau das ist was ich auch brauche!
na super, dann warte ich noch a bissl :)
ich werde später das modul doch ein wenig umbauen müssen da ich mein Vitocal über ein WiFi<->UART ansprechen möchte.
aber das wird schon gehen, hoffentlich :o)
steve
« Letzte Änderung: 14 Februar 2014, 20:52:20 von stevestrong »
FHEM 5.5 auf FB-7240
Vitotronic 200 (WO1B) <-> Optolink (self-made) <-> ATtiny (2xUART, +Volkszähler) <-> UART_2_WiFi (HLK-RM04) <-> Fritzy (telnet)
todo: Volkszähler

Offline Adam

  • Developer
  • Full Member
  • ****
  • Beiträge: 376
Antw:Keine Dropdown Liste bei webcmd
« Antwort #16 am: 15 Februar 2014, 18:19:23 »
nach diversen Tests habe ich also mein neues Modul für meine Viessmann Heizung mal bereit gestellt:

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

Gruß
Adam