Fixes for summer vacation breaking K's morning scheduling

This commit is contained in:
2023-06-01 13:56:20 -04:00
parent 3f158d4d7b
commit ab9ed5ffd9
3 changed files with 45 additions and 44 deletions

View File

@ -27,7 +27,9 @@
{% endmacro %} {% endmacro %}
{% macro calendar_event_today(calendar) %} {% macro calendar_event_today(calendar) %}
{{ as_timestamp(strptime(state_attr(calendar,'start_time'), '%Y-%m-%d %H:%M:%S')) | timestamp_custom("%Y-%m-%d") == now().strftime("%Y-%m-%d") }} {% if state_attr(calendar,'start_time') %}
{{ as_timestamp(strptime(state_attr(calendar,'start_time'), '%Y-%m-%d %H:%M:%S')) | timestamp_custom("%Y-%m-%d") == now().strftime("%Y-%m-%d") }}
{% endif %}
{% endmacro %} {% endmacro %}
{% macro set_time_from_calendar(calendar,start_or_end) %} {% macro set_time_from_calendar(calendar,start_or_end) %}

View File

@ -167,18 +167,23 @@ script:
entity_id: entity_id:
- input_boolean.kallen_morning_meds_taken - input_boolean.kallen_morning_meds_taken
- input_boolean.kallen_night_meds_taken - input_boolean.kallen_night_meds_taken
- service: input_datetime.set_datetime - if:
entity_id: input_datetime.kallen_school_day_start - condition: state
data: entity_id: input_boolean.school_in_session
time: > state: 'on'
{% from 'time.jinja' import set_time_from_calendar %} then:
{% if is_state('input_boolean.two_hour_delay','on') %} - service: input_datetime.set_datetime
11:00 entity_id: input_datetime.kallen_school_day_start
{% else %} data:
{{ set_time_from_calendar('calendar.kallen_school_days','start_time') }} time: >
{% endif %} {% from 'time.jinja' import set_time_from_calendar %}
- delay: {% if is_state('input_boolean.two_hour_delay','on') %}
seconds: 1 11:00
{% else %}
{{ set_time_from_calendar('calendar.kallen_school_days','start_time') }}
{% endif %}
- delay:
seconds: 1
- if: - if:
- condition: state - condition: state
entity_id: input_boolean.kallen_wakeup_override entity_id: input_boolean.kallen_wakeup_override
@ -229,24 +234,29 @@ script:
{% else %} {% else %}
10:00 10:00
{% endif %} {% endif %}
- service: input_datetime.set_datetime - if:
entity_id: input_datetime.kallen_school_day_start_reminder - condition: state
data: entity_id: input_boolean.kallen_school_today
time: > state: 'on'
{% if is_state('input_boolean.two_hour_delay','on') %} then:
10:00 - service: input_datetime.set_datetime
{% else %} entity_id: input_datetime.kallen_school_day_start_reminder
{{ (state_attr('input_datetime.kallen_school_day_start','timestamp') - 3600) | timestamp_custom('%H:%M', false) }} data:
{% endif %} time: >
- service: input_datetime.set_datetime {% if is_state('input_boolean.two_hour_delay','on') %}
entity_id: input_datetime.kallen_school_day_end_reminder 10:00
data: {% else %}
time: > {{ (state_attr('input_datetime.kallen_school_day_start','timestamp') - 3600) | timestamp_custom('%H:%M', false) }}
{% if is_state('input_boolean.kallen_school_early_release','on') %} {% endif %}
13:30 - service: input_datetime.set_datetime
{% else %} entity_id: input_datetime.kallen_school_day_end_reminder
14:00 data:
{% endif %} time: >
{% if is_state('input_boolean.kallen_school_early_release','on') %}
13:30
{% else %}
14:00
{% endif %}
- service: input_datetime.set_datetime - service: input_datetime.set_datetime
target: target:
entity_id: input_datetime.kallen_morning_meds_notify entity_id: input_datetime.kallen_morning_meds_notify

View File

@ -441,8 +441,7 @@ script:
entity_id: entity_id:
- input_boolean.kallen_school_today - input_boolean.kallen_school_today
- input_boolean.kallen_school_today_extended - input_boolean.kallen_school_today_extended
- service: script.turn_on - input_boolean.school_in_session
entity_id: script.school_in_session
- delay: - delay:
seconds: 1 seconds: 1
- if: - if:
@ -470,14 +469,4 @@ script:
entity_id: entity_id:
- input_boolean.kallen_school_today_extended - input_boolean.kallen_school_today_extended
- input_boolean.kallen_band_practice - input_boolean.kallen_band_practice
- input_boolean.kallen_school_early_release - input_boolean.kallen_school_early_release
school_in_session:
alias: 'School In Session'
sequence:
- condition: state
entity_id: input_boolean.school_in_session
state: 'off'
- service: input_boolean.turn_on
entity_id: input_boolean.school_in_session