Youless: Sensors for detailed information per phase

For those too exited to wait, who have the new firmware and and who have not set a password to access their Youless: You can place this in you sensors.yaml file. Don’t forget to put in the right IP adress for the resource parameter:

- platform: rest
  name: Youless phases
  scan_interval: 12
  resource: http://192.168.1.123/f
  headers:
    User-Agent: Home Assistant
    Content-Type: application/json
  method: GET
  json_attributes:
    - tr
    - i1
    - i2
    - i3
    - v1
    - v2
    - v3
    - l1
    - l2
    - l3
  value_template: "OK"
- platform: template
  sensors:
    youless_tariff:
      availability_template: "{{ state_attr('sensor.youless_phases', 'tr') != 'unavailable' }}"
      value_template: '{{ state_attr("sensor.youless_phases", "tr") }}'
      unique_id: sensor.youless_tariff
      friendly_name: "Youless tariff"
    phase_1_current:
      availability_template: "{{ state_attr('sensor.youless_phases', 'i1') != 'unavailable' }}"
      value_template: '{{ state_attr("sensor.youless_phases", "i1") | float(0) }}'
      unique_id: sensor.phase_1_current
      friendly_name: "Phase 1 current"
      unit_of_measurement: "A"
      device_class: "current"
    phase_1_voltage:
      availability_template: "{{ state_attr('sensor.youless_phases', 'v1') != 'unavailable' }}"
      value_template: '{{ state_attr("sensor.youless_phases", "v1") | float(0) }}'
      friendly_name: "Phase 1 voltage"
      unique_id: sensor.phase_1_voltage
      unit_of_measurement: "V"
      device_class: "voltage"
    phase_1_power:
      availability_template: "{{ state_attr('sensor.youless_phases', 'l1') != 'unavailable' }}"
      value_template: '{{ state_attr("sensor.youless_phases", "l1") | float(0) }}'
      friendly_name: "Phase 1 power"
      unique_id: sensor.phase_1_power
      unit_of_measurement: "W"
      device_class: "power"
    phase_2_current:
      availability_template: "{{ state_attr('sensor.youless_phases', 'i2') != 'unavailable' }}"
      value_template: '{{ state_attr("sensor.youless_phases", "i2") | float(0) }}'
      friendly_name: "Phase 2 current"
      unique_id: sensor.phase_2_current
      unit_of_measurement: "A"
      device_class: "current"
    phase_2_voltage:
      availability_template: "{{ state_attr('sensor.youless_phases', 'v2') != 'unavailable' }}"
      value_template: '{{ state_attr("sensor.youless_phases", "v2") | float(0) }}'
      friendly_name: "Phase 2 voltage"
      unique_id: sensor.phase_2_voltage
      unit_of_measurement: "V"
      device_class: "voltage"
    phase_2_power:
      availability_template: "{{ state_attr('sensor.youless_phases', 'l2') != 'unavailable' }}"
      value_template: '{{ state_attr("sensor.youless_phases", "l2") | float(0) }}'
      friendly_name: "Phase 2 power"
      unique_id: sensor.phase_2_power
      unit_of_measurement: "W"
      device_class: "power"
    phase_3_current:
      availability_template: "{{ state_attr('sensor.youless_phases', 'i3') != 'unavailable' }}"
      value_template: '{{ state_attr("sensor.youless_phases", "i3") | float(0) }}'
      friendly_name: "Phase 3 current"
      unit_of_measurement: "A"
      unique_id: sensor.phase_3_current
      device_class: "current"
    phase_3_voltage:
      availability_template: "{{ state_attr('sensor.youless_phases', 'v3') != 'unavailable' }}"
      value_template: '{{ state_attr("sensor.youless_phases", "v3") | float(0) }}'
      friendly_name: "Phase 3 voltage"
      unique_id: sensor.phase_3_voltage
      unit_of_measurement: "V"
      device_class: "voltage"
    phase_3_power:
      availability_template: "{{ state_attr('sensor.youless_phases', 'l3') != 'unavailable' }}"
      value_template: '{{ state_attr("sensor.youless_phases", "l3") | float(0) }}'
      friendly_name: "Phase 3 power"
      unique_id: sensor.phase_3_power
      unit_of_measurement: "W"
      device_class: "power"
- platform: integration
  source: sensor.phase_1_power
  name: Phase 1 usage
  unique_id: sensor.phase_1_power
  unit_time: h
  unit_prefix: k
  round: 1
- platform: integration
  source: sensor.phase_2_power
  name: Phase 2 usage
  unique_id: sensor.phase_2_power
  unit_prefix: k
  unit_time: h
  round: 1
- platform: integration
  source: sensor.phase_3_power
  name: Phase 3 usage
  unique_id: sensor.phase_3_power
  unit_prefix: k
  unit_time: h
  round: 1  

It is quite likely this can be adjusted to accommodate a password protected Youless too, but I have not tested that.