Advertisement
JLindvig

Google AI Camera Analyze

Dec 12th, 2024 (edited)
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 3.23 KB | None | 0 0
  1. alias: Carport
  2. description: ""
  3. triggers:
  4.   - trigger: state
  5.     entity_id:
  6.      - binary_sensor.carport
  7.     to: "on"
  8.     id: motion
  9.     alias: Når der er bevægelse i carport
  10. conditions: []
  11. actions:
  12.   - variables:
  13.       count: 4
  14.       delay_ms: 500
  15.       www: /config/www/
  16.       local: /local/
  17.       path: images/snapshots/
  18.       image: carport
  19.       camera: camera.carport_fluent
  20.       no_motion: Ingen åbenlys bevægelse detekteret.
  21.       ignore_cars:
  22.        - Hvid SUV (EE 33 707)
  23.         - Rød Mazda 2 (DE 34 334)
  24.       date_format: "%d/%m/%Y %H:%M:%S"
  25.     alias: Sæt variabler
  26.   - alias: Loop x antal gange (count)
  27.     repeat:
  28.       count: "{{ count | int }}"
  29.       sequence:
  30.         - if:
  31.             - condition: template
  32.               value_template: "{{ not repeat.first }}"
  33.               alias: Hvis det IKKE er første gennemløb
  34.           then:
  35.             - delay:
  36.                 hours: 0
  37.                 minutes: 0
  38.                 seconds: 0
  39.                 milliseconds: "{{ delay_ms | int }}"
  40.               alias: Forsinkelse (delay_ms)
  41.           alias: Test index og lav forsinkelse
  42.         - action: camera.snapshot
  43.           metadata: {}
  44.           data:
  45.             filename: "{{ www }}{{ path }}{{ image }}_{{ repeat.index }}.jpg"
  46.           target:
  47.             entity_id: "{{ camera }}"
  48.           alias: Tag Snaphot (camera)
  49.   - action: google_generative_ai_conversation.generate_content
  50.     data:
  51.       prompt: >-
  52.         Bevægelse er blevet opdaget i min carport – hvad ser du på billedet?
  53.  
  54.         Du bedes have fokus på mennesker og køretøjer. Hvor mange mennesker er
  55.         der, hvordan ser de ud, hvad har de på og hvad laver de? Hvor mange
  56.         biler er der, hvad er deres nummerplade, bilmærke, model og farve? Se
  57.         bort fra følgende biler '{{ ignore_cars | join(', ') }}'.
  58.  
  59.         Beskriv ikke bygninger, stationære objekter eller vejret. Hvis der ikke
  60.         er nogen synlig årsag til bevægelsen, svar blot med '{{ no_motion }}'
  61.  
  62.         Hold beskeden kort og informativ så den kan bruges i en notifikation.
  63.       image_filename: |-
  64.         {% set ns = namespace(images = []) %}
  65.         {% for i in range(count) %}
  66.           {% set ns.images = ns.images + [www~path~image~'_'~(i + 1)~'.jpg'] %}
  67.         {% endfor %}
  68.         {{ ns.images }}
  69.     response_variable: generated_content
  70.     enabled: true
  71.     alias: Anmod om beskrivelse af billederne hos Gemini
  72.   - if:
  73.       - condition: template
  74.         value_template: "{{ no_motion in generated_content.text }}"
  75.         alias: Ingen bevægelse i respons
  76.     then:
  77.       - stop: No motion
  78.     enabled: true
  79.     alias: Analyser respons
  80.   - action: notify.mobile_app_jacob_nothing
  81.     metadata: {}
  82.     data:
  83.       title: Bevægelse ved carporten
  84.       message: "{{ generated_content.text }} - Tid: {{ now().strftime(date_format) }}"
  85.       data:
  86.         image: "{{ local}}{{ path }}{{ image}}_1.jpg"
  87.     alias: Send notifikation med respons og billede
  88.   - action: input_text.set_value
  89.     metadata: {}
  90.     data:
  91.       value: "{{ generated_content['text'] }} - Tid: {{ now().strftime(date_format) }}"
  92.     target:
  93.       entity_id: input_text.sidste_notifikation_fra_carport
  94.     alias: Gem respons
  95. mode: single
  96.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement