pilot51 / voicenotify

Android app that speaks notifications
https://voicenotify.app
Apache License 2.0
144 stars 55 forks source link

Improve UX of TTS Message option #134

Open pilot51 opened 1 week ago

pilot51 commented 1 week ago

A Google Play review mentioned that the TTS Message option is a little convoluted. I agree it could be better.

Currently my idea, as detailed below, is to use tags instead of plain text for each message component.

Robio commented 1 week ago

Hi @pilot51, I'm the reviewer who inspired this ticket. :) This sounds pretty good, although I'm not entirely clear on your description. But here's a thought: How about a list of checkboxes to select kinds of content to include, with grippers to drag those items into the order the user prefers (which is what I assume rearranging the #tags does in the current version):

≡ ▣ App Name ≡ ▣ Ticker ≡ ▣ Subtext ≡ ▣ Content title ≡ ▣ Content message ≡ ▣ Content Info ≡ ▣ Big content title ≡ ▣ Big content summary ≡ ▣ Big content text ≡ ▣ Text lines

BTW, I'm entirely unclear on what most of these descriptions mean. App Title (I've changed to App Name for clarity) I understand. Content Title and Content Message I figured out from using the Test feature in Settings. But I think they all need either a description or names that are more self-explanatory to end-users, like...

As for the rest, I don't have any idea what they mean. :)

pilot51 commented 1 week ago

Aside from being very easy for me to implement, the main reason it's a text field instead of just an order is because punctuation causes TTS to sound different and I don't want to force anything on the users.

As you can see by the current and old defaults shown in the description, I couldn't settle on how to separate the components to prevent TTS from making it all one sentence. Originally #A: #T, then #A. #C. #M., and now newlines instead of periods.

This also allows users to do things such as Notification from #A with title #C which, with the test notification, would become "Notification from Voice Notify with title Content Title".

I like the idea of essentially making features "open source" for regular users to change however they want even at an advanced level, especially if it reduces my workload as a developer. Though now that I think of it, that makes a case for basic and advanced modes for the setting, where basic would be something like your suggestion.

As for the descriptions, I agree they aren't very clear and could use improvement. Some of them I don't totally understand myself. I carried them over mostly verbatim from the names of Android's notification APIs, and the documentation doesn't help much. Some are shown differently between versions of Android, so I can't necessarily rely on my experience to form an accurate detailed description.

#T is currently the ticker message, which used to be shown briefly in the status bar the moment a notification was posted, but on recent versions of Android it isn't shown anywhere. I've considered adding a format option for timestamp, but that opens a whole other can of worms with how to format the timestamp itself and there isn't really any demand to justify the effort.