refactor: Unify substream actions into substream_{on,off} (#2497)
## Summary
- Collapse `live_substream_{on,off,select}` into a unified
`substream_{on,off}` pair, symmetric with `call_{start,end}`.
- Rename the `camera` field on the former `live_substream_select` to
`stream` (it always was a stream ID).
- Add optional `camera` field to both new actions for targeting a
non-selected base camera.
- YAML configs are migrated automatically; URL bookmarks must be updated
by hand.
## Migration
### Cycling between camera and substream (toggle button)
Before:
```yaml
tap_action:
action: custom:advanced-camera-card-action
advanced_camera_card_action: live_substream_on
```
After:
```yaml
tap_action:
action: custom:advanced-camera-card-action
advanced_camera_card_action: substream_on
```
### Selecting a specific substream
Before:
```yaml
tap_action:
action: custom:advanced-camera-card-action
advanced_camera_card_action: live_substream_select
camera: camera.front_door_hd
```
After:
```yaml
tap_action:
action: custom:advanced-camera-card-action
advanced_camera_card_action: substream_on
stream: camera.front_door_hd
```
### Turning the substream off
Before:
```yaml
tap_action:
action: custom:advanced-camera-card-action
advanced_camera_card_action: live_substream_off
```
After:
```yaml
tap_action:
action: custom:advanced-camera-card-action
advanced_camera_card_action: substream_off
```
### URL querystrings (manual update required)
| Before | After |
| --- | --- |
|
`?advanced-camera-card-action.live_substream_select=camera.front_door_hd`
| `?advanced-camera-card-action.substream_on=camera.front_door_hd` |
This commit is contained in:
committed by
dermotduffy
parent
15e335a647
commit
f18e4cd4b8
+6
-6
@@ -77,10 +77,10 @@ automations:
|
||||
fullscreen: true
|
||||
actions:
|
||||
- action: custom:advanced-camera-card-action
|
||||
advanced_camera_card_action: live_substream_on
|
||||
advanced_camera_card_action: substream_on
|
||||
actions_not:
|
||||
- action: custom:advanced-camera-card-action
|
||||
advanced_camera_card_action: live_substream_off
|
||||
advanced_camera_card_action: substream_off
|
||||
```
|
||||
|
||||
### Fullscreen with display mode and substream switching
|
||||
@@ -117,7 +117,7 @@ elements:
|
||||
advanced_camera_card_action: display_mode_select
|
||||
display_mode: single
|
||||
- action: custom:advanced-camera-card-action
|
||||
advanced_camera_card_action: live_substream_on
|
||||
advanced_camera_card_action: substream_on
|
||||
- action: custom:advanced-camera-card-action
|
||||
advanced_camera_card_action: fullscreen
|
||||
automations:
|
||||
@@ -126,7 +126,7 @@ automations:
|
||||
fullscreen: false
|
||||
actions:
|
||||
- action: custom:advanced-camera-card-action
|
||||
advanced_camera_card_action: live_substream_off
|
||||
advanced_camera_card_action: substream_off
|
||||
- action: custom:advanced-camera-card-action
|
||||
advanced_camera_card_action: display_mode_select
|
||||
display_mode: grid
|
||||
@@ -637,10 +637,10 @@ cameras:
|
||||
automations:
|
||||
- actions:
|
||||
- action: custom:advanced-camera-card-action
|
||||
advanced_camera_card_action: live_substream_on
|
||||
advanced_camera_card_action: substream_on
|
||||
actions_not:
|
||||
- action: custom:advanced-camera-card-action
|
||||
advanced_camera_card_action: live_substream_off
|
||||
advanced_camera_card_action: substream_off
|
||||
conditions:
|
||||
- condition: interaction
|
||||
interaction: true
|
||||
|
||||
Reference in New Issue
Block a user