Création de widgets

Bonjour,

J’aimerais essayer de créer des widgets ressemblant à ceux-ci :

img1 img2

Coté images je devrais m’en sortir, mais coté fonctionnalités je suis dans le flou et découvre.

Sur la 1ère image, il aurait à gérer :

L’affichage de la température ça avec la variable #value# ça va.

En haut il y a un « bouton » + et un « bouton » - en bas, pour augmenter au baisser la température.

Comment géreriez-vous ceci ?

Le cercle autour de la température est de couleur quand la demande de consigne et en cour et passe en contour normal (voir sur 2eme image quand la consigne est atteinte).

La comment gérer ?

Merci pour vos idées et surtout votre expérience sur les widgets.

Bien cordialement

2 « J'aime »

Salut,

Tu as ce widget qui reprend beaucoup de ton besoin :

Salut,

Y’a le plugin thermoAlternateView aussi dans l’idée mais lié au plugin thermostat:

3987870509-Capture%20d%E2%80%99e%CC%81cran%202018-12-10%20a%CC%80%2022.06.32

Je suis l’auteur du plugin en question.
J’avais commencé sur une base de widget et c’était vraiment compliqué d’avoir un rendu qui me satisfasse (en jeedom v3) c’est pour cette raison que j’ai basculé sur un plugin.

1 « J'aime »

Bonjour,

Pensez-vous que votre plugin puisse être compatible avec des commandes de type info \ numérique de ce genre :

$cmd = cmd::byId(CMD_TEMP_EXT);
$virtual->checkAndUpdateCmd($cmd, $viessmannApi->getOutsideTemperature());

Ou getOutsideTemperature.php vaut :

    /**
     * @return string the outside temperature if available
     * @throws ViessmannApiException
     */
    public
    function getOutsideTemperature(): string
    {
        return $this->viessmannFeatureProxy->getEntity(ViessmannFeature::HEATING_SENSORS_TEMPERATURE_OUTSIDE)->getProperty("value")["value"];
    }

Il n’est compatible qu’avec le plugin thermostat

bien dommage, et je suppose que l’adaptation est Conséquente ? les sources sont-elles libre ?

Oui les sources sont libres.

1 « J'aime »

Un lien direct peut être ? comment voyez-vous cette adaptation ?

Le lien est dans le message de Salvialf : Jeedom Market
Il suffit de télécharger les sources (en étant connecté) autrement il est possible de le télécharger depuis Jeedom dans le market.
Il faut retirer toutes les liaisons vers les plugin agenda et thermostat et lui passer les différentes consignes en paramètres.

Je me répète mais tu ne sais pas naviguer dans l’arborescence Jeedom comment veux-tu faire un plugin ou même un widget ?

Faux

La liaison de plusieurs commandes c’est compliqué.

…ou tu ne te rends pas compte du boulot que c’est !

Je ne connaissais pas l’existence de ce plugin jeexplorer tous simplement.

Pour le boulot non, mais je peux toujours regarder !

On voit bien qu’il n’y a pas que ça…

Bref j’arrêtes de retourner le couteau. Désolé c’était pas pour être désagréable mais pour essayer d’aider… J’espère sincèrement qui tu arriveras à tes fins et que la communauté pourra en profiter.

Bon courage

3 « J'aime »

Bonjour,

@Salvialf mea-culpa, après avoir durant la nuit, passé quelques heures à décortiquer, étudier et essayer de comprendre le fonctionnement du plugin, je comprends mieux vos appréhensions.

Je dois le reconnaitre il faut être initié, voir du métier pour en arriver là.

C’est une usine a gaze ce truc !

Avantage, @Salvialf, @supradolph vous avez gagné tous mon respect, et je cerne un peu mieux les besoins.

Alors n’étant pas capable de cette prouesse, je propose mon aide, que ce soit pour la création d’images, ou détail des commandes liées à l’API viessmann, a qui voudra se lancer dans l’aventure.

Je pense qu’un tel plugin ravirait la communauté Jeedom\Viessmann.

Bien cordialement.

Pour info ma dernière version du plugin fait quelque chose de très proche puisque je m’en suis inspiré [Plugin Tiers] thermoAlternateView - #62 par supradolph.

Mais il reste basé sur le plugin thermostat…

3 « J'aime »

Bonsoir,

Très jolie travail !

Si je vous donne les informations nécessaires une adaptation Basic pour mon cas est-elle possible ?

1 « J'aime »

C’est possible mais ça reste assez complexe puisque tout le coeur de ce design est basé sur le plugin thermostat. Ce plugin est trop complexe pour ton besoin au final.
Mais je ne me vois pas passer au moins une journée de travail pour le réaliser (c’est grosso modo ce qu’à représenté cette simple adaptation du plugin) sachant que ça ne me servira pas et surement à très peux de monde. Après je peux me le garder dans un coin de la tête.

Pour résumer toute les requête font référence à des scripts PHP

Exemple :

Pour récupérer la consigne de jour il faut pointer sur un script nommé GetNormalProgramTemperature.php

Ce script contient :

<?php

include __DIR__.'/bootstrap.php';

echo $viessmannApi->getNormalProgramTemperature();

Pour modifier la consigne de jour il faut pointer sur un script nommé SetNormalProgramTemperature.php

Ce script contient :

<?php

include __DIR__.'/bootstrap.php';

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

C’est comme ça pour tout, consigne de nuit, mode eco, mode confort etc….

Un explorer de fichier pourrait être intéressant pour aller pointer sur le bon PHP

Qu’en pensez-vous ?

Chapeau l’artiste !!! Bravo c’est magnifique !

:clap:t4: :clap:t4: :clap:t4:

1 « J'aime »

Je ne connais pas votre système de chauffage ni l’intégration souhaitée de la domotique. Mais le plus simple serait peut être d’utiliser votre API dans le plugin script et de gérer votre chauffage via le plugin thermostat.
Le plugin thermostat à besoin à minima de :

  • Une consigne de chauffe (mode confort)
  • Une consigne de radiateur éteint (mode éteint ou HG)
  • La température de la pièce (une sonde de température qui remonte à Jeedom)

Avec tout ça il est possible d’utiliser la puissance de Jeedom pour gérer le chauffage.