Da mir das Ereignisprotokoll mit das Wichtigste am ViGuide war, habe ich mithilfe AI ein Open-Source-Tool entwickelt, das die Events über die Viessmann Developer API wieder zugänglich macht.
ViEventLog ist ein lokaler Webserver mit Timeline-Visualisierung, der zeigt wann eure Anlage heizt, Warmwasser bereitet und wie häufig sie taktet - Informationen die Viessmann
selbst nicht anzeigt.
Installation: Binary herunterladen, entpacken, starten und im Browser http://localhost:5000 öffnen.
https://github.com/mschneider82/vieventlog
Hinweis: Ihr benötigt eine eigene Client-ID aus dem Viessmann Developer Portal. Anleitung steht in der README.
Feedback und Bugs bitte über die GitHub Issues melden.
viel spaß euch, ich freu mich auf eure Testberichte! Man kann auch mehrere Accounts hinzufügen (da Viessman ein 2 Anlagen limit pro account hat), endlich kann ich damit alle event logs meiner 3 anlagen sehen ohne immer den viguide zugang wechseln zu müssen.
NEU: jetzt auch mit DASHBOARD und Einstellmöglichkeiten um div. settings zu ändern!
Bei mir geht es aktuell noch. Vielleicht einfach morgen wieder probieren. Wenn es dann wieder geht, liegt es vielleicht nur am Tageslimit...
ViEventView ist aktuell ein tolles Tool., informativ, schlank, schnell und intuitiv zu bedienen. Wir müssen aber aufpassen, dass das Ding nicht überladen wird. Im Ursprung sollte es ja die Wärmepumpe abbilden. Wenn jetzt so nach und nach die gesamte Produktpalette von Viessmann da rein soll, verliert es seinen Charme.
Es wird auch interessant, wie Viessmann dann mit den APIs umgeht. Wenn da zu viel Traffic rumschwirrt, dann könnte es passieren, dass da in irgend einer Form ein Riegel vorgeschoben wird oder es sogar kostenpflichtig wird. Bei ViGuide war es ja nicht anders, anfänglich waren es ein paar Leute, bis es Viessmann irgendwann zu viele geworden sind, mit ständigen Forderungen nach mehr Funktionalität, usw. Also sollten wir pragmatisch bleiben.
Gruß Peter
@Peter14089 Die Viessmann-API ist ja bereits ratenbegrenzt. In der „Basic“-Stufe (kostenlos) ihrer API-Tarife werden Sie für 24 Stunden gesperrt, wenn Sie eine der folgenden Grenzen überschreiten:
120 Aufrufe innerhalb eines Zeitfensters von 10 Minuten
1450 Aufrufe innerhalb eines Zeitfensters von 24 Stunden
Bei den kostenpflichtigen API-Tarifen erhöht sich diese Grenze auf 3000 Aufrufe innerhalb von 24 Stunden.
Man sollte also ViEventLog nicht so oft Refreshen, sonst ist man schnell beim Rate-Limit für den Tag.
Gerade, wenn man auch Integrationen von ioBroker oder Home-Assistant nutzt, welche die API Calls zusätzlich belassten.
Ich selber habe mittlerweile ca. 2100 API Transactions pro Tag und nutze dabei ViEventLog nur mal ab und zu.
Die HA-Integration läuft aber permanent 24h.
Also das Limit kommt schneller als man denkt 😉
Und weil Viessmann vermutlich den "Run" auf Ihre API unterbinden will, gibt es eben dieses Rate-Limit.
Also lieber perspektivisch serielle-Schnitstelle (Opto-Link-Splitter), Modus (open3e) und Zigbee Devices (ViLocal) lokal abfragen.
(Auch bei mir geplant für diesen Winter 😉)
Aber langfristig muss sich Viessmann gedanken machen, ob Sie Ihre Schnittstellen nicht offener gestallten wollen für 3rd Party-Integrationen und generelle Zugänglichkeit‼️
Es kann nicht sein, dass man für Premium Anlagen eines Premium Herstellers zu Premium Preisen, Github Bastelprojekte braucht, um die Anlagen vernüftig Bedienen und vorallem langzeit Monitoren zu können‼️
Der ein oder andere geneigte User ist ja sicherlich bereit Nächte damit zu verbringen Bastellösungen zu Implementieren, (mich eingeschlossen 😉) aber die Masse ist es jedenfalls nicht!
Die wollen Funktionalität und Features für Ihr Geld.
Aber leider ist Viessmann nicht alleine mit dem Problem. Bei anderen Hersteller sieht es mitunter noch schlimmer aus. 🙈
Kommt also gerne mal in die nächsten Classrooms und stellt da ein paar Fragen diesbzgl. 😉
@ckoeber
Mir scheint die Ausführungen von @Peter14089 sind nicht so richtig rüber gekommen.
Wenn alle mit homeassistant oder via vieventlog im Minutentakt den Viessmann-Server abfragen, wird das denen einfach zuviel.
Das aktuelle Rate-Limit mit einer Abfrage pro Minute ist schon recht großzügig.
Muss es denn ein Abfragetakt von einer Minute sein. Mir reichen durchaus 2 bis 5 Minuten. Ich steuere den Abfrageryhtmus über den Shelly (misst die Leistung). Nur wenn was relevantes passiert wird im 1 oder 2 Minutentakt abgefragt, sonst tun es auch 5. So schnell ändern sich die Temperaturen nicht.
Ja, perspektivisch anders abfragen.
Was könnte den für die Vitocal 250 taugen?
Insbesondere dann, wenn schon ein System mit php-läuft. Zusätzlich noch mit Phyton (und ggf einen raspi) anfangen, da fehlt dann doch die Motivation.
Gruß rudi
@Rudi_ die Home Assistant Viessmann ViCare integration regelt das schon dynamisch. Je mehr Devices (Sensoren / Entitäten) in der API abgefragt werden, desto mehr erhöht sich das Abfrage-Intervall.
Aktuell wohl noch bei 1450 API Calls pro Tag aber Hafenstrand wollte noch an einem 1450 / 3000 API call switch arbeiten. 👍🏻
Aktuell wird bei mir im 30 Minuten Intervall die API abgefragt
Ist ja schön und gut, HomeAssistant, IoBroker, Open3E und was da sonst noch immer wieder auf den Tisch kommt, sind sicher tolle Sachen. Wer Spaß daran hat und es quasi als Hobby betreibt, dem möchte ich es sicher nicht madig machen. Aber wer braucht es wirklich? Ich schalte meine Beleuchtung ganz einfach am Lichtschalter ein und aus, meine Rollos lasse ich überwiegend von Hand rauf und runter, Meinen Rasen sprenge ich bei Bedarf mit dem Schlauch, die Waschmaschine wird von Hand bedient, die Heizkörper werden nach Bedarf mit dem Thermostatventil eingestell, Geofencing ist sowieso nur ein Werbegag, usw.
Was ich brauche ist ganz einfach ein Überblick über meine Heizung. Und wenn ich irgendwelche 'exotischen' Parameter einstellen will, dann gehe ich halt direkt an die Anlage. Das muss nicht alles vom PC erfolgen. Insofern ist ViEventView genau das, was ich brauche. Ganz einfach zu installieren, ohne Bastelei und Raketenwissenschaft. Da müssen nicht alle anderen Viessmannprodukte mit rein. Ich habe etwas Angst, dass das ganze Ding nach und nach unnötig aufgebläht wird.
Und wir dürfen Matthias auch nicht mit immer wieder neuen Wünschen zuschütten. Er hat sowieso allergrößtes Lob verdient.
Gruß Peter
@ckoeber
Da ich nur die Vitocal abfrage, habe ich nur ein Device, richtig?
Die Sensoren darin, also Temperaturfühler usw., zählen nicht extra.
Jedes steuerbare Thermostatventil zählt dann extra.
Wenn das Thema Leistungsspitze/Vollastbetrieb nach Verdichteranlauf bei der Vitocal 250 und Heizkreispuffer mit SW 2509 / 2532 nicht wäre, würde ich mich nicht so intensiv damit beschäftigen.
Zudem mag ich die Cloud-Dienste nur sehr ungern, denn auf lange Sicht droht immer eine Abschaltung.
Das ist landauf/landab für viele Dienste mittlerweile die Regel geworden.
Da bin ich ganz bei Peter, den ganzen "Firlefanz" brauch ich sonst nicht.
Ab und zu den Vieventlog passt um mal grade was nachzusehen und soweit ist der Weg in den Keller nicht..
Gruß rudi
@Rudi_ nein, jede Abfrage eines API Datenpunktes verursacht eine API Transactions.
Also hängt es davon ab, wie viele Datenpunkte von deiner Integration / Abfragetool abgegrast werden und wie oft.
Ich habe ja nicht 2100+ "Devices" bei mir, die ich Abfrage. Ich habe eine VT 200 (WO1C) Regelung in einer Vitocal 333-G und ganz viel Smart Climate Kram, wo ich aber auch echt zufrieden mit bin, da alles noch in ViGuide eingerichtet 😁
Ich darf da in Zukunft nur nichts mehr Ändern wollen, da die ViCareApp ja gefühlt immer im Wartungsmodus ist und es über API keine Rechte gibt alles zu editieren 🙈.
Ich hoffe nur die Viessmänner schalten das VITODATA100 Portal nicht auch mal irgendwann ab. Da kann man sonst bald gar nichts mehr vom Sofa auch machen und muss immer in den Keller rennen und ITler sind ja bekanntlich faul 😂
@ckoeber Wie funktioniert dann vieventlog?
Da wird eine Abfrage gemachtbei der im json grob einigen hundert Daten enthalten sind,
sieht für mich aus wie gib alles was du zu dem device hast.
Deiner Ausführung zu folge müsste nach ca. 20 Abfragen dass Kontingent erschöpft sein.
Dem ist aber nicht so.
Sorry, ich bin gerade etwas überfordert.
Und nach über 40 Jahren in der IT-Welt zu alt um den Weg in den Keller zu scheuen.
Gruß rudi
Da ich ja die VM-APIs ständig in HomeAssistant laufen habe, und nicht mein Kontingent zu sehr stressen mag, benutze ich ViEventLog so, dass ich jedesmal zuerst den Server starte, mir dann die Daten im Browser ansehe, und danach den Server einfach wieder stoppe. Somit habe ich vermutlich kaum mehr Traffic als sonst. 🤓 Ach ja... und sonst bin ich froh dass alle anderen Anlagenteile nicht von Viessmann sind... 🙊
@Rudi_ dem ist auch so. Je nachdem welches API Feature zur Verfügung steht und du eine Abfrage HTTP GET/POST machst, ist eine API Transaction.
Du kannst die vieventlog ja mal 20x die Werte Abfragen lassen und unter API Transactions sehen wie dein Kontingent schmilst. Und umso mehr Werte in die vieventlog zur Abfrage integriert werden, umso schneller ist das API Rate-Limit erreicht.
Die vieventlog Seite also den ganzen Tag in einem Dashboard offen zu lassen ist also keine Gute Idee, sofern sie noch Auto Refresh aktiv hat.
Sollte das API Rate-Limit für den Tag erreicht werden, wird es am kommenden Tag um 2 Uhr früh wieder für den Tag freigeschalten.
(API rate limit development portal "***" daily limit exceeded. Max 3000 calls in timewindow. Limit reset at 2025-xx-xxT00:00:03.956000.)
Ich schaue erst ob der Shelly etwas zeigt ob die Wärmepimpe arbeitet, dann wird der API-Abfragetakt auf 1-2 Minuten von 5 verringert. Da bleibt für die gelegtliche Nutzung des Dashboard von vieventlog genug über.
Die PV ist ein SMA.
Gruß rudi
Ich kann eure Einwände mit den Funktionen gut nachvollziehen. Ich habe die durchaus schicke aber leider Displayfreie Invisible Anlage. Bedeutet für mich ohne ViCare App oder ViGuide/ViEventLog kann ich außer an/aus über den Sicherungskasten rein gar nichts an meiner WP oder Lüftungsanlage steuern oder sehen. Wenn ich ein Display im Keller hätte wäre mir die Abschaltung von ViGuide vermutlich relativ egal, aber ich komme in Zukunft wirklich ausschließlich an die Daten die ViCare mir anzeigt. Mehr gibt es für mich nur über ViEventLog oder andere lokal mit der Anlage verbundene Lösungen! Deshalb bin ich auch stark daran interessiert weiterhin an Daten und Funktionen ran zu kommen, die aktuell in ViGuide enthalten sind.
@Rudi_ ich antworte mal hier. Im private Messenger habe ich wieder ein Limit erreicht und kann die Nachricht aktuell nicht weg senden.
Ich weiß jetzt wie es Matthias (mschneider82) macht.
Er holt über
GET /api/features?installationId=XXX&gatewaySerial=YYY&deviceId=0&refresh=true
alle Feature-Daten für das vieventlog Dashboard und damit bekommt er alle API Features welche von deiner Regelung unterstützt werden. Somit auch nur ein API call / transaction.
Leider sind da die Smart Climate Räume nicht mit drin, die werden über das RoomControl-1 Device abgefragt und brauchen daher weitere API calls.
Jegliche Gerätesteuerung verbraucht dann einen weiteren API call:
POST /api/dhw/mode/set - Betriebsart ändern
POST /api/dhw/temperature/set - Soll-Temperatur setzen
POST /api/dhw/hysteresis/set - Hysterese Ein/Aus setzen
POST /api/dhw/oneTimeCharge/activate - Einmalige Warmwassererwärmung starten
POST /api/heating/mode/set - Betriebsart ändern
POST /api/heating/curve/set - Heizkurve anpassen
POST /api/heating/supplyTempMax/set - Vorlauftemperaturbegrenzung setzen
Dann ist es ja doch sparsamer als ich erst dachte 😉