Cozytouch
#71
Salut Damien,
Pour te donner une idée d'interface DS.
Voilà la mienne avec des affichages en fonction de Chauffage/Rafraichissement/Arrêt puis Mode zone en Manuel/Programmation avec des affichages francisés, Manuel et non manu, Programmation et non internalScheduling Pas d'afffichage de la température de confort en Manuel.

Ci-dessous ma page Chauffage

   
C'est en cherchant que l'on trouve...
Al_Bla
Répondre
#72
Merci Al_Bla pour tes sources et ton aide, la mise en oeuvre c'est très bien passé et les données remonte parfaitement.

J'utilise principalement le smartphone pour piloté l'installation.
a ce titre je me demandé comment sud-domotique-expert faisait pour faire cela
Citation :j'ai ça par ailleurs avec un matériel de comptage WES2, qui me renvoi toutes les 15s les résultats de la consommation de 4 pinces ampèremétriques branchées sur le WES2.
je récupères ces infos via un connecteur écoute universelle et via un automate je stocke dans une variable.
pour pouvoir historiser (ce que ne fait pas la variable), j'ai ajouter un connecteur universel LD (sur lui-même http:127.0.0.1:8080) auquel j'ai ajouté un équipement de type compteur d'energie, via mon automate je stocke les données (ma variable générale) dans une variable de l'équipement.

Avec ça je peiux afficher la valeur dans DS et monter des courbes (statistiques) pour voir ce qui se passe dans le temps .

Je me demandé comment il paramètre le connecteur et l’équipement pour récupérer la valeur de la variable général et la stocké dans une variable équipement.

on faisons cela, il me serai possible de créer un équipement thermomètre ou thermostat et ainsi récupéré les infos et quelles soient visibles sur smartphones via lifedomus
Répondre
#73
pour récupérer la donnée c'est assez simple , dans le matériel qui a la donnée (WES2) j'utilises l'appel périodique (toutes les xx secondes):
http://Mon_IP_LD:8080/UniversalListen?nom_de_la_donnée_dans_LD=Valeur_de_la_donnée_en_string


