home-assistant / iOS

:iphone: Home Assistant for Apple platforms
https://companion.home-assistant.io
Other
1.59k stars 311 forks source link

Require confirmation not available for Actions #3084

Open henriklund opened 1 month ago

henriklund commented 1 month ago

iOS device model, version and app version iPhone 15pro + iOS 18.1 Apple Watch Ultra2 + WatchOS 11.1 Home Assistant Companion" 2024.9.4 (2024.905)

Home Assistant 2024.10

Describe the bug The "Require confirmation" option is not available for Action (eg. when comparing to Scripts). I have tried to update Companion app to latest and remove / readd the app to the watch both before and after, but require option is not there.

Expected behavior Either Actions are exempt from 'Require confirmation' dialogue (ref. the statement that 'We will stop supporting iOS Actions in the future') or a toggle is added to the configuration dialogue for Actions configuration

Additional context Suggestion is furthermore to allow defining an alias when configuring a Script (instead of using the name of the saved script) if the intention is to nudge users away from Actions. Eg. I use a naming scheme for scripts that is neither readable nor suitable for display on a small watch screen and will thus have to refrain from such a transition

doctorkb commented 1 month ago

I'd add that another approach would be to add a "requires_confirmation" configuration entry available in the YAML for the ios actions... that would be in line with the rest of the actions configuration.

At this point, the "new" approach is insufficient. As noted by OP, using a script requires naming the script the same as you want the title to appear in the App, and also doesn't allow for server-side specification of colours.

Joao-Sousa-71 commented 1 month ago

I'd add that another approach would be to add a "requires_confirmation" configuration entry available in the YAML for the ios actions... that would be in line with the rest of the actions configuration.

At this point, the "new" approach is insufficient. As noted by OP, using a script requires naming the script the same as you want the title to appear in the App, and also doesn't allow for server-side specification of colours.

That’s it!

thegiddylights commented 1 month ago

This is an incredibly inconvenient issue. Adding confirmation prompts without making sure that there is a way to disable them is a major blow to usability — and no, I'm not going to switch over to using scripts, I have quite a few actions set up, and they work just fine as they are.

ovidiupw commented 1 month ago

The owners of the apple watch functionality on HomeAssistant need to take a step back and think about usability (UX) way more than they have been doing it in the past few months. I mean, there's only so many times you can say 'it's not a bug, it's a feature' until people lose trust in you. I did lose all trust. This is the chain of events that triggered it, ordered on the time axis, ascending top to bottom

  1. I had a working apple watch integration which I enjoyed. Colors worked, multiple action dispatches worked without having to wait for each of them to finish before the next one coud be dispatched, colors worked, icons worked etc. (all of this via YAML action definitions). I decided to and was able to implement a solutiom in which the apple watch was the only thing that I needed to control everything I cared about. Not carrying the phone along anymore was a major boost in the UX for me. And satisfying.
  2. Update removes ability to dispatch multiple actions on the same button. Spinner is introduced which blocks dispatching the same action again using the same button until the previous one is finished. Major blow to the usability of increasing or decreasing speaker volume or using the watch as a remote of the TV. Try to get a classic TV remote control and imagine you have to wait 2-3 seconds before you can hit the vol. up or down button again. It's counterintuitive.
  3. Update removed colors and broke the backwards compatibility of the YAML file format so that (2-3 weeks later) I had to majorly refactor my ~100 actions generated via jinja templating to add the new optional yaml fields to reintroduce coloring of actions. Those 2-3 weeks were the worst experience all time using HA on apple watch as suddenly I was left with 100 actions to scroll through that looked the same and no visual cues to differentiate them: so I had to read the text manually. I fell back to not using HA on apple watch at all during that period.
  4. Update changed the format of the actions (how they rendered) and introduced more inner padding. This made fewer action fit on vertical on my watch display. Most probably this is the minor one, but still annoying because now I have to scroll more.
  5. Update broke the watch configuration and no actions would be shown anymore. This required some manual hacks through the home assistant companion app which triggerered rhe regenration of the watch configuration. I could never get it to work with the assist button being enabled (which worked fine before) so now I no longer have the assist button.
  6. Update introduced forceful confirmation of each action without the option to disable it (or at least not documented for actions defined in YAML). This is the thread. We are here and others do mention why this is a problem. I agree with that.
  7. Future: I've been reading that scripts will replace actions. I expect this will be backwards compatible as of functionality and UX and the only thing to change is the YAML file and possibly a few wiring ups between scripts and automations (at worst). I haven't been able to figure that out, but I have seen people saying on github issues that this whole set of apple watch actions issues is to discourage people from using actions. Besides that it is a questionable idea to discourage people from using something in lack of an alternative, I would like to get the apple watch integration owners' take on this.

Look, I'm not here to rant against this. I have described the reality of the past few months for me. The owners here might have had good reasons to do the above, but it doesn't change the reality in any way. The HA apple watch owners need to take backwards compatibility as a requirement and do migration campains when that is not possible.

loopy321 commented 4 weeks ago

I too get the "Are you sure you want to run "XX"? However, even if I reply yes, I also get a neverending spinning circle with "Cancel and use cache".

@ovidiupw I completely agree!
I (stupidly) updated the app and found another annoying watch issue I have to find a fix for... My watch HA actions worked great for more than 1 year without me having to make significant changes, and now it is unusable, again.

ascha191 commented 1 day ago

Just wanted to create the same issue and am glad that others are of the same opinion that this confirmation should be made optional.

bgoncal commented 1 day ago

In the current testflight beta legacy iOS Actions are not required to confirm before running anymore. For now "requires confirmation" will be a feature just for the new types (scripts/scenes).