Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Decky Notifications plugin #473

Merged
merged 5 commits into from
Mar 17, 2024
Merged

Conversation

Firemoon777
Copy link
Contributor

@Firemoon777 Firemoon777 commented Nov 19, 2023

Decky Notifications

Get all your phone notifications instantly synced to Steam Deck. Based on KDE Connect Protocol.

Note: Plugin uses openssl binary, that already shipped with SteamOS. Is it custom binary or 3rd party FOSS?

Checklist:

Developer Checklist

  • I am the original author or an authorized maintainer of this plugin.
  • I have abided by the licenses of the libraries I am utilizing, including attaching license notices where appropriate.

Plugin Checklist

  • I have verified that my plugin works properly on the Stable and Beta update channels of SteamOS.
  • I have verified my plugin is unique or alternatively provides more/alternative functionality to a similar plugin already on the store.

Plugin Backend Checklist

  • No: I am using a custom backend other than Python.
  • No: I am using a tool or software from a 3rd party FOSS project that does not have it's dependencies statically linked.
  • No: I am using a custom binary that has all of it's dependencies statically linked.

Testing

  • Tested on SteamOS Stable/Beta Update Channel.

Copy link
Member

@TrainDoctor TrainDoctor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code is good to go to testing, just make sure to remove "defaults.txt" from the defaults folder before the plugin goes to production. Just a formality since I see you are making use of the plugins directory but the defaults.txt file will be included in the build on the production store if it remains.

Can't wait to give this plugin a try myself, been looking to make or use something like this for ages. Much appreciated!

@TrainDoctor TrainDoctor requested a review from a team December 8, 2023 01:23
@TrainDoctor
Copy link
Member

Was finally able to give this a run myself, works very well but for some reason my local desktop client was unable to pair to my deck. I'll be trying again tomorrow.

@TrainDoctor
Copy link
Member

Also @Firemoon777 if you can remove the defaults.txt from the defaults folder. Your license and other stuff looks good as far as I can tell. Thanks for the awesome plugin that implements the KDE Connect protocol (even if it's just a partial implementation) which is not a simple feat and very worthy of praise.

@Firemoon777
Copy link
Contributor Author

@TrainDoctor, thank you!
I've just removed defaults.txt as you mentioned.

my local desktop client was unable to pair to my deck

I noticed that KDE Connect for Windows sometimes unable to find Steam Deck. But also it losts my smartphone with original KDE Connect for Android, thats why I ignored any PC-related issues during development. But I didn't meet any pairing issues.

Can you provide more details about your issue?

@TrainDoctor
Copy link
Member

TrainDoctor commented Dec 29, 2023

@TrainDoctor, thank you! I've just removed defaults.txt as you mentioned.

my local desktop client was unable to pair to my deck

I noticed that KDE Connect for Windows sometimes unable to find Steam Deck. But also it losts my smartphone with original KDE Connect for Android, thats why I ignored any PC-related issues during development. But I didn't meet any pairing issues.

Can you provide more details about your issue?

I am running KDE Connect on Arch Linux. Basically my android phone detected the deck instantly and paired easily. My phone is on the WiFi (same DHCP lan) as my PC and my steam deck as I was testing on the dock. I could not pair the deck to my PC in this scenario. I'll try with some additional other devices.

@ubergeek77
Copy link

(I'm not a contributor here)

I installed this from the testing repo and it works great, thanks for making it!

However, it looks like Decky's built in toast notifications do not respect the system-level settings on notification sounds by default, and since this plugin does not change the playSound property, notifications from this plugin will play a sound no matter what, even if the user disabled sounds in the Steam Deck settings.

As you can imagine, if someone is texting me quite a few times, these sounds will become a bit distracting 😅

Is it possible to add a plugin setting that allows us to toggle the notification sound on and off? It looks like some info about doing that programmatically is here:

SteamDeckHomebrew/decky-loader#268

@TrainDoctor
Copy link
Member

TrainDoctor commented Feb 15, 2024

This plugin has been running well for me on Stable SteamOS and Prerelease Decky Loader. If another @SteamDeckHomebrew/decky-testers or one of your end-users @Firemoon777 can concur with me I can send this to production.

@safijari
Copy link
Contributor

safijari commented Mar 6, 2024

@TrainDoctor I tested this and it seems to be working fine. It even works alongside the KDE Connect plugin for remote control, though the Deck shows up as two devices on the client, one for notifications and one for control. I'd say this one is good to go.

Copy link
Member

@TrainDoctor TrainDoctor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Apologies that this wasn't merged sooner. Good stuff.

@TrainDoctor TrainDoctor merged commit 9c1bb70 into SteamDeckHomebrew:main Mar 17, 2024
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

4 participants