Ankündigung

Einklappen
Keine Ankündigung bisher.

Anzeige von Kamera Snapshots im Dashboard

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Anzeige von Kamera Snapshots im Dashboard

    Hallo zusammen,

    ich komme von Edomi, wo es sehr einfach war ein Kameraarchiv anzulegen, mittels Logik Fotos/Snapshots dort zu hinterlegen und diese dann in der Visualisierung, also dem Dashboard über das Element "Kameraarchiv" anzuzeigen und chronologisch durch die Fotos zu blättern.

    Das möchte ich in HA nun möglichst ähnlich realisieren.

    Die Automatisierung zu bauen die einen Snapshot erstellt war kein Problem. Wobei sich mir hier die erste Frage stellt, in welchem Pfad man die Snapshots ablegen sollte damit eine Karte im Dashboard darauf zugreifen kann? im www/... Teil oder, falls überhaupt möglich in den media-source Teil? Eine Möglichkeit Bilder/Dateien nach einer gewissen Zeit automatisch zu löschen, wie es das Edomi Archiv out -of-the-box anbietet, gibt es in HA nicht, richtig?

    Da HA von Haus aus scheinbar nur Karten mitbringt die ein einziges, statisches Bild anzeigen können, bedarf es einer Custom Card. Hier bin ich auf die Camera Gallery Card gestoßen. Habe es aber nicht geschafft die Karte so zu konfigurieren, dass die Bilder aus meinem www/camera-snapshots Ordner angezeigt werden.

    Hat von euch wer eine praktikable Lösung für mein vermeidlich einfaches Vorhaben?

    Danke und viele Grüße

    #2
    Hi, ich hab das mit der picture card gelöst. Ich lass mir aber auch nur den letzten Snapshot anzeigen, wenn jemand geklingelt hat. Also die klingel.jpg Datei wird halt immer überschrieben. Wichtig ist dass diese Dateien unter /local/ liegen müssen.

    Code:
    type: custom:stack-in-card
    cards:
      - type: markdown
        content: >
          <div style="display:flex; justify-content:space-between;
          align-items:center;"> <span>🔔 Letztes Klingeln</span> <span>am {{
          as_timestamp(states('input_datetime.klingel_zeit')) |
          timestamp_custom('%d.%m.%Y') }} um {{
          as_timestamp(states('input_datetime.klingel_zeit')) |
          timestamp_custom('%H:%M') }} Uhr</span> </div>
      - type: picture
        image: >-
          /local/klingel.jpg?{{ as_timestamp(states('input_datetime.klingel_zeit'))
          | int }}
    ​
    Besten Gruß
    norman

    Kommentar


      #3
      Ich nutze zur Anzeige die gallery-card in einem Popup.

      PHP-Code:
      type: custom:popup-card
      title
      : Eingang Kamera
      allow_nested_more_info
      : false
      dismissable
      : true
      card
      :
        
      type: custom:gallery-card
        entities
      :
          - 
      sensor.snapshots
        menu_alignment
      : responsive
        maximum_files
      : 15
        file_name_format
      : YYYYMMDD-HHmmss
        caption_format
      : D.MMM HH:mm
        parsed_date_sort
      : true
        enable_date_search
      : true
      right_button
      : OK
      size
      : classic
      target
      :
        
      entity_id: camera.eingang_sd
      adaptive
      : false
      adaptive_force_bottom_sheet
      : false
      adaptive_allow_mode_change
      : false​ 

      Das ist die Automation, welche die Snapshots erzeugt:
      PHP-Code:
      alias: Türklingel Foto an Alle
      description
      : ""
      triggers:
        - 
      entity_id:
            - 
      binary_sensor.turklingel_knopf
          to
      : "on"
          
      trigger: state
      conditions
      :
        - 
      condition: template
          value_template
      : >-
            {{ (
      as_timestamp(now()) | int) -
            (
      as_timestamp(states.automation.turklingel_foto_an_alle.attributes.last_triggered)
            | 
      int) > 10 }}
      actions:
        - 
      variables:
            
      tstamp: "{{ as_timestamp( now()) | timestamp_custom('%Y%m%d_%H%M%S') }}"
        
      - sequence:
            - 
      action: camera.snapshot
              metadata
      : {}
              
      data:
                
      filename: /config/www/snapshots/eingang_klingelbild_{{tstamp}}.jpg
              target
      :
                
      entity_id: camera.eingang_sd
            
      - action: telegram_bot.send_photo
              target
      :
                
      entity_id: notify.telegram_bot_
              data
      :
                
      message: Es hat geklingelt
                file
      : /config/www/snapshots/eingang_klingelbild_{{tstamp}}.jpg
                caption
      : Haustüre
      mode
      : single​ 

      Dazu noch diese Automation, welche alle 24 Stunden die alten Bilder löscht:
      PHP-Code:
      alias: Alte Kamerabilder löschen
      description
      : ""
      triggers:
        - 
      trigger: time_pattern
          hours
      : /23
      conditions
      : []
      actions:
        - 
      action: shell_command.remove_old_snapshot_files
          data
      : {}
      mode: single​ 

      Das shell_command ist in der configuration.yaml angelegt:
      PHP-Code:
      shell_command:
        
      remove_old_snapshot_files: 'find /config/www/snapshots -type f -mtime +30 -exec /bin/rm -f {} \;'​ 

      ​​​​ image.png
      Zuletzt geändert von woda; 19.04.2026, 13:05. Grund: Time Pattern korrigiert

      Kommentar


        #4
        Und?

        Kommentar


          #5
          Sorry, war die Tage leider viel Beschäftigt.

          Konnte das Anzeigen mithilfe der in meinem initialen Beitrag genanneten Camera Gallery Card und ​der dort genannten Integration FileTrack lösen.
          Dein Shell Command werde ich so ähnlich nutzen. Danke!

          Kommentar

          Lädt...
          X