I installed View Assist and added my HAVPE as a VA device. I instantiated an automation from the "View Assist - Play Music with Music Assistant" blueprint. When I gave a Play Playlist command, the HAVPE responded "Done!" and played no music.
I found a repair saying "View Assist: Play Music with Music Assistant uses an unknown action". The repair text calimed that "View Assist: Play Music with Music Assistant" (automation.view_assist_play_music_with_music_assistant) has an unknown action: view_assist.navigate".
I repaired the blueprint locally by adding a conditional in front of each of the three navigate actions:
- alias: Do we have a screen?
if:
- condition: template
value_template: >-
{% if target_satellite_device_type != 'audio_only' %}true{% else %}false{%endif}
alias: We have a screen!
then:
Looking through the existing blueprints, I see other instances of naked navigate actions:
- Search Wikipedia will fail on audio-only devices due to unprotected navigate
- Play Radio with Music Assistant has an unprotected navigate; it's the last item in the sequence, so radio might still play
- Alarms, Reminders, and Timers protects navigation to set a timer, alarm, or reminder, but will fail on an unprotected navigate when the alarm rings
- Locate Person has one unprotected navigate (if person undefined), although another is protected
- Device Functions is protected, but uses duplicate code for the conversation response and could be simplified
- Device Alerts checks for empty start or end views; I'm not sure if that counts as protection or not
- Show Web Page has no type check at all
- Ask Wolfram uses
browser_mod.navigate instead of view_assist.navigate, but it is protected
While gating the calls to navigate would protect users from quietly failing automations, it's a detail-oriented chore with lots of opportunity for human failure. Likewise, expecting developers to remember every view-only action and protect their calls is failure-prone.
I suggest making a virtual view for audio-only devices and allowing it to noop on navigate.
I installed View Assist and added my HAVPE as a VA device. I instantiated an automation from the "View Assist - Play Music with Music Assistant" blueprint. When I gave a Play Playlist command, the HAVPE responded "Done!" and played no music.
I found a repair saying "View Assist: Play Music with Music Assistant uses an unknown action". The repair text calimed that "View Assist: Play Music with Music Assistant" (automation.view_assist_play_music_with_music_assistant) has an unknown action:
view_assist.navigate".I repaired the blueprint locally by adding a conditional in front of each of the three navigate actions:
Looking through the existing blueprints, I see other instances of naked navigate actions:
browser_mod.navigateinstead ofview_assist.navigate, but it is protectedWhile gating the calls to
navigatewould protect users from quietly failing automations, it's a detail-oriented chore with lots of opportunity for human failure. Likewise, expecting developers to remember every view-only action and protect their calls is failure-prone.I suggest making a virtual view for audio-only devices and allowing it to noop on navigate.