Heaty will die, Schedy be born!

well. I think is not. Any alternative?

I’ve not looked. I sorted my problem and the schedules are working as expected. I shouldn’t need to fiddle with the again now.

Unfortunately I’m facing some issue. Basically schedy doesn’t change anymore based on the input_select that I used for the last 4 years.

I run

  • Core 2024.1.5
  • Supervisor 2023.12.1
  • Operating System 11.4
  • Frontend 20240104.0

Appdaemon version is 0.16.3

Below my config file called schedy_heating.yaml:

schedy_heating: # This is our app instance name.
  module: hass_apps_loader
  class: SchedyApp

  reset_at_startup: true

  actor_type: thermostat

  expression_environment: |
    def heating_mode():
        return state("input_select.heating_mode")

  watched_entities:
    - input_select.heating_mode

  schedule_prepend:
    - name: global schedule on/off switch
      x: "Abort() if heating_mode() == 'Estate' else Next()"
    - x: "Mark(OFF, Mark.OVERLAY) if not is_empty(filter_entities('binary_sensor', state='on', window_room=room_name)) else Next()"

  schedule_append:
    - v: "OFF"

  rooms:
    soggiorno:
      rescheduling_delay: 180
      actors:
        climate.002018a99d1262:
      watched_entities:
        - binary_sensor.001558a99d47fc_state
      schedule:
        - v: 20
          rules:
            - x: "Next() if heating_mode() == 'Acceso' else Break()"
            - { start: "07:30", end: "23:30" }
        - v: 30
          months: 5-9

    studio:
      rescheduling_delay: 180
      actors:
        climate.002018a99d17fb:
      watched_entities:
        - binary_sensor.001558a99d4529_state
      schedule:
        - v: 21
          rules:
            - x: "Next() if heating_mode() == 'Acceso' else Break()"
            - { start: "08:00", end: "23:30" }
        - v: 30
          months: 5-9

    cucina:
      rescheduling_delay: 120
      actors:
        climate.002018a99d23c2:
      watched_entities:
        - binary_sensor.portacucina_template
        - binary_sensor.finestra_cucina_contact
      schedule:
        - v: 20
          rules:
            - x: "Next() if heating_mode() == 'Acceso' else Break()"
            - { start: "05:30", end: "22:30" }
        - v: 30
          months: 5-9

    cameradaletto:
      rescheduling_delay: 240
      actors:
        climate.002018a99d1c41:
      watched_entities:
        - binary_sensor.001558a99d4a8d_state
      schedule:
        - v: 20
          rules:
            - weekdays: 1-5
              rules:
                - rules:
                    - x: "Next() if heating_mode() == 'Acceso' else Break()"
                    - { start: "05:30", end: "09:00" }
                    - { start: "09:00", end: "23:30" } #twins
                    # - { start: "18:00", end: "23:30" }
            - weekdays: 6-7
              rules:
                - rules:
                    - x: "Next() if heating_mode() == 'Acceso' else Break()"
                    - { start: "07:00", end: "11:00" }
                    - { start: "11:00", end: "23:30" } #twins
                    # - { start: "20:00", end: "23:30" }
        - v: 30
          months: 5-9

    cameradiadele:
      rescheduling_delay: 240
      actors:
        climate.002018a99ec24d:
      watched_entities:
        - binary_sensor.001558a99ef4be_state
        - binary_sensor.porta_finestra_camera_di_adele_contact
      schedule:
        - v: 22
          rules:
            - weekdays: 1-5
              rules:
                - rules:
                    - x: "Next() if heating_mode() == 'Acceso' else Break()"
                    - { start: "05:30", end: "09:00" }
                    - { start: "16:00", end: "23:30" }
            - weekdays: 6-7
              rules:
                - rules:
                    - x: "Next() if heating_mode() == 'Acceso' else Break()"
                    - { start: "05:30", end: "23:30" }
        - v: 30
          months: 5-9

    bagnoprincipale:
      actors:
        climate.002018a99d2442:
      watched_entities:
        - binary_sensor.001558a99d4e50_state
      schedule:
        - v: 20
          rules:
            - weekdays: 1-5
              rules:
                - rules:
                    - x: "Next() if heating_mode() == 'Acceso' else Break()"
                    - { start: "05:30", end: "23:30" }
            - weekdays: 6-7
              rules:
                - rules:
                    - x: "Next() if heating_mode() == 'Acceso' else Break()"
                    - { start: "07:00", end: "23:30" }
        - v: 30
          months: 5-9

    bagnosecondario:
      actors:
        climate.002018a99ebe4e:
      watched_entities:
        - binary_sensor.001558a99ef07a_state
      schedule:
        - v: 21
          rules:
            - weekdays: 1-5
              rules:
                - rules:
                    - x: "Next() if heating_mode() == 'Acceso' else Break()"
                    - { start: "05:30", end: "23:30" }
            - weekdays: 6-7
              rules:
                - rules:
                    - x: "Next() if heating_mode() == 'Acceso' else Break()"
                    - { start: "07:00", end: "23:30" }
        - v: 30
          months: 5-9

below my appdaemon.yaml file

## appdaemon.yaml
secrets: /homeassistant/secrets.yaml ##secrets: /config/secrets.yaml
appdaemon:
  app_dir: /homeassistant/appdaemon/apps
  time_zone: Europe/Rome
  production_mode: true #
#  utility_delay: 5 #
#  utility_skew: 4 #
  latitude: 45.0722548
  longitude: 7.6606463
  elevation: 239
  plugins:
    HASS:
      type: hass
http:
  url: http://127.0.0.1:5050
hadashboard:
admin:
api:

the only thing changed “recently” is the app_dir position:

> app_dir: /homeassistant/appdaemon/apps

can someone please point me to the correct direction to restore functionality?