# templates/sensors_allgemein.yaml
# Allgemeine Sensoren

- sensor:
    - name: "Strom Zaehlerstand"
      unique_id: zahlerstand
      unit_of_measurement: kWh
      state_class: total_increasing
      device_class: energy
      icon: mdi:meter-electric
      state: >
        {% set neuer = states('sensor.strom_smr_e_in') %}
        {% set alt = states('sensor.zahlerstand') %}
        {% if neuer | is_number %}
          {{ neuer | float(0) }}
        {% elif alt | is_number %}
          {{ alt | float(0) }}
        {% else %}
          0
        {% endif %}

    - name: "Strom Netzbezug Gesamt"
      unique_id: strom_netzbezug_gesamt
      unit_of_measurement: "W"
      device_class: power
      state_class: measurement
      state: >-
        {% set p_in = states('sensor.strom_smr_p_in') | float(none) %}
        {% if p_in is not none and -1200 <= p_in <= 20000 %}
          {{ p_in }}
        {% else %}
          {{ this.state | float(0) }}
        {% endif %}
      availability: "{{ states('sensor.strom_smr_p_in') | is_number }}"

    - name: "Wasser Zaehlerstand"
      unique_id: wasser_zaehlerstand
      unit_of_measurement: "m3"
      state_class: total_increasing
      device_class: water
      icon: mdi:water
      state: >
        {% set neuer = states('sensor.wasserzaehler_total') | float(default=none) %}
        {% set alt = this.state | float(default=none) %}
        {% if neuer is none %}
          {{ alt if alt is not none else none }}
        {% elif alt is not none and neuer < alt %}
          {{ alt }}
        {% else %}
          {{ neuer }}
        {% endif %}

    - name: "Gartenwasser Zaehlerstand"
      unique_id: gartenwasser_zaehlerstand
      unit_of_measurement: m3
      state_class: total_increasing
      device_class: water
      icon: mdi:water-pump
      state: >
        {% set neuer = states('input_number.gartenwasser_zaehlerstand_manuell') | float(0) %}
        {% set alt = states('sensor.gartenwasser_zaehlerstand') | float(0) %}
        {{ neuer if neuer >= alt else alt }}

    - name: "Dummy InfluxDB Blocker"
      state: "0"
