From 043eb6357f4d97af13ce440e2fe2d93e4bfeda1e Mon Sep 17 00:00:00 2001 From: Ian C <108159253+ic-dev21@users.noreply.github.com> Date: Wed, 20 Mar 2024 19:07:57 -0400 Subject: [PATCH 1/5] Note au Readme MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Je ne crois pas que ça vaille la peine de passer du temps sur dvd-dev/#158 car un compte sans le matériel Hilo n'a aucune utilité. Note ajoutée au readme. --- README.en.md | 1 + README.md | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/README.en.md b/README.en.md index f3cb22b..d3d6e2c 100644 --- a/README.en.md +++ b/README.en.md @@ -65,6 +65,7 @@ rewrite it. Hilo is now pushing device readings via websocket from SignalR. ## Installation ### Step 0: Compatible install +This custom component requires that Hilo has carried out the install in your home. It will not be possible to set it up otherwise. This custom component has been tested to work by various users on HA OS (as bare metal or VM), Docker with the official (ghcr.io) image and Podman. Other types of install may cause permissions issues during creation of a few files by the custom component. diff --git a/README.md b/README.md index f0c31b2..369bffc 100644 --- a/README.md +++ b/README.md @@ -57,7 +57,9 @@ J'ai décidé de déplacer l'intégration ici, car la dernière mise à jour de ## Installation ### Étape 0: Avoir une installation compatible - Cette intégration a été testée par des utilisateurs sous HA OS (bare metal et VM), Docker avec l'image officielle (ghcr.io), Podman. Tout autre type d'installation peut mener à des problèmes de permission pour certains fichiers créés lors de l'installation initiale du custom_component. +L'intégration nécessite que l'installation du matériel Hilo soit complétée à votre domicile. Il ne sera pas possible de faire l'installation si ça n'est pas fait. + +Cette intégration a été testée par des utilisateurs sous HA OS (bare metal et VM), Docker avec l'image officielle (ghcr.io), Podman. Tout autre type d'installation peut mener à des problèmes de permission pour certains fichiers créés lors de l'installation initiale du custom_component. ### Étape 1: Télécharger les fichiers From 987deac4ccf50c3804792e1bb569fef1a0b9ec5a Mon Sep 17 00:00:00 2001 From: Ian C <108159253+ic-dev21@users.noreply.github.com> Date: Wed, 20 Mar 2024 20:37:13 -0400 Subject: [PATCH 2/5] Ajout dans la doc --- doc/automations/README.md | 124 +++++++++++++++++++++++++++++++++++++- 1 file changed, 123 insertions(+), 1 deletion(-) diff --git a/doc/automations/README.md b/doc/automations/README.md index 1ab326f..18127a5 100644 --- a/doc/automations/README.md +++ b/doc/automations/README.md @@ -1 +1,123 @@ -## Some Hilo automation ideas +# Some Hilo automation ideas + +## Défi Hilo Ancrage AM avec détection de présence + +Des appareils ont été enlevés pour simplifier. +On trigger à 1h du matin ou quand le sensor tourne à appreciation. Garantie le trigger. +On vérifie que la liste de défis le prochain est en AM +Condition sur le sensor défi car pourrait être en train de switcher d'état à 1h pile. +Condition d'heure en cas de reboot pas rapport de HA pour par rouler 2 fois. +Choose selon qu'il y ait quelqu'un à la maison ou pas. +``` +alias: Défi Hilo Ancrage AM +description: "" +trigger: + - platform: time + at: "1:00:00" + - platform: state + entity_id: + - sensor.defi_hilo + to: appreciation +condition: + - condition: template + value_template: "{{'am' in state_attr('sensor.defi_hilo','next_events')[0]['period'] }}" + - condition: or + conditions: + - condition: state + entity_id: sensor.defi_hilo + state: appreciation + - condition: state + entity_id: sensor.defi_hilo + state: scheduled + - condition: time + after: "11:55:00" + before: "12:05:00" +action: + - choose: + - conditions: + - condition: numeric_state + entity_id: zone.home + above: 0 + sequence: + - service: climate.set_temperature + data: + temperature: 21 + target: + entity_id: + - climate.thermostat_cuisine + alias: Présent + - conditions: + - condition: numeric_state + entity_id: zone.home + below: 1 + sequence: + - service: climate.set_temperature + data: + temperature: 23 + target: + entity_id: + - climate.thermostat_cuisine + alias: Absent +mode: single +``` +## Défi Hilo Ancrage PM avec détection de présence + +Des appareils ont été enlevés pour simplifier. +On trigger à 12h ou quand le sensor tourne à appreciation. Garantie le trigger. +On vérifie que la liste de défis le prochain est en PM. +Condition sur le sensor défi car pourrait être en train de switcher d'état à 1h pile. +Condition d'heure en cas de reboot pas rapport de HA pour par rouler 2 fois. +Choose selon qu'il y ait quelqu'un à la maison ou pas. +``` +alias: Défi Hilo Ancrage PM +description: "" +trigger: + - platform: time + at: "12:00:00" + - platform: state + entity_id: + - sensor.defi_hilo + to: appreciation +condition: + - condition: template + value_template: "{{'pm' in state_attr('sensor.defi_hilo','next_events')[0]['period'] }}" + - condition: or + conditions: + - condition: state + entity_id: sensor.defi_hilo + state: appreciation + - condition: state + entity_id: sensor.defi_hilo + state: scheduled + - condition: time + after: "11:55:00" + before: "12:05:00" +action: + - choose: + - conditions: + - condition: numeric_state + entity_id: zone.home + above: 0 + sequence: + - service: climate.set_temperature + data: + temperature: 21 + target: + entity_id: + - climate.thermostat_cuisine + alias: Présent + - conditions: + - condition: numeric_state + entity_id: zone.home + below: 1 + sequence: + - service: climate.set_temperature + data: + temperature: 23 + target: + entity_id: + - climate.thermostat_cuisine + alias: Absent +mode: single + +``` \ No newline at end of file From 26dedfac08e27fdf208d774b55edfdf44c4d2cad Mon Sep 17 00:00:00 2001 From: Ian C <108159253+ic-dev21@users.noreply.github.com> Date: Wed, 20 Mar 2024 20:52:40 -0400 Subject: [PATCH 3/5] Update README.md --- doc/automations/README.md | 297 +++++++++++++++++++++++++++++++++++++- 1 file changed, 296 insertions(+), 1 deletion(-) diff --git a/doc/automations/README.md b/doc/automations/README.md index 18127a5..bfeef2f 100644 --- a/doc/automations/README.md +++ b/doc/automations/README.md @@ -3,11 +3,17 @@ ## Défi Hilo Ancrage AM avec détection de présence Des appareils ont été enlevés pour simplifier. + On trigger à 1h du matin ou quand le sensor tourne à appreciation. Garantie le trigger. -On vérifie que la liste de défis le prochain est en AM + +On vérifie que la liste de défis le prochain est en AM. + Condition sur le sensor défi car pourrait être en train de switcher d'état à 1h pile. + Condition d'heure en cas de reboot pas rapport de HA pour par rouler 2 fois. + Choose selon qu'il y ait quelqu'un à la maison ou pas. + ``` alias: Défi Hilo Ancrage AM description: "" @@ -63,10 +69,15 @@ mode: single ## Défi Hilo Ancrage PM avec détection de présence Des appareils ont été enlevés pour simplifier. + On trigger à 12h ou quand le sensor tourne à appreciation. Garantie le trigger. + On vérifie que la liste de défis le prochain est en PM. + Condition sur le sensor défi car pourrait être en train de switcher d'état à 1h pile. + Condition d'heure en cas de reboot pas rapport de HA pour par rouler 2 fois. + Choose selon qu'il y ait quelqu'un à la maison ou pas. ``` alias: Défi Hilo Ancrage PM @@ -120,4 +131,288 @@ action: alias: Absent mode: single +``` + +## Défi Hilo Préchauffe AM +Je coupe mon convectair dans la salle de bain parce qu'il me gosse. + +Je coupe mon échangeur d'air pour garder ma chaleur en dedans. + +Perso je laisse le contrôle à Hilo pour cette phase, mon préchauffage est déjà entamé. +``` +alias: Défi Hilo Préchauffe AM +description: "" +trigger: + - platform: state + entity_id: + - sensor.defi_hilo + to: pre_heat + enabled: true + - platform: time + at: "04:00:00" +condition: + - condition: time + before: "04:05:00" + after: "03:55:00" + - condition: or + conditions: + - condition: state + entity_id: sensor.defi_hilo + state: pre_heat + - condition: state + entity_id: sensor.defi_hilo + state: reduction +action: + - service: climate.set_temperature + data: + temperature: 15 + target: + entity_id: climate.thermostat_salle_de_bain + - service: switch.turn_off + metadata: {} + data: {} + target: + entity_id: switch.prise_echangeur_d_air +mode: single + +``` + +## Défi Hilo Réduction AM + +``` +alias: Défi Hilo Réduction AM +description: "" +trigger: + - platform: state + entity_id: + - sensor.defi_hilo + to: reduction + enabled: true + - platform: time + at: "06:00:00" +condition: + - condition: time + before: "06:05:00" + after: "05:55:00" + - condition: or + conditions: + - condition: state + entity_id: sensor.defi_hilo + state: pre_heat + - condition: state + entity_id: sensor.defi_hilo + state: reduction +action: + - service: climate.set_temperature + data: + temperature: 15 + target: + entity_id: + - climate.thermostat_cuisine + - service: switch.turn_off + metadata: {} + data: {} + target: + entity_id: switch.prise_echangeur_d_air +mode: single + +``` + +## Défi Hilo Réduction PM +Petite passe passe ici, j'éteins l'échangeur d'air juste à 7h pour sortir les odeurs du souper pareille. + +``` +alias: Défi Hilo Réduction PM +description: "" +trigger: + - platform: state + entity_id: + - sensor.defi_hilo + to: reduction + enabled: true + id: Sensor + - platform: time + at: "17:00:00" + id: 5pm + - platform: time + at: "19:00:00" + id: 7pm +condition: + - condition: or + conditions: + - condition: state + entity_id: sensor.defi_hilo + state: pre_heat + - condition: state + entity_id: sensor.defi_hilo + state: reduction +action: + - choose: + - conditions: + - condition: trigger + id: + - Sensor + - 5pm + - condition: time + before: "17:05:00" + after: "16:55:00" + sequence: + - service: climate.set_temperature + data: + temperature: 15 + target: + entity_id: + - climate.thermostat_cuisine + alias: Réduction + - conditions: + - condition: trigger + id: + - 7pm + sequence: + - service: switch.turn_off + metadata: {} + data: {} + target: + entity_id: switch.prise_echangeur_d_air +mode: single + +``` + +## Défi Hilo Recovery AM avec détection de présence/dodo travail de nuit +Dépendant s'il y a quelque à la maison ou quelqu'un qui dort à la maison les actions changent. + + +``` +alias: Défi Hilo Recovery AM +description: "" +trigger: + - platform: state + entity_id: + - sensor.defi_hilo + to: recovery + - platform: time + at: "10:00:00" +condition: + - condition: time + before: "10:05:00" + after: "09:55:00" +action: + - choose: + - conditions: + - condition: or + conditions: + - condition: state + entity_id: sensor.defi_hilo + state: reduction + - condition: state + entity_id: sensor.defi_hilo + state: recovery + - condition: numeric_state + entity_id: zone.home + above: 0 + sequence: + - if: + - condition: state + entity_id: input_boolean.REDACTED_dodo_de_jour + state: "off" + then: + - service: climate.set_temperature + data: + temperature: 21 + target: + entity_id: + - climate.thermostat_cuisine + - service: switch.turn_on + metadata: {} + data: {} + target: + entity_id: switch.prise_echangeur_d_air + else: + - service: climate.set_temperature + data: + temperature: 18 + target: + entity_id: + - climate.thermostat_cuisine + - service: switch.turn_on + metadata: {} + data: {} + target: + entity_id: switch.prise_echangeur_d_air + - service: climate.set_temperature + data: + temperature: 20.5 + target: + entity_id: climate.thermostat_chambre_des_maitres + - conditions: + - condition: or + conditions: + - condition: state + entity_id: sensor.defi_hilo + state: reduction + - condition: state + entity_id: sensor.defi_hilo + state: recovery + - condition: numeric_state + entity_id: zone.home + below: 1 + sequence: + - service: climate.set_temperature + data: + temperature: 18 + target: + entity_id: + - climate.thermostat_cuisine + - service: switch.turn_on + metadata: {} + data: {} + target: + entity_id: switch.prise_echangeur_d_air +mode: single + +``` + +## Défi Hilo Recovery PM + +``` +alias: Défi Hilo Recovery PM +description: "" +trigger: + - platform: state + entity_id: + - sensor.defi_hilo + to: recovery + - platform: time + at: "21:00:00" +condition: + - condition: time + before: "21:05:00" + after: "20:55:00" + - condition: or + conditions: + - condition: state + entity_id: sensor.defi_hilo + state: reduction + - condition: state + entity_id: sensor.defi_hilo + state: recovery +action: + - service: climate.set_temperature + data: + temperature: 21 + target: + entity_id: + - climate.thermostat_cuisine + - service: climate.set_temperature + data: + temperature: 20.5 + target: + entity_id: climate.thermostat_chambre_des_maitres + - service: switch.turn_on + metadata: {} + data: {} + target: + entity_id: switch.prise_echangeur_d_air +mode: single + ``` \ No newline at end of file From 73cb8e788ea22613c556ef5fc22d090de18f7b1d Mon Sep 17 00:00:00 2001 From: Ian C <108159253+ic-dev21@users.noreply.github.com> Date: Wed, 20 Mar 2024 20:59:20 -0400 Subject: [PATCH 4/5] Update README.md --- doc/automations/README.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/doc/automations/README.md b/doc/automations/README.md index bfeef2f..b52ca2c 100644 --- a/doc/automations/README.md +++ b/doc/automations/README.md @@ -24,6 +24,7 @@ trigger: entity_id: - sensor.defi_hilo to: appreciation + from: scheduled condition: - condition: template value_template: "{{'am' in state_attr('sensor.defi_hilo','next_events')[0]['period'] }}" @@ -89,6 +90,7 @@ trigger: entity_id: - sensor.defi_hilo to: appreciation + from: scheduled condition: - condition: template value_template: "{{'pm' in state_attr('sensor.defi_hilo','next_events')[0]['period'] }}" @@ -147,6 +149,7 @@ trigger: entity_id: - sensor.defi_hilo to: pre_heat + from: appreciation enabled: true - platform: time at: "04:00:00" @@ -187,6 +190,7 @@ trigger: entity_id: - sensor.defi_hilo to: reduction + from: pre_heat enabled: true - platform: time at: "06:00:00" @@ -229,6 +233,7 @@ trigger: entity_id: - sensor.defi_hilo to: reduction + from: pre_heat enabled: true id: Sensor - platform: time @@ -290,6 +295,7 @@ trigger: entity_id: - sensor.defi_hilo to: recovery + from: reduction - platform: time at: "10:00:00" condition: @@ -382,6 +388,7 @@ trigger: entity_id: - sensor.defi_hilo to: recovery + from: reduction - platform: time at: "21:00:00" condition: From 72c8bae504ff95795089da207fcc9508eab7c488 Mon Sep 17 00:00:00 2001 From: Ian C <108159253+ic-dev21@users.noreply.github.com> Date: Wed, 20 Mar 2024 21:02:15 -0400 Subject: [PATCH 5/5] Update README.md --- doc/automations/README.md | 113 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 113 insertions(+) diff --git a/doc/automations/README.md b/doc/automations/README.md index b52ca2c..bcd04b2 100644 --- a/doc/automations/README.md +++ b/doc/automations/README.md @@ -1,5 +1,118 @@ # Some Hilo automation ideas +## Notification défis Hilo pendant le défi +Prérequis: sensors template de @Francoloco + +Petite notification à part pour ma femme pour qu'elle sache quand elle peut recommencer à vivre. +``` +alias: Défi Hilo Notification En Cours +description: "" +trigger: + - platform: state + entity_id: + - sensor.defi_hilo + from: scheduled + to: appreciation + id: appreciation + - platform: state + entity_id: + - sensor.defi_hilo + from: appreciation + to: pre_heat + id: pre_heat + - platform: state + entity_id: + - sensor.defi_hilo + from: pre_heat + to: reduction + id: reduction + - platform: state + entity_id: + - sensor.defi_hilo + from: reduction + to: recovery + id: recovery + - platform: state + entity_id: + - sensor.defi_hilo + from: recovery + to: completed + id: completed +condition: + - condition: not + conditions: + - condition: state + entity_id: sensor.defi_hilo + state: scheduled + - condition: template + value_template: > + {{ states('input_text.defi_hilo_last_state_notification') != + states('sensor.defi_hilo') }} +action: + - choose: + - conditions: + - condition: trigger + id: + - appreciation + - pre_heat + - completed + sequence: + - service: notify.mobile_app_REDACTED + data: + title: Défi Hilo + message: Le sensor défi est passé à {{ states('sensor.defi_hilo') }} + - service: input_text.set_value + metadata: {} + data: + value: "{{states('sensor.defi_hilo')}}" + target: + entity_id: input_text.defi_hilo_last_state_notification + - conditions: + - condition: trigger + id: + - reduction + sequence: + - service: notify.mobile_app_REDACTED + data: + title: Défi Hilo + message: >- + Le sensor défi est passé à {{ states('sensor.defi_hilo') }}, le + montant maximal possible est de + {{states('sensor.defi_hilo_allowed_cash')}}$ + - service: input_text.set_value + metadata: {} + data: + value: "{{states('sensor.defi_hilo')}}" + target: + entity_id: input_text.defi_hilo_last_state_notification + - conditions: + - condition: trigger + id: + - recovery + sequence: + - service: notify.mobile_app_iphone_ian + data: + title: Défi Hilo + message: >- + Le sensor défi est passé à {{states('sensor.defi_hilo')}}, le + montant obtenu estimé est de + {{states('sensor.defi_hilo_remaining_cash')}}$ + - service: notify.mobile_app_REDACTED + data: + title: Défi Hilo + message: >- + Le sensor défi est passé à {{ states('sensor.defi_hilo') }} plus + besoin de faire attention + - service: input_text.set_value + metadata: {} + data: + value: "{{states('sensor.defi_hilo')}}" + target: + entity_id: input_text.defi_hilo_last_state_notification +mode: single + +``` + ## Défi Hilo Ancrage AM avec détection de présence Des appareils ont été enlevés pour simplifier.