› Forums › Serveur WES › Installation & Configuration › Récupération des infos dans OpenHAB
- Ce sujet contient 7 réponses, 2 participants et a été mis à jour pour la dernière fois par
dav999, le il y a 3 années et 7 mois.
- Post
-
Bonjour à tous,
je travaillais sous Jeedom, mais je vais basculer sur OpenHAB dans les prochains temps.
J’aimerais savoir si pour la lecture/récupération des valeurs des sondes, quelqu’un s’était déjà attelé à la tache de la création du script compatible WES<->OpenHAB (comme ceux avec Jeedom, Domoticz, etc..) ?
Si quelqu’un là déjà fait est-il possible de poster la version sur le site (si en plus vous avez un petit tuto tout fait sur l’implémentation dans OepnHAB, ce serait plus que parfait 🙂 ).
Merci d’avance
David
00
- Replies
-
-
Oups c’était Homeassistant dont je voulais parler pas OpenHAB 🙁
00 -
Bonsoir,
Je ne connais pas Home Assistant !.
Mais après une petite recherche Goo.. j’ai trouvé le lien, voir ci-dessous, d’une blogueur qui présente son propre script Home Assistant <> WES afin de récupérer des Infos du WES via des requêtes HTTP sur 2 fichiers CGX du WES : HOMEVAL.CGX et un fichier CGX personnalisé TIC1.CGX
https://forum.hacf.fr/t/integration-du-module-wes-v2-de-la-societe-cartelectronic/1099/4
A priory il mentionne -> configuration.yaml : ?
Peut être en décryptant le Script, il vous serait facile par analogie, de récupérer les Infos du DATA.CGX. La récupération du TIC1.CGX vers la moitié de son Script semble plus parlant et plus simple à décrypter. Ce fichier TIC1.CGX n’existe pas de base dans le WES et à été crée par le blogueur.
Après il faut voir comment se font la relation des Datas récupérés et l’intégration dans Home Assistant.Il semble utiliser des références via des étiquettes : templates !?
Cdt
00 -
Bonjour,
Re: Voici un lien intéressant qui donne quelques infos sur la structure de la configuration.yaml qui permet l’intégration de Scripts dans Home Assistant.
https://forum.hacf.fr/t/organisation-du-fichier-configuration-yaml/205
Avec l’exemple du Script Home Assistant <> WES donné dans le lien de mon précédent Post et les explications fournies dans ce nouveau lien, vous avez une base pour mieux comprendre l’intégration et la remonté de Data Http dans la plateforme.
Cdt
00 -
RE: Il y a déjà un fil de discussion ouvert sur le même sujet ouvert par @Sibolbe1 en aout 2021. Voici le lien : https://www.cartelectronic.fr/blog/?topic=integration-wes-dans-home-assistant/#post-11017
Il serait bien que @Sibolbe1 nous fasse un retour, afin de voir s’il a trouvé comment réalisé la récupération des Data de fichier CGX dans son Home Assistant.
Il semble que Home assistant est capable de lire le résultat d’une requête Http formatée au type de fichier JSON. Par contre le WES renvoie ses résultats de requêtes CGX au format XML,
Vous avez par ailleurs un exemple de Script Http WES fourni par un Blogueur de Home Assistant, présenté dans mon 1er Post de ce Fil de discussion, qui récupère le résultat de /WEBPROG/CGX/Homeval.cgx, qui est d’origine du WES ainsi que la récupération du résultat d’un CGX TIC1.GCX qui est crée et personnalisé par le Blogueur à partir d’un extrait du <tic1> du DATA.CGX. A priori ce Script Home Assistant <> WES fourni en exemple ne semble pas être perturbé par le format XML reçue en retour des 2 requêtes http CGX.
Vous savez maintenant qu’il faut intégrer votre Script HTTP dans une Structure de type Config : configuration.yaml pour intégrer dans Home Assiatant, les Datas reçus et lus de votre Script.
On peut extrapoler en prenant comme exemple le Script donné en exemple depuis le « tic1 » (DATA.GCX) pour extraire les infos de certaines SONDES de notre DATA.CGX du WES :
Je vous donne une exemple de Script qui pourrait fonctionner !?
Je m’arrête à la SONDE10. Si vous avez moins de Sonde, il faut supprimer les groupes sonde(X): (en bas du script) en trop:
Si par contre il vous faut rajouter des Sondes au delà de la Sonde10, dupliquer le bloc sonde10: et rajouter le bloc en modifiant les n° en relatifs. 10 => 11Il faut rentrer votre login et mot de passe du WES dans les rubriques username: et password: et fournir la bonne IP de votre WES resource : http://192.168.x.x/data.cgx
##### Debut du script ######
configuration.yaml :
sensor:
– platform: rest
name: wesdatacgx
resource: http://192.168.x.x/data.cgx
method: GET
authentication: basic
username: login_wes
password: mot_passe_wes
json_attributes_path: « $.data »
json_attributes:
– « tic1 »
– « tic2 »
– « tic3 »
– « impulsion »
– « pince »
– « temp »
– « relais »
– « entree »
– « analogique »
– « switch_virtuel »
– « variables »
– « relais1W »
value_template: ‘OK’
– platform: template
sensors:
sonde1 :
friendly_name: sonde1
device_class : temp
unit_of_measurement: ‘°C’
value_template: >-
{{ states.sensor.wesdatacgx.attributes[« temp »][« SONDE1 »] | float }}
sonde2 :
friendly_name: sonde2
device_class : temp
unit_of_measurement: ‘°C’
value_template: >-
{{ states.sensor.wesdatacgx.attributes[« temp »][« SONDE2 »] | float }}
sonde3 :
friendly_name: sonde3
device_class : temp
unit_of_measurement: ‘°C’
value_template: >-
{{ states.sensor.wesdatacgx.attributes[« temp »][« SONDE3 »] | float }}
sonde4 :
friendly_name: sonde4
device_class : temp
unit_of_measurement: ‘°C’
value_template: >-
{{ states.sensor.wesdatacgx.attributes[« temp »][« SONDE4 »] | float }}
sonde5 :
friendly_name: sonde5
device_class : temp
unit_of_measurement: ‘°C’
value_template: >-
{{ states.sensor.wesdatacgx.attributes[« temp »][« SONDE5 »] | float }}
sonde6 :
friendly_name: sonde6
device_class : temp
unit_of_measurement: ‘°C’
value_template: >-
{{ states.sensor.wesdatacgx.attributes[« temp »][« SONDE6 »] | float }}
sonde7 :
friendly_name: sonde7
device_class : temp
unit_of_measurement: ‘°C’
value_template: >-
{{ states.sensor.wesdatacgx.attributes[« temp »][« SONDE7 »] | float }}
sonde8 :
friendly_name: sonde8
device_class : temp
unit_of_measurement: ‘°C’
value_template: >-
{{ states.sensor.wesdatacgx.attributes[« temp »][« SONDE8 »] | float }}
sonde9 :
friendly_name: sonde9
device_class : temp
unit_of_measurement: ‘°C’
value_template: >-
{{ states.sensor.wesdatacgx.attributes[« temp »][« SONDE9 »] | float }}
sonde10 :
friendly_name: sonde10
device_class : temp
unit_of_measurement: ‘°C’
value_template: >-
{{ states.sensor.wesdatacgx.attributes[« temp »][« SONDE10 »] | float }}### FIN ####
Je vous joins ce Script dans un fichier TXT, car il ne faut pas copier ce script depuis le BLOG, car les caractères guillemets « » sont déformés par l’éditeur du BLOG.
Cdt
Attachments:
You must be logged in to view attached files.00 -
Bonjour Cdlog,
Merci pour tous ces détails.
Je suis en train de m’installer homeassistant sur un vieux RPI 3 cherché au garage.
Ca fait un bout de temps que j’ai quitté le logement dans lequel j’avais installé le WES et couplé à Jeedom, du coup, va falloir que je remette les mains dans le cambouis et en ce moment, je n’ai pas vraiment énormément de temps.
Je vais voir pour prendre en main Home assistant et dès que je me sentirais confortable je regarderais la partie script.
Je vais essayer de me débrouiller pour injecter le fichier dans homeassistant sans passer par un WES (je n’en n’ai aucun installé chez moi pour le moment) !Bonne journée.
00 -
Bonjour,
Ok ! Sans Serveur WES cela ne sera pas facile de simuler et intégrer votre Script !
Pour vous facilitez le travail, je vous envoie une archive avec 4 fichiers :
DATA.CGX : Le fichier Data.cgx d’origine du WES qui sert a envoyer la requête :IP/data.cgx
DATAJSON.CGX : Le fichier Data.cgx modifié et mis en forme au format JSON qui peut servir à envoyer la requête : IP:datajson.cgx
DATARESULT.XML : Le résultat XML classique reçu du WES, en réponse à la demande de la requête sur le data.cgx
DATARESULT.JSON : Le résultat JSON reçu du WES, en réponse à la demande de la requête sur le datajson.cgx (data.cgx mis en forme au format JSON)Voici le résultat XML de la partie SONDES reçu du WES sur une Dme de requête IP/data.cgx (data.cgx tronqué)
Vous retrouvez les 3 <TAG> [ <data> <temp> <sonde(x)> ] utilisés dans le Script que j’ai transmis qui permet d’identifier chaque Sonde(x)<?xml version= »1.0″ encoding= »UTF-8″?>
<data>
<temp>
<SONDE1>19.4</SONDE1>
<SONDE2>20.9</SONDE2>
<SONDE3>20.1</SONDE3>
<SONDE4>13.5</SONDE4>
<SONDE5>14.2</SONDE5>
<SONDE6>14.9</SONDE6>
<SONDE7>14.8</SONDE7>
<SONDE8>15.0</SONDE8>
<SONDE9>18.6</SONDE9>
<SONDE10>22.1</SONDE10>
<SONDE11>22.6</SONDE11>
<SONDE12>18.6</SONDE12>
<SONDE13>20.5</SONDE13>
<SONDE14>19.9</SONDE14>
<SONDE15>44.4</SONDE15>
<SONDE16>0.0</SONDE16>
<SONDE17>0.0</SONDE17>
<SONDE18>0.0</SONDE18>
<SONDE19>0.0</SONDE19>
<SONDE20>0.0</SONDE20>
<SONDE21>0.0</SONDE21>
<SONDE22>0.0</SONDE22>
<SONDE23>0.0</SONDE23>
<SONDE24>0.0</SONDE24>
<SONDE25>0.0</SONDE25>
<SONDE26>0.0</SONDE26>
<SONDE27>0.0</SONDE27>
<SONDE28>0.0</SONDE28>
<SONDE29>0.0</SONDE29>
<SONDE30>0.0</SONDE30>
</temp>
</data>Attachments:
You must be logged in to view attached files.00 -
Merci pour cet aide, c’est vraiment sympa.
Je vais regarder ça de près, si j’ai des news, ou des questions je reviendrais sur le forum pour mettre à jour le fil.
Bonne soirée
00
-
Étiqueté : Homeassistant
- Vous devez être connecté pour répondre à ce sujet.