Vitoconnect - Verbesserte Version

Begonnen von stefanru, 14 Dezember 2024, 23:32:17

Vorheriges Thema - Nächstes Thema

Felix_86

Hallo zusammen,

nach einigem Rumprobieren und Überstrapazieren der Viessmann-API (freie Token für diesen Monat aufgebraucht) habe ich herausgefunden, dass der WW-Zirkulationspumpe_Zeitplan mit den Angaben "{"mon":[{"start":"06:00","end":"08:00","mode":"on","position":0}]}" gesetzt werden kann.

Die von der API ausgelesenen Werte und Darstellung im Reading haben ein anderes Format, als wie der Zeitplan mit dem set-Befehl zu setzen ist.

Um den "WW-Zirkulationspumpe_Zeitplan" auf null zu setzen und alle Pläne zu löschen ist nicht "[]" sondern "{}" zu verwenden.
Grüße von Felix

Pi3, Raspbian 13, FHEM 6.4, ca 330 Device
SIGNALduino (TCM, TX, IT, SD_GT), CUL (EM, FS20, HMS), JeeLink (PCA301), mailcheck, echodevice, alexa, TelegramBot, Weather (OWM), DWD_OpenData, FRITZBOX, TabletUI, Calendar, Abfall, Vitoconnect, LGTV_WebOS, Nina, MQTT2

stefanru

#496
Hi Felix,

oh super, das ist sehr hilfreich.

Kannst du mir mal Beispiele für funktionierende strings zum setzen geben.
Ich schau dann mal was ich machen kann.
Ich denke ich gebe es so zurück wie es mir die API liefert, aber da würde ich mir was einfallen lassen, dass man es dann auch direkt setzen kann.

Auch schaue ich mal, nach einem Bad Request wegen falscher Parameter sollte er nicht 20 mal probieren, das ist ein Bug den ich fixen sollte.

Ah noch was hast du raw entries und damit den neuen Setter verwendet?
Ich habe es mir mal angeschaut und mit dem neuen Setter sollte es gehen.
Ich denke ich habe da etwas zu viel optimiert beim Einlesen und der alte Setter funktioniert so nicht mehr.
Ich wüsste auch was ich ändern könnte aber warte auf deine Antwort.

Also wäre super wenn du mir noch ein paar exakte Daten für die Eingaben die funktionieren liefern könntest, dann setze ich etwas um.

Ich habe mal ne untested Version gebaut. Wenn du willst kannst du sie probieren.
Wenn nicht teste ich demnächst mal selbst.


Danke und Gruß,
Stefan
FHEM: Raspberry PI 400+SSD Viessmann, Fronius, BYD, Wunderground, Max, Shelly, ESPEasy, FHEMPY,...  Docker + Portainer: Immich, Authelia, Caddy, Gerbera, Paperless NGX
Maintainer: Vitoconnect
GIT: https://github.com/StefanRu1
Kaffeekasse: https://www.paypal.me/stefanru01

Felix_86

Hallo Stefan,

was ich für meine Zwecke (Einschalten der Zirkulationspumpe nach Aufheizen des WW-Speichers) brauche und was ich wie setzen konnte habe ich oben gepostet.
In der App (und daher vermutlich auch über den set-Befehl) kann man bis zu 4 Einträge pro Tag mit Laufzeiten der Zirkulationspumpe eingeben. Dies habe ich jedoch über FHEM nicht probiert, da für meinen Zweck (bisher) nicht relevant.

Funktionieren sollte für das Setzen einer Laufzeit der Zirkulationspumpe alles, was folgendem Aufbau entspricht:

{"<englischer Wochentag mit 3 Buchstaben>":[{"start":"<00 bis 23>:<00 bis 50 in 10 Minuten Schritten>","end":"<00 bis 24>:<10 bis 00 in 10 Minuten Schritten>","mode":"on","position":<0 bis 3>}]}
Das heißt und von mir bereits erfolgreich gesetzt:

{"mon":[{"start":"06:00","end":"08:00","mode":"on","position":0}]}
{"tue":[{"start":"19:50","end":"20:00","mode":"on","position":0}]}
{"tue":[{"start":"21:30","end":"21:40,"mode":"on","position":0}]}
{"wed":[{"start":"13:20","end":"13:30,"mode":"on","position":0}]}
{"thu":[{"start":"14:30","end":"14:40,"mode":"on","position":0}]}

Grade noch getestet, den "WW-Zeitplan" kann man mit dem gleichen Parameteraufbau setzen und aktivieren.

Hilft das?
Grüße von Felix

Pi3, Raspbian 13, FHEM 6.4, ca 330 Device
SIGNALduino (TCM, TX, IT, SD_GT), CUL (EM, FS20, HMS), JeeLink (PCA301), mailcheck, echodevice, alexa, TelegramBot, Weather (OWM), DWD_OpenData, FRITZBOX, TabletUI, Calendar, Abfall, Vitoconnect, LGTV_WebOS, Nina, MQTT2

stefanru

Hi Felix, ja danke für die Infos.
Ich habe keine Zirkulationspumpe, aber WW Zeiten.
Da werde ich das mal probiern.
Ich denke es liegt nur an einer Umformatierung die ich durchführe und weglassen sollte.

Wichtig für mich wäre noch, nutzt du RAW Readings oder standard Mapping?
Ich denke bei RAW sollte es sogar jetzt schon gehen.
Da ich da aber überkompliziert programiert habe und es sich auf den standard Setter auswikrt würde ich es fixen.
Also wie heißt dein Reading oder Setter für WW?

Ich werde dann nen Fix machen und bei mir mit WW testen.

Danke und Gruß,
Stefan
FHEM: Raspberry PI 400+SSD Viessmann, Fronius, BYD, Wunderground, Max, Shelly, ESPEasy, FHEMPY,...  Docker + Portainer: Immich, Authelia, Caddy, Gerbera, Paperless NGX
Maintainer: Vitoconnect
GIT: https://github.com/StefanRu1
Kaffeekasse: https://www.paypal.me/stefanru01