HA_Blueprints/Automations/babybuddy_nl.yaml
2024-12-19 00:32:13 +01:00

286 lines
9.2 KiB
YAML

blueprint:
name: Baby Buddy
author: noblewolf
description: "Meldingen en bediening van Baby Buddy. Werkt met Baby Buddy https://github.com/jcgoette/baby_buddy_homeassistant \n\nDit blueprint vereist Helpers (Je kunt elke naam gebruiken of onderstaande gebruiken.)
\n- Inputknop https://www.home-assistant.io/integrations/button/
\n- - BB Luier Helper
\n- - BB Voeding Helper
\n- - BB Kolf Helper
\n- - BB Slaap Helper
\n- - BB Buiklig Helper
\n- Teller https://www.home-assistant.io/integrations/counter/
\n- - BB Luierteller
\n- - BB Voedingteller
\n- - BB Kolfteller
\n- Inputtekst https://www.home-assistant.io/integrations/input_text/
\n- - BB Notities
\n- Inputnummer https://www.home-assistant.io/integrations/input_number/
\n- - BB Hoeveelheid
"
domain: automation
input:
bb_child:
name: Baby Buddy Kind
description: Kies één kind per automatisering.
selector:
entity:
domain: sensor
device_class: babybuddy_child
bb_child_last_timer:
name: Baby Buddy Laatste Timer Kind
description: Timer gecreëerd door Baby Buddy integratie. Kies dezelfde timer als de naam van het kind.
selector:
entity:
domain: sensor
device_class: timestamp
notification_group:
name: Melding of Meldingengroep
description: Apparaat of notificatiegroep om te melden wanneer de timer start. Bijvoorbeeld notify.josh_s_phone of notify.all_phones.
diaper_button:
name: Luierknop
description: Helper (type knop) om een luierwisseling te loggen.
selector:
entity:
domain: input_button
feeding_button:
name: Voedingsknop
description: Helper (type knop) om een voedingssessie te loggen.
selector:
entity:
domain: input_button
pumping_button:
name: Kolfknop
description: Helper (type knop) om een kolfsessie te loggen.
selector:
entity:
domain: input_button
tummy_time_button:
name: Buikligknop
description: Helper (type knop) om buikligtijd te loggen.
selector:
entity:
domain: input_button
sleep_button:
name: Slaapknop
description: Helper (type knop) om een slaapsessie te loggen.
selector:
entity:
domain: input_button
bb_timer:
name: Baby Buddy Timer
description: De timer gecreëerd door Baby Buddy. Bijvoorbeeld switch.jan_janssen_timer.
selector:
entity:
domain: switch
diaper_counter:
name: Luierteller
description: Helper die je hebt gemaakt om luierwisselingen te tellen. Resetteert om middernacht.
selector:
entity:
domain: counter
feeding_counter:
name: Voedingteller
description: Helper die je hebt gemaakt om voedingssessies te tellen. Resetteert om middernacht.
selector:
entity:
domain: counter
pumping_counter:
name: Kolfteller
description: Helper die je hebt gemaakt om kolfsessies te tellen. Resetteert om middernacht.
selector:
entity:
domain: counter
bb_notes:
name: Notities
description: Gedeeld notitieveld voor luierwisselingen en voedingnotities.
selector:
entity:
domain: input_text
bb_amount:
name: Hoeveelheid
description: Gedeeld veld voor hoeveelheid bij voeding en kolven.
selector:
entity:
domain: input_number
bb_ui_url:
name: Link naar Baby Buddy-tabblad
description: Link naar een dashboardpagina met jouw Baby Buddy-besturing. Bijvoorbeeld /lovelace/baby-buddy.
trigger:
- platform: state
entity_id: !input diaper_button
id: luier-wissel
- platform: state
entity_id: !input feeding_button
id: voeding-log
- platform: state
entity_id: !input pumping_button
id: kolf-log
- platform: state
entity_id: !input tummy_time_button
id: buiklig-eind
- platform: state
entity_id: !input sleep_button
id: slaap-eind-log
- platform: time
at: "00:00:00"
id: middernacht
- platform: state
entity_id: !input bb_timer
to: "on"
id: timer-aan
- platform: state
entity_id: !input bb_timer
to: "off"
id: timer-uit
variables:
_bb_amount: !input bb_amount
_bb_notes: !input bb_notes
_bb_child_last_timer: !input bb_child_last_timer
condition: []
action:
- choose:
- conditions:
- condition: trigger
id: luier-wissel
sequence:
- service: babybuddy.add_diaper_change
data:
type: "{{ states('select.baby_buddy_diaper_type') }}"
color: "{{ states('select.baby_buddy_diaper_color') }}"
amount: "{{ states(_bb_amount) }}" # Voeg het aantal luiers toe
notes: "{{ states(_bb_notes) }}"
target:
entity_id: !input bb_child
- service: input_text.set_value
data:
value: ""
target:
entity_id: !input bb_notes
- service: input_number.set_value # Reset bb_amount naar 0 na gebruik
data:
value: 0
target:
entity_id: !input bb_amount
- service: counter.increment
data: {}
target:
entity_id: !input diaper_counter
- conditions:
- condition: trigger
id: voeding-log
sequence:
- choose:
- conditions:
- condition: template
value_template: "{{ state_attr(_bb_child_last_timer, 'on') }}"
sequence:
- service: babybuddy.add_feeding
data:
timer: true
type: "{{ states('select.baby_buddy_feeding_type') }}"
method: "{{ states('select.baby_buddy_feeding_method') }}"
amount: "{{ states(_bb_amount) }}"
notes: "{{ states(_bb_notes) }}"
target:
entity_id: !input bb_timer
default:
- service: babybuddy.add_feeding
data:
type: "{{ states('select.baby_buddy_feeding_type') }}"
method: "{{ states('select.baby_buddy_feeding_method') }}"
amount: "{{ states(_bb_amount) }}"
notes: "{{ states(_bb_notes) }}"
target:
entity_id: !input bb_timer
- service: input_text.set_value
data:
value: ""
target:
entity_id: !input bb_notes
- service: input_number.set_value
data:
value: 1
target:
entity_id: !input bb_amount
- service: counter.increment
data: {}
target:
entity_id: !input feeding_counter
- conditions:
- condition: trigger
id: kolf-log
sequence:
- service: babybuddy.add_pumping
data:
amount: '{{ states(_bb_amount) }}'
notes: '{{ states(_bb_notes) }}'
target:
entity_id: !input bb_child
- service: counter.increment
data: {}
target:
entity_id: !input pumping_counter
- service: input_text.set_value
data:
value: ""
target:
entity_id: !input bb_notes
- service: input_number.set_value
data:
value: 0
target:
entity_id: !input bb_amount
- conditions:
- condition: trigger
id: buiklig-eind
sequence:
- service: babybuddy.add_tummy_time
data:
timer: true
target:
entity_id: !input bb_timer
- conditions:
- condition: trigger
id: slaap-eind-log
sequence:
- service: babybuddy.add_sleep
data:
timer: true
target:
entity_id: !input bb_timer
- conditions:
- condition: trigger
id: middernacht
sequence:
- service: counter.reset
data: {}
target:
entity_id:
- !input diaper_counter
- !input feeding_counter
- !input pumping_counter
- conditions:
- condition: trigger
id: timer-aan
sequence:
- service: !input notification_group
data:
title: ⏳️ Baby Buddy Timer Running
message: Tap to open Baby Buddy to log timer.
data:
group: baby-buddy-timer
clickAction: !input bb_ui_url
url: !input bb_ui_url
persistent: true
tag: baby-buddy-timer
- conditions:
- condition: trigger
id: timer-uit
sequence:
- service: !input notification_group
data:
message: clear_notification
data:
tag: baby-buddy-timer
mode: parallel
max: 10