Archives
Trending
Support
Login
clear text
XML
Django
JavaScript
MATLAB
C
C++
C#
Python
SQL
Shell
Bash
Markdown
YAML
JSON
HTML
CSS
PHP
Java
Ruby
Go
Rust
Swift
Kotlin
Arduino
TypeScript
Perl
Autohotkey
Lua
SQF
R
Scala
Haskell
Groovy
Dart
Clojure
VB.NET
Objective-C
PowerShell
Bash
CoffeeScript
Verilog
alias: Indstil sluttid for opladning description: "Sætter bilens opladningsdeadline baseret på kalenderaftaler og live rejsetid (inkl. 15 min. buffer), og deaktiverer hvis deadline er passeret eller er over 24 timer væk." triggers: - alias: Når det er en ny dag trigger: time at: "00:01:00" - alias: Når lokationen for den næste aftale skifter trigger: state entity_id: - sensor.location_next_event to: null for: "00:00:05" - alias: Når tiden for den næste aftale skifter trigger: state entity_id: - sensor.location_next_event attribute: start_time for: "00:00:05" - trigger: state entity_id: - binary_sensor.monta_dino_juice_eliminator_cable_plugged_in to: "on" alias: Når bilen sættes til opladning conditions: [] actions: - variables: buffer_time: 15 valid_options: >- {# Hent alle muligheder fra EV Smart Charging #} {{ state_attr('select.ev_smart_charging_charge_completion_time', 'options') | default([]) }} deadline_option: >- {# Hent aftalens starttid og dens rejsetid #} {% set start_time = state_attr('sensor.location_next_event', 'start_time') | as_datetime | as_local %} {% set travel_time = states('sensor.rejsetid_naeste_aftale') | default(0) | int %} {# Initialiserer med den sikre fallback #} {% set final_option = 0 %} {# Valider tider #} {% if start_time is not none and travel_time > 0 %} {# Beregn sluttidspunkt #} {% set end_time = start_time - timedelta(minutes = travel_time + buffer_time) %} {# Tjek at tidspunktet er i fremtiden og indenfor 24 timer #} {% if end_time > now() and end_time <= (now() + timedelta(hours=24)) %} {# Filtrerer gyldige tider (<= deadline) fra options og vælg det seneste. #} {% set final_option = valid_options | select('<=', end_time.strftime('%H:%M')) | list | last %} {% endif %} {% endif %} {# Kom med tidspunktet #} {{ final_option | default(0) }} - action: homeassistant.update_entity metadata: {} data: entity_id: - sensor.rejsetid_naeste_aftale alias: Opdater rejsetiden til lokationen enabled: true - delay: hours: 0 minutes: 0 seconds: 5 milliseconds: 0 enabled: true - alias: Vælg mellem 2 muligheder choose: - conditions: - condition: template value_template: "{{ deadline_option != 0 }}" alias: Ikke 0 sequence: - action: select.select_option metadata: {} data: option: "{{ deadline_option }}" target: entity_id: select.ev_smart_charging_charge_completion_time alias: Vælg tidspunktet alias: Vi har et tidspunkt default: - action: select.select_first metadata: {} data: {} target: entity_id: select.ev_smart_charging_charge_completion_time mode: single
Mark as private (unlisted)
for 30 minutes
for 6 hours
for 1 day
for 1 week
for 1 month
for 1 year
everlasting (like CCCP)