companion icon indicating copy to clipboard operation
companion copied to clipboard

[Feat] Companion Notification Service

Open thedist opened this issue 1 month ago • 5 comments

Is this a feature relevant to companion itself, and not a module?

  • [X] I believe this to be a feature for companion, not a module

Is there an existing issue for this?

  • [X] I have searched the existing issues

Describe the feature

Similar to how Companion can make a request to check for version updates, I would like for some capability for Companion to check to see if there are any notifications either for Companion itself, or notifications submitted by module developers that would show to those who have connections for those modules.

If a module developer needs to let users know that there's an important change that requires them to update, there's currently no easy way to do that. We can alert users to changes with logging but that only helps after they update, it doesn't help communicate changes that need them to update.

The notifications should also be able to have some metadata to allow for targeting. For example if a module updates to support some new hardware, a notification could be submitted that's set to be visible to all users of that module prior to the update (users already on the update wouldn't need to see it, as they are up to date).

This may have an added benefit of encouraging users to stay up to date with future releases and not just stick to old versions if they see notifications of what has improved specifically with the modules they use.

Usecases

An example of where this would be beneficial is the Twitch module, which I'm doing a significant rewrite and changing to the Device Code Flow which was recently rolled out by Twitch. Such a change would require letting users know they would need to reauth, and also in the future I do plan to shut down my servers that have been handling the OAuth Authorization Code Flow process so far (the shutdown wont happen until plenty of time for migration has been given).

By having some sort of notification service I could submit a notification that will be shown to users of my module who haven't updated Companion that they would need to update Companion to use the new version of the module before some date.

thedist avatar Jun 04 '24 11:06 thedist