thovid / ioBroker.viessmannapi

ioBroker Adapter to access the Viessmann API for Viessmann central heating systems
MIT License
40 stars 5 forks source link

Viessmann will prevent use of api for third party sollution #51

Open mk176 opened 4 years ago

mk176 commented 4 years ago

Got this email today from viessmann, i hope you are already aware of the problem...

Dear {{ insert first_name 'default=default' }} {{ insert last_name 'default=default' }},   an evaluation has shown that you have used the web interface to Viessmann IoT Services very frequently in recent days.   On the one hand, we are delighted to know you are taking a closer look at our products and solutions. Especially since you have (apparently) found a solution for your specific use case without a description or our support from our side. On the other hand, it challenges us to check and channel the method and frequency of requests to our IoT Services in order to keep those stable and available for all our users.   That’s why we have now taken the decision to limit access to our API. From the coming week on, a threshold will become active that prevents from unauthorized use of the API. This will affect all third-party solutions, which can thereby no longer be used.   We are aware that the demand for APIs to our technologies for integration into other solutions and third-party systems is increasing. To provide you with an opportunity for this, we will launch a portal in the next two months for all developers to get access to our API. With the Viessmann Developer Portal, we intend to open ourselves up, release a documentation of the interface and co-develop new solutions together with you. In addition, we are planning to provide you with useful information around our heating systems you need for your development and to offer you a first-level support concerning our APIs.   As one of the users who is already working with our API, we would like to invite you to an early access to the Developer Portal. If you are interested, please fill out this short form. The access to the pre-version of the Portal will be sent to you within the next weeks.   We hope you understand the decision that we have to take. If you are interested to support us, on further development on the API and to explore new possibilities, we are very happy to welcome you to our Developer Portal soon!   In the meantime in case you have any questions, feel free to contact us under developer@viessmann.com.   Thank you for your understanding.   All the best!   Your Viessmann Developer Portal Team

Hamudulu commented 4 years ago

Aaaaaah no way...

thovid commented 4 years ago

Hm, I have not received this mail. I will contact viessmann to see if I can be part of the early access group to get a supported version of this adapter up and running as fast as possible.

Hamudulu commented 4 years ago

That would be perfekt. This adapter works so perfekt and stabil. Das wär so schade um die Arbeit und Funktionen die man mit dem Adapter hat. Ich hoffe sehr für die nächste Heizsaison dass da eine neue Lösung am Start ist.

radierer commented 4 years ago

Das wäre wirklich mehr als schade und es ist zu hoffen, dass Viessmann da schnell tätig wird.

Ich hatte die Mail auch bekommen und hatte es schon im ioBroker-Forum gepostet. Ich bin auch wirklich stinksauer auf Viessmann. Ich war gestern kurz davor, meine Heizung mit ner Brechstange zu nem Haufen Kernschrott zu verwandeln. Alles, aber wirklich alles, was die die letzten 1,5 bis 2 Jahre in Sachen "smarte Anbindung" ihrer Geräte gemacht haben, war eine absolute Vollkatastrophe. Angefangen mit der supertollen ViCare-App, die ein totaler Rückschritt zur vorherigen war bis zur jetzigen Limitierung der API-Schnittstelle. Absolut unverständlich für mich, was da gemacht wird ..

Sorry, dass ich zum eigentlichen Problem nichts beitragen kann, aber ich musste das einfach mal loswerden.

mamoel666 commented 4 years ago

Auch ich habe die Mail bekommen. Vorher durfte ich aber bereits an einer Umfrage teilnehmen, wo ich unter anderem gefragt wurde, was ich bereit wäre monatlich für den API-Service zu bezahlen. Sorry Viessmann, aber das geht mal überhaupt nicht. Wenn ihnen die Serverlast zu groß ist, dann sollen sie eben den lokalen Zugriff über das Vitoconnect 100 freigeben. Das würde fast alle Probleme lösen.

AlexanderSch90 commented 4 years ago

Wahnsinn! Bei mir gehts auch nicht mehr... error connecting: {"status":429}

Gibt es schon einen Sozial-Media-Shit-Storm wo man sich beteiligen kann? Wenn alle Nutzer des Adapters einen kleinen text schreiben hätte das mit Sicherheit eine große Auswirkung!

xdaamg commented 4 years ago

@thovid Could you reduce hit on the viessmann api in order to not get blocked by their server until there is maybe another solution? Some kind of 'safe mode' where could bei defined, updating values once per hour or whatever is allowed at this time or even deactivate updating values. Like this we could send commands to API, which should not end in blocking.

StrathCole commented 4 years ago

Hello @thovid ,

there is now information available from Viessmann. The threshold is 1 request per 5 seconds (or 120 in 10 minutes) but not more than 1450 requests during 24 hours. So maybe the amount of subsequent requests can be lowered by querying multiple values at once.

sky-it commented 4 years ago

