Api Viessmann pour récupération de données avec Vitoconnect

Merci

Je ne suis pas plus avancé !

forcedReduced = marche réduite en permanence

forcedNormal = marche normal (jour) en permanence

Ce que je cherche c’est comment tester ces programmes sur ma chaudière, ils ont surement un nom particulier ???

@thetrueavatar, @3djc

Apparemment ce n’est pas ça !

Mode réduite forcé = heating.circuits.0.operating.modes.forcedReduced,

Mode normal forcée = heating.circuits.0.operating.modes.forcedNormal,

Programme ECO = heating.circuits.0.operating.programs.eco,

Programme normale = heating.circuits.0.operating.programs.normal,

Pour setter les programmes et modes il y a des méthodes. Je ne sais plus exactement comment elle fonctionne, je dois vérifier dans le code.Je sais que dans les json la liste des modes et programmes sont disponibles. Je vais voir si il existe dejà une méthode pour les récupérer sinon je peux l’implémenter.

Pour leur signification c’est compliqué car je n’ai qu’une partie des fonctionnalités. J’ai l’impression que le mode confort s’active jusqu’au prochain changement de mode tandis que le forcednormal serait permanent. De plus, la t° du confort peut être différente du mode normale. Le confort est représenté par un cocktail et l’eco par un cochon tirelire

@thetrueavatar

Et depuis le Vitotrol:

On retrouve ce programme de fonctionnement sur ViCare.

Je viens de vérifier avec l’apps ViCare les détections getActiveMode de l’API répondent bien.

Arrêt = standby

Eau chaude seule activés = dhw

Chauffages é eau chaude activés = dhwAndHeating

Marche réduite en permanence = forcedReduced

Mode jour en permanence = forcedNormal

On ne peut plus vérifier sur l’apps Vitotrol les serveurs étant down, mais les commandes étaient les même :

Mode veille = standby

Eau chaude seulement = dhw

Chauffage et eau chaude = dhwAndHeating

Marche réduite en permanence = forcedReduced

Marche Normale en permanence = forcedNormal

    /**
     * @param null $circuitId
     * @return string the activeMode( "standby","dhw","dhwAndHeating","forcedReduced","forcedNormal")
     * @throws ViessmannApiException
     */
    public
    function getActiveMode($circuitId = NULL): string
    {
        return $this->viessmannFeatureProxy->getEntity($this->buildFeature($circuitId, self::ACTIVE_OPERATING_MODE))->getProperty("value")["value"];
    }

    /**
     * Set the active mode to the given mode
     * @param $mode the activeMode( "standby","dhw","dhwAndHeating","forcedReduced","forcedNormal")
     * @param null $circuitId
     */
    public
    function setActiveMode($mode, $circuitId = NULL)
    {
        $this->viessmannFeatureProxy->setData($this->buildFeature($circuitId, self::OPERATING_MODES), "setMode", "{\"mode\":\"" . $mode . "\"}");
    }

Le mode (standby) Arrét \ Veille, met le chauffage et l’ESC en hors gel.

Le mode (forcedReduced) Marche réduite en permanence, passe le chauffage à la température de consigne réduite (nuit) et met l’ESC en hors gel.

Les programmes confort et ECO sont indépendant de ces modes.

@Thetrueavatar, @Manouille, @mulb, @jpty, @Jasper, @3djc, @Mandelbrot

Bonjour,

Petite question un peu hors sujet.

Quand j’essaie de me connecter à ce lien en utilisant mes codes ViCare :

https://support.viessmann.io

J’ai un message qui me dit que je n’ai pas les droits.

Faut-il s’enregistrer quelque part ?

Je n’arrive plus à m’y connecter.


Peut-etre est ce devenu le site pour les partenaires/installateurs Viessmann :thinking:

@Thetrueavatar, @Manouille, @mulb, @jpty, @Jasper, @3djc, @Mandelbrot

Bonjour,

J’essaie d’utiliser ma 1er commande SET, notamment SetShift.php pour changer ma parallèle.

En relisant les messages de ce poste, je vois que @3djc avait rencontré des difficultés avec setNormalProgramTemperature.

J’ai fait la déclaration dans mon fichier GetAllInformationLocalJeedom.php de cette façon :

const CMD_SHIFT = "35";


$cmd = cmd::byId(CMD_ SHIFT);

$slop=$viessmannApi->getSlope();

$virtual->checkAndUpdateCmd($cmd, $viessmannApi->setCurve($argv[1], $slope));

Je suppose que je dois créer ma commande virtuel en tant que commande virtuel et non pas en tant qu’info virtuelle ?

Où et comment déclarer ma commande et comment appeler la variable $argv[1] ?

Bonjour,

Personne pour me conseiller, me mettre sur la voie ?

L’intégration et la conception de ma commande est-elle déjà correcte ?

Voila comment j’ai procédé:

1 « J'aime »

Merci @3djc,

Comment gérez-vous la commande de nouvelle consigne ?

Quel est le contenu de votre setCC1NormalTemp.php ?

Pour ma part, je n’ai que la consigne setNormalProgramTemperature a gérer.

Bien cordialement

Simplement


<?php
include __DIR__.'/bootstrap.php';

$viessmannApi->setNormalProgramTemperature( $argv[1], 0);

un doute, que signifie le 0?
et vous gérez la modification comment?

Le 0 c’est le circuit de chauffage (on peut l’ommettre si c’est le 0 comme ici).

Pour lancer la commande, j’ai une logique qui ne l’envoie que lorsque la consigne change, pour éviter des hits inconsidérés, puisqu’ils sont comptés dans le quota

Bonsoir, le verre cocktail sur la vitronic ,c’est une dérogation sur le chauffage sur une durée maxi de 8h
Pour info le CC1 par défaut et un circuit direct ,toutes instal avec circuit radiateur avec vanne 3 voies ainsi que plancher chauffant seront attribués sur CC2 et .CC3.

1 « J'aime »

Bonjour,

Une idée sur la cause et l’impact de cette erreur MySQL ?

Re,
L’impact => néant, la donnée n’est pas mémorisée dans la base MySQL.
La cause : le format de la valeur retournée ne correspond pas au format de la base MySQL. Il faudrait tracer en debug les données pour voir le format retourné.
A+
Bernard

Merci pour votre explication,

Ce qui est étrange c’est cette ([Maj-Viessmann][MiseAJour]) est exécutée toute les 5 minutes et je n’ai qu’une occurrence de l’erreur.

Re,

Il est possible que la donnée ait été parasitée lors de l’acquisition sur la chaudière.

Juste vérifier si ceci est plus ou moins fréquent.

A+
Bernard