mirror of
https://github.com/binwiederhier/ntfy.git
synced 2026-05-09 08:26:00 +02:00
[GH-ISSUE #81] UnifiedPush Linux distributor #64
Labels
No labels
ai-generated
android-app
android-app
android-app
🪲 bug
build
build
dependencies
docs
enhancement
enhancement
🔥 HOT
in-progress 🏃
ios
prio:low
prio:low
pull-request
question
🔒 security
server
server
unified-push
web-app
website
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/ntfy#64
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @binwiederhier on GitHub (Jan 2, 2022).
Original GitHub issue: https://github.com/binwiederhier/ntfy/issues/81
See #75
@binwiederhier commented on GitHub (Jan 2, 2022):
@karmanyaahm I briefly looked at the code and I have a few issues with it; not because of style or anything, but because I think you're doing the legwork for stuff that the CLI should provide.
Persistence: For instance, you are implementing persistence for connections, and you're doing all of that in the
cmdpackage. IMHO this should probably live in theclientpackage. Just like the Android implementation, this should handle persistence of topics and messages, which would make deduping trivial. It is admirable that you did this stuff, but I think it should live in a different place, and also without an ORM. 😬 If you like, we can discuss designs and you can work on it; or I can do it eventually (may take longer, obviously).Side note "deduping": I had planned to implement
?since=<messageID>, but I never got around to doing that. That should greatly simplify deduping without having to store all message IDsDynamic topics vs config file: Right now the
ntfy subscribecommand is purely an "edit config file and restart" kinda thing as opposed to "here's an API to dynamicallyMagical "unifiedpush" command: I'm not sure if I like this, Does this not feel like a hack to you? I don't have a better way though.
General use case: Excuse my ignorance, but I'm struggling with the general use case a little: You made a
distributorstruct with public methods, but I don't seeRegister()andUnregister()being used anywhere. Is there something missing? Will other applications be able to use the distributor via dbus?General use case (follow up): Wouldn't it be better for apps to just use the ntfy
Clientto subscribe to messages directly instead of the indirection via the distributor and such? With Android I see the reasoning with battery savings due to a shared connection, but for a normal Linux system, I am struggling a little with why this is necessary at all.@karmanyaahm commented on GitHub (Jan 3, 2022):
clientor aclient/db--enable-unifiedpushor--distributoror--distributecould be better? I didn't really put much thought into the naming of the options originally; I just picked--unifiedpushbecause it was simple[1] https://github.com/NoProvider2Push/dbus/blob/main/distributor/distributor.go
[2] https://unifiedpush.org/spec/dbus/
@karmanyaahm commented on GitHub (Jan 13, 2022):
Just want to let you know I've been really busy the past few weeks, but I'll get back to this soon.
@binwiederhier commented on GitHub (Jun 3, 2022):
@karmanyaahm Shall we close this and re-open when you get to it?
@karmanyaahm commented on GitHub (Jun 3, 2022):
Oops yeah 👍