Hallo zusammen,
ich lasse mir mit folgendem Code meine Bewegung auswerten und ein Foto inkl. KI generiertem Text senden.
alias: Benachrichtigung - AI Kamera - Sitzecke
description: ""
triggers:
- entity_id:
- binary_sensor.e1_garten_sitzecke_bewegung
to: "on"
trigger: state
conditions:
- condition: device
device_id: 2cbf721333cdf7f132be077341c84c28
domain: alarm_control_panel
entity_id: a7e57ea94374891cbee5fe3e6b968bec
type: is_armed_away
enabled: true
actions:
- if: []
then:
- repeat:
count: "{{ num_snapshots }}"
sequence:
- data:
filename: >-
./www/snapshots/{{ camera_path }}_snapshot{{ repeat.index
}}.jpg
target:
entity_id: "{{ camera_device }}"
action: camera.snapshot
- delay:
milliseconds: 500
- data:
prompt: "{{ ai_prompt }}"
filenames: >
{% set snap_count = 3 %} {% set ns = namespace(images=[]) %} {% for
i in range(1, snap_count + 1) %}
{% set image = "./www/snapshots/" ~ camera_path ~ "_snapshot" ~ i ~ ".jpg" %}
{% set ns.images = ns.images + [image] %}
{% endfor %} {{ ns.images }}
response_variable: generated_content
action: google_generative_ai_conversation.generate_content
- choose:
- conditions:
- condition: template
value_template: >
{{ generated_content['text'] != 'Camera has detected motion
however no obvious motion observed comparing snapshots.' }}
sequence:
- metadata: {}
data:
data:
photo:
- file: /config/www/snapshots/{{ camera_path }}_snapshot3.jpg
title: Titel
message: text
action: notify.garten
- action: notify.garten
metadata: {}
data:
message: "{{ generated_content['text'] }}"
title: Bewegung Sitzecke
mode: single
variables:
camera_device: camera.e1_garten_sitzecke_klar
camera_name: "{{ state_attr(camera_device, 'friendly_name') }}"
camera_path: "{{ state_attr(camera_device, 'friendly_name') | lower | replace(' ', '_') }}"
motion_sensor: binary_sensor.e1_garten_sitzecke_bewegung
motion_name: "{{ state_attr(motion_sensor, 'friendly_name') }}"
is_ios: true
num_snapshots: 3
snapshot_access_file_path: /www/snapshots/snapshot1.jpg
ai_prompt: >-
Es wurde eine Bewegung erkannt. Vergleichen Sie die folgende Bildsequenz
meiner Kamera {{ camera_name }} und beschreiben Sie sie ganz kurz. Was hat
Ihrer Meinung nach den Bewegungsalarm ausgelöst? Wenn eine Person anwesend
ist, beschreiben Sie diese perfekt im Detail. Beschreiben Sie keine
unbeweglichen Objekte oder Gebäude. Wenn Sie keine offensichtlichen Ursachen
für eine Bewegung sehen, antworten Sie mit „Die Kamera hat ausgelöst, jedoch
keine Bewegung erkannt“. Ihre Nachricht muss kurz genug sein, um in eine
Telefonbenachrichtigung zu passen. Unterscheide bei Menschen zwischen Mann
und Frau, sowie Kind. Wenn ein Tier anwesend ist, nennen Sie was für Tiere
zu sehen sind und beschreiben Sie diese Tiere perfekt im Detail.
Gibt es irgendwie die Möglichkeit, dass ich den Text auswerte und bestimmte Wörter als Trigger weiter verwende?
Sprich, wenn z.B. ein Waschbär erkannt wird, ein Licht an geht?
LG
Sebastian