Nachdem gestern mein Server abgeschmiert ist, läuft auch bei mir der Adapter nicht mehr, auch ein Login per ViCare klappt nicht mehr. Auf der Webseite musste ich meine Heizung neu registrieren und trotzdem klappt nichts mehr. Das war die letzte Heizung von diesem Hersteller, einfach nicht zu empfehlen.

StrathCole commented 4 years ago

Here is the official statement regarding limits from the viessmann community:

I'm happy to provide you and all other user more concrete information on how the current restriction works: We have a rate limit with sliding window. Whenever the first request arrives, we open a time window and count all request in that window. If the number of requests reach the limitation, we block all incoming user request until the time window ends. Then, with the next user request, a new time window opens. Currently, we have two limits active: 120 calls for a time window of 10 minutes 1450 calls for a time window of 24 hours We see these limitations reasonable, also based on your great explanation concerning cloud based services. So thank you for that! Also, we decided against HATEOAS as it is deprecated and will sooner or later be switched off.

(Source: https://www.viessmann-community.com/t5/Experten-fragen/Q-amp-A-Viessmann-API/qaq-p/127660/comment-id/117660#M117660)

I don't know how much of the current client has to be rewritten to avoid HATEOAS / multiple requests for multiple features. This can only be answered by @thovid but I would be willing to help in development as far as I am able to.

OberfragGER commented 4 years ago

So ein Mist. kein Login via ioBroker mehr möglich! Habe mir morgen schön die Temperatur aufs Handy geben lassen.

Nun brauche ich wohl einen extra externen Sensor. Kann doch echt nicht wahr sein.

stschulze1972 commented 4 years ago

Ich habe mir vor 4 Monaten eine Vitodens 300-W installieren lassen. Mein Installateur sagte mir bei Bestellung, dass ich auf Vitoconnect 100 Funktion haben werden.....nach Installation habe ich das feststellen müssen, dass das neue Modell 2019 diese Funktion nicht mehr hatte.

Ich habe dann die Welle gemacht und mit einem Viessmann Mitarbeiter aus der Entwicklung gesprochen. Der sagte mir, dass man derzeit an einem Modul arbeiten würde, welches den Zugriff auf die Vitodens dann ermöglichen würde. Kosten des Moduls konnte er nicht nennen. Ich habe dem Mitarbeiter deutlich gemacht, dass es nicht sein könne, dass Viessmann den Kunden hier für dumm verkauft. Die Welt geht Richtung smart home und intelligentes Haus und Viessmann schottet seine Systeme ab.

Dann habe ich dieses geniale Plugin gefunden und war erstmal zufrieden gestellt .... DANKE FÜR DIE TOLLE ARBEIT.

Jetzt dreht Viessmann am Rad....ich glaube es nicht.

Ich kann nur sagen, dass man in den Foren und bei Rezessionen darauf hinweisen muss...sonst fallen noch mehr Leute auf den Mist rein.

StrathCole commented 4 years ago

Wir sind gerade in regem Austausch mit einem der Mitarbeiter in der Viessmann Community. Wir (user) gehen davon aus, dass die momentane Implementierung der Limits seitens Viessmann noch nicht korrekt funktioniert und zu viel sperrt. Aktuell bin ich noch guter Hoffnung, dass wir in näherer Zukunft da eine Lösung finden.

thovid commented 4 years ago

Danke für all die Informationen, die ihr hier zusammengetragen habt. Ich werde den Adapter entsprechend der Rate-Limits anpassen.

JayVee2 commented 4 years ago

Also ich komme auch nicht mehr rein. Error 400/429. Ich habe verstanden, dass wenn man das Polling Limit von 60 auf 120s setzt, dann alles wieder passen müsste. Habe den Adapter jertzt 24 Stunden ruhen lassen, aber der Login klappt nicht.

Frage: Hat irgendwer den Adapter am Laufen? Haben die was am Login geändert?

-jayvee

StrathCole commented 4 years ago

@JayVee2 nein, soweit ich es verstehe, funktioniert im Moment die Beschränkung der API nicht korrekt, sodass viel zu häufig und lange geblockt wird. Da wird nur abwarten helfen.

JayVee2 commented 4 years ago

@StrathCole: Danke.

Vielleicht mag jemand eine Nachricht hinterlassen, wenn der Adapter wieder einloggen kann. Dann wüsste man woran man ist. Ich lasse meinen mal weiter deaktiviert und warte...

chhe-01 commented 4 years ago

I have now set up the "poll intervall" up to 600 seconds and restarted the instance. The Viessmannapi connected successfully and I have access to the data. Hope that this works now...

OberfragGER commented 4 years ago

Great. Waited for a day an turned down polling to 600 (seems to be enogh). Everything is green again.

chhe-01 commented 4 years ago

It doesnt work... 10 minutes after restarting the instance with functional connection to ViessmannAPI I get these errors:

6060) ViessmannClient: error fetching features: Request failed with status 429

Seems that it doesnt work :(

steini1987 commented 4 years ago

Please, have a look at the posts of @StrathCole and @thovid above. Currently, there seems to be an internal issue with the restrictions of the Viessmann API which means that increasing the poll limit won't help at the moment. Further on, @thovid already said, that he will change the adapter. So please, give him some time.

Thanks a lot for your effort guys.

Hamudulu commented 4 years ago

With 300s polling it works now (in the moment) ...we will see

StrathCole commented 4 years ago

For me it currently works with 180s polling. I have had 417 requests during the last 11 hours, so this would be about 900-1000 requests in 24h while the limit is 1450. The requests contain some value setting, too, so it is not only because of the polling. I am not sure though, if it would fit for other users, too, to set the polling to 180 or lower.

OberfragGER commented 4 years ago

Stopped working with 600 polling after 18h.

xdaamg commented 4 years ago

I am testing with 900 seconds (15 min.). Seems to work since 24 hours. I deactivated instance for 24 hours.

OberfragGER commented 4 years ago

Seems to work fine again...

JayVee2 commented 4 years ago

21.3.2020: Also ich komme auch wieder rein. Versuche es mit 120 s.

Update 23.3./27.3.2020: keine Probleme mit 120 s.

radierer commented 4 years ago

Hm .. bei mir funktionierts mal, dann wieder nicht. Polling hatte ich bei den Versuchen aber nie unter 300 s. Aktuell gehts mal gerade wieder nicht. ViCare App funktioniert aber gerade ebenfalls nicht.

Ich warte mal, bis thovid den Adapter angepasst hat und hoffe, dass es dann wieder ohne Probleme läuft.

thovid commented 4 years ago

Derzeit läuft es bei mir stabil mit einem Polling-Intervall von 900 Sekunden. Hierzu ein Hinweis: Wenn eine Aktion ausgeführt wird (mittels sendTo), dann wird unabhängig vom Polling-Intervall direkt im Anschluss ein Aufruf an den Server gemacht, um den geänderten Wert abzufragen. D.h. jede Aktion zählt wie zwei Aufrufe.

xdaamg commented 4 years ago

900 Sekunden läuft seit Tagen stabil ohne Unterbrechung. Vielleicht diesen Wert im Adapter als Vorgabe setzen? Nicht jeder liest hier mit.

Hamudulu commented 4 years ago

Bei mir läuft es stabil schon über eine Woche mit 300s

Am 26.03.2020 um 15:49 schrieb xdaamg notifications@github.com:

 900 Sekunden läuft seit Tagen stabil ohne Unterbrechung. Vielleicht diesen Wert im Adapter als Vorgabe setzen? Nicht jeder liest hier mit.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.

radierer commented 4 years ago

Bei mir läufts nicht stabil. Nach ein paar Stunden ist regelmäßig die Verbindung weg und der Adapter gelb. Polling auf 900 sek. und auch keine sendto-Befehle über irgendwelche Skripte. Was mir dabei aufgefallen ist, ist das meine Zugangsdaten dann auch immer in den Adapter-Settings verschwunden sind?! Also ich bin ziemlich ratlos. Hat jemand evtl. noch eine Idee, was ich ändern/nachschauen könnte?

Danke & Gruß

StrathCole commented 4 years ago

@radierer stell die Instanz doch mal auf debug und sieh dir die Log Einträge an.

radierer commented 4 years ago

Nun läufts seit drei Tagen durchgehend ohne Sperre. Was ich noch gemacht habe: ich hatte auf einem Tab noch ein Widget der ViCare App, mit dem man den OneTimeCharge des Warmwassers auslöst. Das hab ich ebenfalls gelöscht. Ob das nun der entscheidene Faktor war, weiß ich auch nicht. Aber zumindest läufts jetzt.

schneiderst commented 4 years ago

Hallo Zusammen, bei mir läuft es seit 5 Tagen mit 300 sek stabil.

Hat jemand eine geringere Einstellung stabil laufen?

JayVee2 commented 4 years ago

120 sec. Siehe oben.

ArrowX77 commented 3 years ago

Wow! I just walked into this thread as I am planning to get my 30 year old gas heating system exchanged. Besides others, I was considering a Viessmann Vitodens 300W as well. Reading this will definately disqualify Viessmann as an option for my purchase. Moving away from prosumers, closing down APIs and barb-wiring around "their" digital assets is for me not acceptable. Some time ago, I was following Viessmanns Digital Transformation Journey on a podcast (https://www.digitalkompakt.de/kompetenzpartner/viessmann/) and somehow felt already while listening that their direction is not positive for customers who want to integrate the heating system into their smart home solutions. Very sad.

grothauu commented 3 years ago

Meine 25 Jahre alte Viessmann wird demnächst gegen eine neue Anlage getauscht. Viessmann-Installteurbetriebe habe ich gar nicht um ein Angebot gebeten. Wer den Geist der Zeit hier nicht erkennt, verschwindet eben nach und nach vom Markt.