Intégration du module Wes V2 de la société Cartelectronic

Perso j’ai parsé les infos qui m’intéressaient.

configuration.yaml :

sensor:
  - platform: rest
    name: weshomeval
    resource: http://192.168.1.80/WEBPROG/CGX/homeval.CGX
    method: GET
    authentication: basic
    username: admin
    password: wes
    json_attributes_path: "$.form"
    json_attributes:
      - "array"
      - "bssw"
      - "java"
      - "html"
    value_template: 'OK'
  - platform: template
    sensors:
       wesheurecreuseraw :
        value_template: >-
            {{ states.sensor.weshomeval.attributes["html"][5]["value"] }}
       wesheurecreuse :
        friendly_name: wes_tarif_HC
        value_template: >-
          {% if states('sensor.wesheurecreuseraw') == 'H. Creuses' %} 
              1
          {% else %} 
              0
          {% endif %}
       wespcewatt :
        friendly_name: wespcewatt
        value_template: >-
             {{ states.sensor.weshomeval.attributes["array"][2]["value"] }}
       wesvewatt :
        friendly_name: wes_VE_Watt
        device_class : power
        unit_of_measurement: 'W'
        value_template: >-
             {{ (states('sensor.wespcewatt').split(",")[1]) }}
       wesgeneralwatt :
        friendly_name: wes_general_Watt
        device_class : power
        unit_of_measurement: 'W'
        value_template: >-
             {{ (states('sensor.wespcewatt').split(",")[2]) }}
       wesgaragewatt :
        friendly_name: wes_garage_Watt
        device_class : power
        unit_of_measurement: 'W'
        value_template: >-
             {{ (states('sensor.wespcewatt').split(",")[3]) }}
       weslocalpiscinewatt :
        friendly_name: wes_localpiscine_Watt
        device_class : power
        unit_of_measurement: 'W'
        value_template: >-
             {{ (states('sensor.wespcewatt').split(",")[4]) }}
       wesrl1 :
        friendly_name: wesrl1
        value_template: >-
              {{ states.sensor.weshomeval.attributes["bssw"][0]["value"] }}
       wessw :
        friendly_name: wes_switch_virtuel
        value_template: >-
             {{ states.sensor.weshomeval.attributes["java"][74]["value"] }}
       wessw1 :
        friendly_name: wes_switch_virtuel_1_VE_Now
        value_template:  "{{ ((states('sensor.wessw') | float ) - (states('sensor.wessw') | float // 2 * 2)) | int }}"
       wessw2 :
        friendly_name: wes_switch_virtuel_2_VE_HC
        value_template:  "{{ (((states('sensor.wessw') | float ) - (states('sensor.wessw') | float // 4 * 4)) // 2 ) | int }}"
       wessw3 :
        friendly_name: wes_switch_virtuel_3_VE_Surplus
        value_template:  "{{ (((states('sensor.wessw') | float ) - (states('sensor.wessw') | float // 8 * 8)) // 4 ) | int }}"
        
  - platform: rest
    name: westic
    resource: http://192.168.1.80/tic1.cgx
    method: GET
    authentication: basic
    username: admin
    password: wes
    json_attributes_path: "$.data"
    json_attributes:
      - "tic1"
    value_template: 'OK'
  - platform: template
    sensors:
      westichp :
        friendly_name: wes_tic_hp
        device_class : power
        unit_of_measurement: 'Wh'
        value_template: >-
             {{ states.sensor.westic.attributes["tic1"]["HCHP"] | float  }}
      westichc :
        friendly_name: wes_tic_hc
        device_class : power
        unit_of_measurement: 'Wh'
        value_template: >-
             {{ states.sensor.westic.attributes["tic1"]["HCHC"]| float }}
      westicinj :
        friendly_name: wes_tic_injection
        device_class : power
        unit_of_measurement: 'Wh'
        value_template: >-
             {{ states.sensor.westic.attributes["tic1"]["INJECTION"]| float }}
      westiciinst :
        friendly_name: wes_tic_i_instantanne
        device_class : power
        unit_of_measurement: 'A'
        value_template: >-
             {{ states.sensor.westic.attributes["tic1"]["IINST"]| float }}
      westension :
        friendly_name: wes_tic_tension
        device_class : power
        unit_of_measurement: 'V'
        value_template: >-
             {{ states.sensor.westic.attributes["tic1"]["TENSION1"]| float }}