Timeline Dashboard Card für Kamera-Events

Tatsächlich habe ich es hinbekommen:

Template Sensor (bei mir ist die Config in mehreren Dateien aufgeteilt):

---
# Camera events
- trigger:
    - trigger: event
      event_type: cam_event

  binary_sensor:
    - unique_id: custom_cam_events
      name: "Custom camera events"
      state: "off"
      attributes:
        events: >-
          {% set n = 5 %}
          {% set m = this.attributes.events | count | default(0) %}
          {{ [ trigger.event.data.event ] +
              ( [] if m == 0 else
                this.attributes.events[0:n-1] )
          }}
        starts: >-
          {% set n = 5 %}
          {% set m = this.attributes.starts | count | default(0) %}
          {{ [ trigger.event.data.starts ] +
              ( [] if m == 0 else
                this.attributes.starts[0:n-1] )
          }}
        ends: >-
          {% set n = 5 %}
          {% set m = this.attributes.ends | count | default(0) %}
          {{ [ trigger.event.data.ends ] +
              ( [] if m == 0 else
                this.attributes.ends[0:n-1] )
          }}
        summaries: >-
          {% set n = 5 %}
          {% set m = this.attributes.summaries | count | default(0) %}
          {{ [ trigger.event.data.summary ] +
              ( [] if m == 0 else
                this.attributes.summaries[0:n-1] )
          }}
        key_frames: >-
          {% set n = 5 %}
          {% set m = this.attributes.key_frames | count | default(0) %}
          {{ [ trigger.event.data.key_frame ] +
              ( [] if m == 0 else
                this.attributes.key_frames[0:n-1] )
          }}
        camera_names: >-
          {% set n = 5 %}
          {% set m = this.attributes.camera_names | count | default(0) %}
          {{ [ trigger.event.data.camera ] +
              ( [] if m == 0 else
                this.attributes.camera_names[0:n-1] )
          }}
        icon: mdi:timeline-outline

Aktuell werden nur die letzten 5 Events gespeichert. Das kann erhöht werden durch verändern der „n“ Variable. Geht bestimmt noch etwas schicker.

Event Daten:

event: "test 1213"
starts: "2025-06-30T17:15:00.126013+02:00"
ends: "2025-06-30T17:16:18.300577+02:00"
summary: "Event Detected"
key_frame: /config/www/llmvision/0a0dde62-1.jpg
camera: camera.xxx

Zustand des Sensors:

friendly_name: Custom camera events
events:
  - test 1213
  - test
  - test
  - test
  - test
starts:
  - "2025-06-30T17:15:00.126013+02:00"
  - "2025-06-30T17:15:00.126013+02:00"
  - "2025-06-30T17:15:00.126013+02:00"
  - "2025-06-30T17:15:00.126013+02:00"
  - "2025-06-30T17:15:00.126013+02:00"
ends:
  - "2025-06-30T17:16:18.300577+02:00"
  - "2025-06-30T17:16:18.300577+02:00"
  - "2025-06-30T17:16:18.300577+02:00"
  - "2025-06-30T17:16:18.300577+02:00"
  - "2025-06-30T17:16:18.300577+02:00"
icon: mdi:timeline-outline
summaries:
  - Event Detected
  - Event Detected
  - Event Detected
  - Event Detected
  - Event Detected
key_frames:
  - /config/www/llmvision/0a0dde62-1.jpg
  - /config/www/llmvision/0a0dde62-1.jpg
  - /config/www/llmvision/0a0dde62-0.jpg
  - /config/www/llmvision/0a0dde62-0.jpg
  - /config/www/llmvision/0a0dde62-0.jpg
camera_names:
  - camera.xxx
  - camera.xxx
  - camera.xxx
  - camera.xxx
  - camera.xxx

so müsste es dann gehen :slight_smile:

2 „Gefällt mir“