diff --git a/README.md b/README.md index 3390aa1e..b00d09cc 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,88 @@ +Frigate icon + +[![GitHub Release](https://img.shields.io/github/release/dermotduffy/frigate-hass-card.svg?style=flat-square)](https://github.com/dermotduffy/frigate-hass-card/releases) +[![Build Status](https://img.shields.io/github/workflow/status/dermotduffy/frigate-hass-card/Build?style=flat-square)](https://github.com/dermotduffy/frigate-hass-card/actions/workflows/build.yaml) +[![License](https://img.shields.io/github/license/dermotduffy/frigate-hass-card.svg?style=flat-square)](LICENSE) +[![hacs](https://img.shields.io/badge/HACS-custom-orange.svg?style=flat-square)](https://hacs.xyz) + +Live viewing + # Frigate Lovelace Card -A pre-alpha Frigate Lovelace card. \ No newline at end of file +A full-featured Frigate Lovelace card: + * Live viewing. + * Clips and snapshot browsing via mini-gallery. + * Automatic updating to continually show latest clip / snapshot. + * Support for filtering events by zone and label. + * Motion sensor access. + * Full Lovelace editing support. + * **Advanced**: Support for [WebRTC](https://github.com/AlexxIT/WebRTC) live viewing. + +## Options + +### Required + +| Option | Description | +| ------------- | --------------------------------------------- | +| `camera_entity` | The Frigate camera entity to show by default on the card.| +| `frigate_url` | The URL of the frigate server. Must be manually specified, as the URL from the underlying device is not available to Lovelace cards.| + +### Optional + +| Option | Description | +| ------------- | --------------------------------------------- | +| `motion_entity` | A binary sensor to show in the menu (e.g. a Frigate motion binary sensor) and to use to trigger card updates.| +| `frigate_camera_name` | By default, the Frigate camera name is assumed to be the string after the `camera.` in the entity name. This parameter allows that heuristic to be overriden for cases where the entity name does not cleanly map to the Frigate camera name.| +| `view_default` | The view to show by default. See [views](#views) below.| +| `view_timeout` | A numbers of seconds of inactivity after which the card will reset to the default configured view. Inactivity is defined as lack of interaction with the Frigate menu.| + +### Advanced + +| Option | Description | +| ------------- | --------------------------------------------- | +| `label` | A label used to filter events (clips & snapshots), e.g. 'person'.| +| `zone` | A zone used to filter events (clips & snapshots), e.g. 'front_door'.| + + +### WebRTC Options + +WebRTC support allows the use of the ultra-realtime [WebRTC live view](https://github.com/AlexxIT/WebRTC) along with the event browsing of Frigate. A perfect combination! + +Note: WebRTC must be installed and configured separately (see [details](https://github.com/AlexxIT/WebRTC)). + +Live viewing + +| Option | Description | +| ------------- | --------------------------------------------- | +| `live_provider` | Whether `frigate` or `webrtc` should provide the live camera view.| +| `webrtc.entity` | The RTSP entity to use with WebRTC.| +| `webrtc.*`| Any other options in a `webrtc:` YAML dictionary are silently passed through to WebRTC. See [WebRTC Configuration](https://github.com/AlexxIT/WebRTC#configuration) for full details this external card provides.| + + +## Views + +| Key | Description | +| ------------- | --------------------------------------------- | +|`live`| Shows the live camera view, either the name Frigate view or [WebRTC](#webrtc) if configured.| +|`snapshots`|Shows the snapshot gallery for this camera/zone/label.| +|`snapshot`|Shows the most recent snapshot for this camera/zone/label.| +|`clips`|Shows the clip gallery for this camera/zone/label.| +|`clip`|Shows the most recent clip for this camera/zone/label.| + +For the `clip` or `snapshot` view, the most recent clip/snapshot is rendered. This will automatically update whenever the state of the `camera_entity` or `motion_entity` changes. In particular, if the desire is to have a live view of the most recent event, you should configure `motion_entity` to a Frigate binary sensor associated with that camera in order to trigger updates more regularly (the underlying camera entity state does not change often, the motion binary sensors do). + +### Screenshot: Snapshot / Clip Gallery + +Full viewing of clips + +Gallery + +## Card Editing + +This card supports full editing via the Lovelace card editor. Additional arbitrary configuration for WebRTC may be specified in YAML mode. + +Live viewing diff --git a/images/editor.png b/images/editor.png new file mode 100644 index 00000000..f05f4f5d Binary files /dev/null and b/images/editor.png differ diff --git a/images/gallery.png b/images/gallery.png new file mode 100644 index 00000000..832cabe6 Binary files /dev/null and b/images/gallery.png differ diff --git a/images/menu_clip.png b/images/menu_clip.png new file mode 100644 index 00000000..ec3d2f7c Binary files /dev/null and b/images/menu_clip.png differ diff --git a/images/webrtc.png b/images/webrtc.png new file mode 100644 index 00000000..e8c24b09 Binary files /dev/null and b/images/webrtc.png differ