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 PUT method to the server specifications #41

Closed
wants to merge 1 commit into from
Closed

Conversation

p1gp1g
Copy link
Member

@p1gp1g p1gp1g commented Feb 21, 2024

Adding support for the PUT method will make UnifiedPush compatible with the legacy simple push protocol (from firefox os). The most known project supporting it is Telegram: https://core.telegram.org/api/push-updates (it has been tagged as UP compatible by mistake ATM).

WebPush (rfc8030) doesn't specify any PUT method, so this doesn't conflict with its support.

This is a backward compatible change.

Example of issues where users talked about it:

@drizzt has done a PUT to POST gateway for Mercurygram for this:

Ping for the owners of a distributor project:
@binwiederhier (you won't have to do anything, ntfy supports PUT for UnifiedPush endpoints already :) ) @iNPUTmice

To be compatible with the legacy simple push protocole
@p1gp1g
Copy link
Member Author

p1gp1g commented Feb 21, 2024

@iNPUTmice
Copy link

Hi,

sorry for being negative here.

My personal vision for UnifiedPush is that in a not too distant future we reduce the entire server side specification to:

The URL returned by the Distributor is a RFC8030 endpoint.

In that world UnifiedPush is basically just the Android (or DBUS) API¹ and everything else is delegated to appropriate RFCs.

I understand the desire of wanting to be compatible with everything (See the weird workaround for Matrix that quasi part of UnifiedPush) and that’s OK for UnifiedPush "1.0" because UnifedPush needed to be compatible with something to get of the ground and find some adoption. But with more maturity I think "UnifiedPush 2.0" is better of restricting itself to one, well defined standard.

And Matrix and Telegram just need to implement proper WebPush support. (They need this anyway if they want to work with Browsers; And everyone wants to work with Browsers)

IDK, merge this if you want. In a UnifiedPush 1.0 world it doesn’t hurt but IMHO this is not something that should be brought over to UnifiedPush 2.0.

¹: And a library for said API

@p1gp1g
Copy link
Member Author

p1gp1g commented Mar 22, 2024

@iNPUTmice Thanks for your review. Since we plan to extend WebPush support in a near future, that may not be a good idea to introduce this kind of change at this moment, to avoid introducing backward incompatible change.

I keep that PR open for the moment

@p1gp1g p1gp1g closed this Aug 10, 2024
@p1gp1g p1gp1g deleted the server/put branch August 10, 2024 07:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants