[Modul] Viessmann VitoConnect

Wenn ich die URL einfach mal in den Browser eingebe, kommt das:

Notice: Undefined index: code in C:\ProgramData\Symcon\modules.store\de.paresy.viessmann\VitoConnect\module.php on line 173 invalid-token-request

Uff, da müssen dann doch die Spezialisten ran. Sorry.

Kein Problem, Trotzdem danke :slight_smile:

Scheinbar hat Viessman wieder was neues eingeführt. Nur leider nicht den Anlagendruck… never ending story.
image
Dürfte aber nicht so wichtig sein.

Ich kann zumindest eine Meldung davon bei mir sehen. Der Rest scheint aber zu funktionieren.

paresy

Ja, funktioniert alles. Ist mir nur aufgefallen.

Hallo,
nachdem irgendwie mal das UpdateAccessToken einen Tag lang nicht funktioniert hat habe ich mal das Debug angeschaltet. (Update hat nach Neuregistrierung der Instanz wieder funktioniert)
Aber bei mir kommt auch 2x Unknown Unit:
heating.burners.0.statistics (hours) (Brennerstunden) als hour und
heating.device.time.offset (value) minute
Nutze die aktuelle Beta.

mfg
Thomas

War bei mir gestern auch der Fall. Wie bei dir, nach eine Neuregistrierung weg. Und auch die beiden „Unknown Units“ hab ich. Funktioniert aber trotzdem.

Hallo zusammen,
ich beschäftige mich erst seit ein paar Tagen mit IP-Symcon und stehe momentan etwas auf dem Schlauch. Ich habe einen Server (IP-Symcon als Container in meinem QNAP NAS) aufgesetzt, das VitoConnect aus dem Modul Store integriert, mich bei Viessmann authentifiziert und meine Heizung (Viessmann Vitocall 222S) eingebunden, die ersten Charts erstellt → Alles super beschrieben, lief mehr oder wenig auf Knopfdruck :sweat_smile:. Nun möchte ich noch die elektrischen Leistungswerte auslesen und bin auf diesen Chat gestoßen. Leider habe ich keine richtige Idee, wie ich eure tollen Ideen in den Objektbaum von IP-Symcon einbinden kann. Könnt ihr mir hier vielleicht auf die Sprünge helfen, wie ich da vorgehen kann?
Ganz liebe Grüße und einen guten und gesunden Start in das neue Jahr.
Bernd

Ich habe seit 19:09 einen invalid-token-request und bekomme keine Daten mehr von Viessmann.
Ist von euch auch jemand „invalid“ oder muss ich meine Fehlersuche lokal begrenzen? :joy:

Bei mir seit 16:00. Mal sehen ob das deren Problem ist, oder es Änderungen an der API gab.

paresy

Immerhin funktioniert diesmal noch die ViCare-App :pray:

Ich hab zwar auch öfter sporadisch Aussetzer (zuletzt kurz heute 14:00, aktuell funktioniert alles)
Gruß Thomas

Bei mir auch keine Probleme. Heute mal kurz, aber das kommt immer wieder mal vor. Nach fünf Minuten war alles wieder gut.
Viessmann hatte gröbere Probleme. Deren Empfehlung war, die Anlage neu zu starten. Also Strom weg und wieder ein.
Invalid Token Request hatte ich auch. Du musst dich neu in IPS anmelden. Dann gehts. War zumindest bei mir so.

Hallo zusammen,

In der alten API gab es die Fehlercodes der Heizung.
Die z.b. Störungen angezeigt hat: Kein Gas, oder Brennerstörung usw.

In der neuen API ist diese seitens Viessmann nicht mehr vorhanden oder bin ich blind?

LG
Sven

Nein, gibt es nicht. Genauso wenig wie den Anlagendruck. Mir unverständlich und Viessmann reagiert nicht.
Es gäbe noch die Möglichkeit das Protokoll zu bekommen. Müsste allerdings @paresy implementieren.


Bei mir sind heute Vormittag Fehler aufgelaufen. Aktuell kommen treten keine Fehler mehr auf

Wenn das auftritt, dann hat die Anlage die Verbindung zur Cloud verloren. Ich fange diesen Fehler mit einem Skript ab.

Hi hfichtinger,
ich bin noch recht neu bei IPS, kannst Du mir da einen Tipp geben, wie ich das anstelle?
LG
Bernd

Natürlich, ich versuche es.

  • Ich hab das Updateintervall in der Instanz auf 0 gestellt. Somit passiert erstmal kein automatisches Update
  • Dann brauchst du zwei Skripts die das Update und die Überprüfung durchführen

Erstes Skript welche überprüft ob die Anlage online ist.

//Vitodens Update  und Onlinestatus
IPS_Sleep(1000); /*etwas warten bis die Werte am Server ankommen*/
$vitodens200_update_script=43012; /*ID des Updateskripts */
$vitodensonline=22717; /*Variable die anzeigt ob die Anlage online ist*/
$status="";
$status=IPS_RunScriptWait($vitodens200_update_script);
if (strpos($status,"Fetching data failed") > 0) 
{
    ips_sleep(2000);
    $status="";
    $status=IPS_RunScriptWait($vitodens200_update_script);
    if (strpos($status,"Fetching data failed") > 0) 
    {
        setvalue($vitodensonline,false);
        Global_Log_Eintrag_erstellen("Fehler","Vitodens","Therme Offline!");
        Global_IPS_Nachricht("Vitodens","Therme Offline!");
    }
    else
    {
        setvalue($vitodensonline,true);
    }
}
else
{
    setvalue($vitodensonline,true);
}

Dieser Teil ruft ein zweites Skript auf, in dem das eigentliche Update passiert. Kommt beim ersten mal ein Fehler zurück, wird es noch einmal versucht. Nicht immer muss der erste Fehler korrekt sein.

Updateskript

$vitodens200=51915; /*ID der Viessmann Instanz*/
VVC_Update($vitodens200);

Das erste Skript wird in regelmäßigen Abstängen - bei mir alle 5 Minuten - aufgerufen. Somit kommt das Update der Werte wieder regelmäßig.