Api Viessmann pour récupération de données avec Vitoconnect
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
J'ai le même problème en fait. J'imagine qu'ils ont changé un peu leur signature de méthode. Je vais voir à adapter ça.
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
Juste pour savoir ça a déjà fonctionné chez toi ? Je me souviens avoir eu pas mal de soucis avec cette fonction et je ne suis pas sûr que ça ai jamais fonctionné. Normalement le message "Payload Validation Error" signifie que les données envoyées ne sont pas valides(mauvais format,..). Le prob, c'est que pour désactiver le mode éco y a pas de données à fournir...
Je me souviens avoir corriger l'erreur pour activer le mode éco(manquait des " dans les données) mais me souvient plus trop si j'avais fait quoique ce soit pour la désactivation...
Je me souviens avoir corriger l'erreur pour activer le mode éco(manquait des " dans les données) mais me souvient plus trop si j'avais fait quoique ce soit pour la désactivation...
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
Au passage j'ai fait un update de example/bootstrap.php.
J'y ai défini un custom exception handler afin de n'afficher que les infos pertinentes en cas d'erreurs. Par exemple dans le cas de denisvdb ça donnera:
J'y ai défini un custom exception handler afin de n'afficher que les infos pertinentes en cas d'erreurs. Par exemple dans le cas de denisvdb ça donnera:
Code : Tout sélectionner
Message: Unable to set data for featureheating.circuits.0.operating.programs.ecoand action deactivate and data
Reason: Payload Validation Error
Code: 1
Re: Script pour Gestion Chaudière Viessmann connecté
oui en effet c'est avec le mode eco voici la commande:
<?php
include '/var/www/html/plugins/script/core/ressources/bootstrap.php';
$viessmannApi->activateEcoProgram("6");
<?php
include '/var/www/html/plugins/script/core/ressources/bootstrap.php';
$viessmannApi->activateEcoProgram("6");
Re: Script pour Gestion Chaudière Viessmann connecté
celui ci donne aussi le problème:
<?php
include '/var/www/html/plugins/script/core/ressources/bootstrap.php';
$viessmannApi->deActivateEcoProgram();
<?php
include '/var/www/html/plugins/script/core/ressources/bootstrap.php';
$viessmannApi->deActivateEcoProgram();
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
perso l'activation de l'eco program me renvoie une "DEVICE COMMUNICATION ERROR" mais comme la fonctionnalité n'existe pas rien d'étonnant. Par contre, il semble obligatoire de passer une température alors que celui-ci est optionnel. Donc le problème semble se poser quand j'essaye d'activer une feature sans fournir de données. Le problème c'est que je respecte bien la specs fournie par le siren.json donc je vois pas trop bien le prob.
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
J'ai ptet trouvé un truc. Plutôt que de mettre un body null je met dedans un json vide("{}"). Chez moi ça fait un DEVICE_COMMUNICATION_ERROR comme pour l'activation. Ca a ptet résolu le problème.
En plus je me rend compte que c'est la seule méthode de type "set" qui n'envoie pas de donnée. Ils appliquent une validation stricte(un post doit toujours contenir une donnée) mais définissent mal leur action.
En approche RESTful, on change des états et donc plutôt qu'un post vide sur
Il faut faire un post/put sur
avec comme contenu
ou
J'irai bien leur dire mais ils seraient capable de couper les accès :p
Peux-tu reprendre le dernier phar SNAPSHOT et me dire si c'est ok ?
En plus je me rend compte que c'est la seule méthode de type "set" qui n'envoie pas de donnée. Ils appliquent une validation stricte(un post doit toujours contenir une donnée) mais définissent mal leur action.
En approche RESTful, on change des états et donc plutôt qu'un post vide sur
Code : Tout sélectionner
https://api.viessmann-platform.io/operational-data/installations/XXXX/gateways/XXX/devices/0/features/heating.circuits.0.operating.programs.eco/deactivate
Code : Tout sélectionner
https://api.viessmann-platform.io/operational-data/installations/XXXX/gateways/XXX/devices/0/features/heating.circuits.0.operating.programs.eco
Code : Tout sélectionner
{state:activate}
Code : Tout sélectionner
{state:deactivate}
Peux-tu reprendre le dernier phar SNAPSHOT et me dire si c'est ok ?
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
En fait, je sais même pas si le mode ECO(différent du mode réduit) fonctionne déjà chez Viessmann. Est-ce que quelqu'un possédant un modèle avec le mode éco peut tester ?
@ denisvdb: est-ce que ce mode eco est dispo via ViCare et fonctionne ?
@ denisvdb: est-ce que ce mode eco est dispo via ViCare et fonctionne ?
Re: Script pour Gestion Chaudière Viessmann connecté
J'utilise le mode "ECO", pas le "cochon"thetrueavatar a écrit : ↑07 janv. 2019, 11:32En fait, je sais même pas si le mode ECO(différent du mode réduit) fonctionne déjà chez Viessmann. Est-ce que quelqu'un possédant un modèle avec le mode éco peut tester ?
@ denisvdb: est-ce que ce mode eco est dispo via ViCare et fonctionne ?
Dernière édition par Xavier.g le 08 janv. 2019, 13:54, édité 1 fois.
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
la fonction deactivate ausssi ? Depuis toujours ou seulement depuis ma dernière MAJ ?
Re: Script pour Gestion Chaudière Viessmann connecté
je viens de modifier ma réponse, en fait j'utilise le mode "ECO" (setActiveMode), pas le programme ECO (= "cochon" ?)
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
C'est aussi un peu confus pour moi je reconnais. A ma connaissance(basée sur la définition des features json) il y a 5 modes et 8 programmes:
Mode: Les modes sont les configurations globales de la chaudière(ECS et chauffage compris) je pense:
"dhw", ECS seulement en respectant le schedule
"dhwAndHeating" ECS+Chauffage en respectant le schedule
"forcedNormal" Force programme Normal quelque soit le "schedule" de ce dernier. Il me semble que ça n'active pas l'ECS(à vérifier)
"forcedReduced" Force programme réduit quelque soit le "schedule". Il me semble que ça n'active pas l'ECS(à vérifier)
"standby": je sais pas
Program: Uniquement liés au chauffage:
"comfort":
"eco":
"external",
"holiday"
"normal",
"reduced",
"standby"
Pour moi, il n'y a pas de mode ECO mais bien un programme ECO. On peut changer les modes via les services Viessmann.
Par contre, il n'y a pas de "setProgram($program)".
Mode: Les modes sont les configurations globales de la chaudière(ECS et chauffage compris) je pense:
"dhw", ECS seulement en respectant le schedule
"dhwAndHeating" ECS+Chauffage en respectant le schedule
"forcedNormal" Force programme Normal quelque soit le "schedule" de ce dernier. Il me semble que ça n'active pas l'ECS(à vérifier)
"forcedReduced" Force programme réduit quelque soit le "schedule". Il me semble que ça n'active pas l'ECS(à vérifier)
"standby": je sais pas
Program: Uniquement liés au chauffage:
"comfort":
"eco":
"external",
"holiday"
"normal",
"reduced",
"standby"
Pour moi, il n'y a pas de mode ECO mais bien un programme ECO. On peut changer les modes via les services Viessmann.
Par contre, il n'y a pas de "setProgram($program)".
- Pour normal et le reduced j'image qu'en mettant le mode sur normal ou reduced le program est adapté en conséquence.
- Pour eco et comfort, je ne vois que la methode activate ou deactivate. Je me rend compte que je n'ai pas encore implémenté la méthode pour le programme comfort
- Pour external je ne sais pas comment l' activer programmatiquement car pas d'actions sur cette feature
- Pour holiday y a une action schedule/unschedule où on peut définir une plage horaire que je n'ai pas encore implémentée
- Pour standy j'imagine que le mode standy force le program à passer en standby.
Re: Script pour Gestion Chaudière Viessmann connecté
En effet d’après mon expérience récente, si on veut sortir du programme "Reduce" en cours suite à la programmation horaire par exemple, on peut forcer le mode Comfort temporairement si une présence est détectée dans la maison, puis on peut revenir à la programmation en sélectionnant le mode DhwAndHeating.
Raspberry Pi 3 Jeedom - RFX433 - HUE - Mobile Alerts La Crosse Technology - Volets SOMFY - Viessmann Vitoconnect - Google Home Chromecast Wifi
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
Bon j'ai fixé le tout dans mon dernier commit:
Je pense aussi passer en version 1.0 car là je pense qu'on est bon niveau fonctionnalité.
J'ai mis des example pour comfort et holiday mais j'ai à chaque fois un DEVICE_COMMUNICATION_ERROR. Je suppose que ça ne marche pas pour ma chaudière... Bien que j'ai un mode cocktail et eco me semble-t-il. C'est ptet pas encore prêt de leur côté ceci dit vu que ça n'existe pas dan VitotrolPlus il me semble.added:
- holiday scheduling/unscheduling and example
- comfort program activation/deactivation and example
Fixed:
- setExternalTemperature was set temperature on reduced program
- activateEcoProgram doesn't fail if no temperature is provided
Je pense aussi passer en version 1.0 car là je pense qu'on est bon niveau fonctionnalité.
Re: Script pour Gestion Chaudière Viessmann connecté
Bonjour à tous,
J'essaie ce comprendre comment marche le module Historique pour suivre les évolutions de température suivant le moment de la journée et l'état de ma chaudière. J'ai beau retourner le problème dans tout les sens je tombe sur quelques chose de farfelue à chaque fois .
Il y a deux plugins utilisés sur ce graph : le script pour Viessmann et le plugin météo officiel de jeedom.
Mon 1er problème est le nombre de valeur pour la chaudiere. Sur la journée du 7 j'ai des trous et c'est pareil pour tout les jours de façon aléatoire. Dans les logs je n'ai aucunes erreurs d'execution ou de timeout.
Mon 2eme problème est l'échelle, les valeurs de viessman s'affiche en bas alors qu'elles sont supérieurs aux valeurs récupérés par le plugin météo du coups au premier coups d'oeil on a l'impression que la chaudière ne tourne pas.
Avez-vous une idée de ce qui ne va pas ?
J'essaie ce comprendre comment marche le module Historique pour suivre les évolutions de température suivant le moment de la journée et l'état de ma chaudière. J'ai beau retourner le problème dans tout les sens je tombe sur quelques chose de farfelue à chaque fois .
Il y a deux plugins utilisés sur ce graph : le script pour Viessmann et le plugin météo officiel de jeedom.
Mon 1er problème est le nombre de valeur pour la chaudiere. Sur la journée du 7 j'ai des trous et c'est pareil pour tout les jours de façon aléatoire. Dans les logs je n'ai aucunes erreurs d'execution ou de timeout.
Mon 2eme problème est l'échelle, les valeurs de viessman s'affiche en bas alors qu'elles sont supérieurs aux valeurs récupérés par le plugin météo du coups au premier coups d'oeil on a l'impression que la chaudière ne tourne pas.
Avez-vous une idée de ce qui ne va pas ?
- Pièces jointes
-
- Capture du 2019-01-10 06-33-37.png (54.14 Kio) Consulté 1586 fois
Re: Script pour Gestion Chaudière Viessmann connecté
Salut
Essaies de mettre un mini et un maxi dans les paramètres avancés - la roue crantée - des valeurs qui doivent apparaître dans ton graphe
Ce devrait solutionner ton soucis
Envoyé de mon iPhone en utilisant Tapatalk
Essaies de mettre un mini et un maxi dans les paramètres avancés - la roue crantée - des valeurs qui doivent apparaître dans ton graphe
Ce devrait solutionner ton soucis
Envoyé de mon iPhone en utilisant Tapatalk
Re: Script pour Gestion Chaudière Viessmann connecté
Bonjour,
Lissage, répétition des valeurs ...
Quand on a des valeurs encadrées, c'est que ce sont des données de type Autre.
Pour changer de type une donnée, parfois ça ne fonctionne pas. Il faut supprimer, sauvegarder et recréer la donnée.
J'ai moi aussi parfois des valeurs incohérentes sans erreur ni timeout. Ex: Le 7 à 9h, le 8 à 1h et le 9 à 22h dans le graph ci-dessus
Il faut regarder du coté de l'historisation des valeurs. Roue dentée à droite de la commande puis onglet Configuration
Lissage, répétition des valeurs ...
Les valeurs Viessmann sont-elles en numérique comme les données du plugin Meteo?
Quand on a des valeurs encadrées, c'est que ce sont des données de type Autre.
Pour changer de type une donnée, parfois ça ne fonctionne pas. Il faut supprimer, sauvegarder et recréer la donnée.
J'ai moi aussi parfois des valeurs incohérentes sans erreur ni timeout. Ex: Le 7 à 9h, le 8 à 1h et le 9 à 22h dans le graph ci-dessus
-
- Timide
- Messages : 8
- Inscription : 03 oct. 2018, 21:17
Re: Script pour Gestion Chaudière Viessmann connecté
Bonjour,flipflip a écrit : ↑10 janv. 2019, 06:40Bonjour à tous,
J'essaie ce comprendre comment marche le module Historique pour suivre les évolutions de température suivant le moment de la journée et l'état de ma chaudière. J'ai beau retourner le problème dans tout les sens je tombe sur quelques chose de farfelue à chaque fois .
Il y a deux plugins utilisés sur ce graph : le script pour Viessmann et le plugin météo officiel de jeedom.
Mon 1er problème est le nombre de valeur pour la chaudiere. Sur la journée du 7 j'ai des trous et c'est pareil pour tout les jours de façon aléatoire. Dans les logs je n'ai aucunes erreurs d'execution ou de timeout.
Mon 2eme problème est l'échelle, les valeurs de viessman s'affiche en bas alors qu'elles sont supérieurs aux valeurs récupérés par le plugin météo du coups au premier coups d'oeil on a l'impression que la chaudière ne tourne pas.
Avez-vous une idée de ce qui ne va pas ?
j'avais le même problème, je suis passé par un virtuel de l'info désirée en cochant la case historiser.
Re: Script pour Gestion Chaudière Viessmann connecté
Bonjour,
C'est possible mais le mieux est de créer correctement l'info de base sans rajouter avec un virtuel une couche supplémentaire pour la propagation des données.
JP
C'est possible mais le mieux est de créer correctement l'info de base sans rajouter avec un virtuel une couche supplémentaire pour la propagation des données.
JP
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
Tant qu'à faire quelqu'un peut m'indiquer comment depuis un scénario, changer une valeur d'un virtuel.
Je pige pas trop. J'ai une valeur "temperature ponderee precendente" que je veux soit mettre à la valeur précendte de l'historique de temperature ponderee soit "temperature exterieure" à défaut(ce qui sert comme valeur de démarage).
Si j'ai bien compris le "if" ça se fait que par un scénario, mais dans celui-ci comment changer la valeur du virtuel ? Les scénarii ne propose que des commandes de type action donc j'ai fait un setTemperaturePondereePrecedente mais aucune idée de comment passer la valeur... Bref un beau bordel selon moi...
Je pige pas trop. J'ai une valeur "temperature ponderee precendente" que je veux soit mettre à la valeur précendte de l'historique de temperature ponderee soit "temperature exterieure" à défaut(ce qui sert comme valeur de démarage).
Si j'ai bien compris le "if" ça se fait que par un scénario, mais dans celui-ci comment changer la valeur du virtuel ? Les scénarii ne propose que des commandes de type action donc j'ai fait un setTemperaturePondereePrecedente mais aucune idée de comment passer la valeur... Bref un beau bordel selon moi...
Qui est en ligne ?
Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 0 invité