tu crées un équipement qui va être associé à un connecteur de type "écoute universelle" (tu peux créer un connecteur spécifique ou utiliser déjà un connecteur existant, ça change rien dans tous les cas LD n'a qu'un seul écouteur, mais c'est plus lisible si tu les différencie)

et tu crées tes variables dans l'équipement ci-dessus avec le nom "nom_de_la_donnée_dans_LD"  (si tu veux de l'historique il faut les mettre en double, sinon en string c'est suffisant)


et voilà !!!


si tu veux utiliser cette donnée dans un équipement qui est déjà attaché à un autre connecteur, alors il faut passer par un automate et une variable générale.
- tu crées ton automate qui va se déclencher sur "à chaque changement" de la variable "équipement_écoute_universelle:nom_de_la_donnée_dans_LD"
- tu stockes dans un variable générale en string "ma_var-generale" le contenu "équipement_écoute_universelle:nom_de_la_donnée_dans_LD"
- dans l'équipement voulu (celui qui doit avoir la donnée mais qui déjà associé à un autre connecteur), tu crées ta variable et tu crées une commande en JS:   nom_de_la_variable_du_nouvel_equipement = {temp_variable};
- dans l'automate tu appel l'action de cette commande et tu charges dans temp_variable  avec "ma_var-generale"
Répondre
#74
(05-09-2020, 09:36 AM)sud-domotique-expert a écrit : pour récupérer la donnée c'est assez simple , dans le matériel qui a la donnée (WES2) j'utilises l'appel périodique (toutes les xx secondes):
http://Mon_IP_LD:8080/UniversalListen?nom_de_la_donnée_dans_LD=Valeur_de_la_donnée_en_string


tu crées un équipement qui va être associé à un connecteur de type "écoute universelle" (tu peux créer un connecteur spécifique ou utiliser déjà un connecteur existant, ça change rien dans tous les cas LD n'a qu'un seul écouteur, mais c'est plus lisible si tu les différencie)

et tu crées tes variables dans l'équipement ci-dessus avec le nom "nom_de_la_donnée_dans_LD"  (si tu veux de l'historique il faut les mettre en double, sinon en string c'est suffisant)


et voilà !!!


si tu veux utiliser cette donnée dans un équipement qui est déjà attaché à un autre connecteur, alors il faut passer par un automate et une variable générale.
- tu crées ton automate qui va se déclencher sur "à chaque changement" de la variable
OK
"équipement_écoute_universelle:nom_de_la_donnée_dans_LD"
OK
- tu stockes dans un variable générale en string "ma_var-generale" le contenu "équipement_écoute_universelle:nom_de_la_donnée_dans_LD"
j'ai utilisé une fonction fromStr pour stocké dans un Double, c'est le type de donné attendu par l’équipement Thermomètre   
- dans l'équipement voulu (celui qui doit avoir la donnée mais qui déjà associé à un autre connecteur), tu crées ta variable et  tu crées une commande en JS:   nom_de_la_variable_du_nouvel_equipement = {temp_variable};
OK
- dans l'automate tu appel l'action de cette commande et tu charges dans temp_variable  avec "ma_var-generale"
OK, il est necessaire de passer par une variable temp_variable ? (c'est une variable global?)

j'ai effectué les étapes précédentes, mais cela ne semble pas charger la Variable Global dans la Variable de l’équipement.

mon équipement est raccordé à un connecteur Universel HTTP avec comme parametre 127.0.0.1:8080,
mais si j'ai bien compris, le connecteur ne sert pas, on utilise la commande JS nom_de_la_variable_du_nouvel_equipement = {temp_variable};

Quelque imprime ecran de ce que j'ai fait.

[Image: g9j2.png]

[Image: 2fk7.png]

[Image: 3nx9.png]
[Image: g9j2.png]
Répondre
#75
[Image: yert.png]
Répondre
#76
@mtddamien il y a un peu de confusion, je ne comprends pas tout à fait ce que tu veux faire ?

si c'est utiliser une donnée de cozutouch avec un autre équipement que cozytouch alors c'est cette procédure , si c'est juste récupérer les données de cozytouch.py dans LD alors l'étape 1 et 2 sont suffisantes.

1 - dans le site qui détient les données il faut faire un GET avec la commande suivante :
http://IP_LD:8080/UniversalListen?Nom_de_la_donnée=Valeur_de_la_donnée

2 -  pour récupérer cette donnée la charger dans 1 équipement et 1 variable qui sont associé à "ecoute universelle" (pas HTTP, donc pas cozytouch)

une fois cette étape réalisée tu t'assures que la variable est correctement chargée via un affichage dans DS


3 - ensuite tu vas pouvoir créer ton automate dont le trigger de déclenchement est "à chaque changement" de "écoute universelle:nom_de_la_donnée"
 pour t'en assurer regarde de log evènement pour voir si ton automate se déclenche !

4 - tu crées ta variable générale - en STRING

 5 - tu la charge avec le contenu de "écoute universelle:nom_de_la_donnée"
tu t'assures que la variable est correctement mise à jour - puis tu continues

6 - tu crées ta variable dans l'équipement que tu veux utiliser et QUI N'EST PAS associé à ECOUTE UNIVERSELLE

7 - tu crées ta commande en JS dans l'équipement que tu veux utiliser et QUI N'EST PAS associé à ECOUTE UNIVERSELLE

8 - tu ajoutes la commande avec {temp_var} dans ton automate et tu charges {temp_var} avec ta variable générale
Répondre
#77
Je viens de voir vos posts...

Damien, si tu veux juste faire afficher les températures dans une page DS, tu créés un widget 'valeur' ou 'painter' et tu lui affectes par exemple "tempRelev_1" tu dois avoir l'affichage à l'écran.

Ensuite, est-ce que tu veux utiliser les données de cozytouch pour un thermostat virtuel ??
C'est en cherchant que l'on trouve...
Al_Bla
Répondre
#78
(05-09-2020, 11:55 AM)sud-domotique-expert a écrit : @mtddamien il y a un peu de confusion, je ne comprends pas tout à fait ce que tu veux faire ?

je souhaite transmettre la valeur récupéré via écoute universelle (variable transmis par Cozytouch.py)
à un équipement Thermomètre (pour être visible dans l'app Lifedomus sur IOS)


si c'est utiliser une donnée de cozutouch avec un autre équipement que cozytouch alors c'est cette procédure , si c'est juste récupérer les données de cozytouch.py dans LD alors l'étape 1 et 2 sont suffisantes.

1 - dans le site qui détient les données il faut faire un GET avec la commande suivante :
http://IP_LD:8080/UniversalListen?Nom_de_la_donnée=Valeur_de_la_donnée

2 -  pour récupérer cette donnée la charger dans 1 équipement et 1 variable qui sont associé à "ecoute universelle" (pas HTTP, donc pas cozytouch)
Mon connecteur Cozytouch est pour le thermomètre, j'ai bien un connecteur écoute universelle pour récupéré les infos transmis par le script

une fois cette étape réalisée tu t'assures que la variable est correctement chargée via un affichage dans DS
La variable dans l’équipement écoute universelle est correctement chargé, j'ai contrôlé avec un affichage dans DS


3 - ensuite tu vas pouvoir créer ton automate dont le trigger de déclenchement est "à chaque changement" de "écoute universelle:nom_de_la_donnée"
 pour t'en assurer regarde de log evènement pour voir si ton automate se déclenche !
j'ai bien fait ça
4 - tu crées ta variable générale - en STRING
J'ai crée une variable générale en DOUBLE pour etre compatible avec le type de l'équipement thermometre

 5 - tu la charge avec le contenu de "écoute universelle:nom_de_la_donnée"
tu t'assures que la variable est correctement mise à jour - puis tu continues
La variable est bien correctement chargé

[Image: uuud.png]

6 - tu crées ta variable dans l'équipement que tu veux utiliser et QUI N'EST PAS associé à ECOUTE UNIVERSELLE
ok pour la création de la variable, tu as associé l’équipement à quelle connecteur ?

7 - tu crées ta commande en JS  dans l'équipement que tu veux utiliser et QUI N'EST PAS associé à ECOUTE UNIVERSELLE
OK

8 - tu ajoutes la commande avec {temp_var} dans ton automate et tu charges {temp_var} avec ta variable générale
Je ne suis pas sure de savoir comment charges {temp_var} avec la variable générale dans AUTOMATE
Répondre
#79
(05-09-2020, 12:15 PM)Al_Bla a écrit : Je viens de voir vos posts...

Damien, si tu veux juste faire afficher les températures dans une page DS, tu créés un widget 'valeur' ou 'painter' et tu lui affectes par exemple "tempRelev_1" tu dois avoir l'affichage à l'écran.

Ensuite, est-ce que tu veux utiliser les données de cozytouch pour un thermostat virtuel ??

Justement, je n'utilise pratiquement pas DS (que dans la maison) d'où la quête d'une solution pour renvoyer la valeur sur un équipement natif (thermomètre) pour être afficher dans Lifedomus.

oui je voudrai par la suite utiliser les données pour un thermostat virtuel
Répondre
#80
bien si tu as ta variable avec la valeur t'es sur le bon chemin

dans l'équipement thermostat que tu veux afficher, tu dois avoir des variables par défaut comme consommation ou température
donc on va faire avec cet équipement et ces variables standards

- tu crées dans l'équipement thermostat 1 commande :  charge_valeur_temperature en JS
dans la partie JS tu écris:
température = {temp_temp};   ("température" est le nom de la variable standard de ton équipement, si c'est "consommation" ou "niveau de batterie" tu mets la syntaxe exacte et pour ce qu'il y a  {} tu mets ce que tu veux "toto", "schmilblic", "ma_grand_mère" ou temp_temp


ATTENTION: des fois (souvent) la création de variable ou variable temporaire n'est pas prise en compte tant que tu n'es pas sorti puis reconnecté à CS entre temps.


maintenant dans ton automate , tu ajoutes une étape Action , qui va utiliser la commande  "charge_valeur_temperature" que tu viens de créer
automatiquement sur la droite tu vas avoir une demande pour remplir la variable temporaire temp_temp , choisit VAR et la variable globale que tu avais auparavant chargée.

c'est tout , comme la commande s'éxecute et assigne la valeur de la variable temp_temp à ta variable d'équipement tu as récupéré la valeur cozytouch dans un équipement qui n'est pas lié à cozytouch .

tu déclenches l'automate à la main pour t'assurer que c'est bon et ensuite l'automate se déclenchera à chaque changement de valeur renvoyé par cozytouch (via écoute universelle)
Répondre




Utilisateur(s) parcourant ce sujet : 1 visiteur(s)