sensor: - name: tesla_charge_now state: > {% set deadline = states('input_datetime.tesla_charge_deadline') | default('2026-12-31T23:59:59') %} {% set hours_needed = states('sensor.tesla_charge_hours_needed')|float(0)|round(0,'ceil') %} {% set prices = (state_attr('sensor.energidataservice','today') or []) + (state_attr('sensor.energidataservice','tomorrow') or []) %} {% set valid = [] %} {% for p in prices if as_timestamp(strptime(p.hour,'%Y-%m-%dT%H:%M:%S')) <= as_timestamp(deadline) %} {% set valid = valid + [p] %} {% endfor %} {# Sorter efter pris #} {% set sorted = valid | sort(attribute='price') %} {# Vælg de billigste slots der dækker ladetiden #} {% set cheapest = sorted[:hours_needed] %} {# Tjek om nuværende slot er i listen #} {% set now_slot = now().replace(minute=(now().minute//15)*15, second=0, microsecond=0).isoformat() %} {{ cheapest | selectattr('hour','equalto',now_slot) | list | count > 0 }}