Thinking about how to add push notifications to flotilla for closed communities — since push notifications have to be sent from a server, I need some way to get access to auth-gated content. The simple way to do this would be to just share the user's own session with the push server, but for obvious reasons that's a no-go.

The cleanest solution I can think of would be to allow an active NIP 46 session to delegate permissions to another session. All I really need is authorization to sign a `22242` event on behalf of a user.

Below is a draft NIP that introduces a `delegate` method to NIP 46 which "locks" the delegated session to the initially requested permissions:

https://github.com/nostr-protocol/nips/pull/1795

nostr:nprofile1qy88wumn8ghj7mn0wvhxcmmv9uq32amnwvaz7tmjv4kxz7fwv3sk6atn9e5k7tcpzamhxue69uhky6t5vdhkjmn9wgh8xmmrd9skctcprpmhxue69uhkg6tjv43hgmmj0yh8jctzw5hx6ef0qy28wumn8ghj7ctvvahjuat50phjummwv5hsqgr40yrkmxhlpfx0mma8ugz97fyxclja30rrhlrtg5uhyvlph07trytzxqzw

Reply to this note

Please Login to reply.

Discussion

Pokey is the best solution. :)

Not for iOS it ain't

No one uses iOS for anything in Nostr anyway.

They will soon

yes let's ignore 1.3 billion people and 60% of american users 🙄

Seems to be working for Amethyst.

Seriously?! 🧐 There are billions of potential iOS users and large majority of people I talk to daily here are Damus users on iOS.

Yes, most of Nostr doesn't work well on iOS. Like how on Damus you need an extra hidden script to activate zaps. It's all locked down from users.

It's like iOS Nostr users are stuck in 2023.

I don’t disagree Apples “rules” makes it challenging, but you can’t claim there are zero users, and devs should still look to support iOS.

I don't claim they have zero users. I claim they are not using the real Nostr. Just restricted Nostr apps that are all centralized on themselves and don't provide the "Nostr" way of doing social media. The OS forces apps to centralize on themselves.

For instance, there is no way for an iOS app to run notifications unless that app also runs the notification server. There is no way to create signing apps on iOS. There is no way to run a relay on the OS. There is no way to pull Nostr events from any other app. There is no way to share a database. There is no realistic way to side load apps or have separate Stores. There is no way to buy Bitcoin without going through Apple Pay. All of those things must be provided by each Nostr app independently. Which just re-creates the centralization effects we see on regular social media, like Twitter.

Ideally, Nostur, Damus and Primal would run overt the same database. The user would be then free to choose which app he/she wants to use without having to re-download every event again.

It also doesn't support the nip 29 membership use case

Not yet. It's just a matter of time

It doesn't, but.. nothing does.

Pokey doesn't seem to have a predominant use-case just yet. In theory it sounds good- then the possibility of native notifications seem to collapse the idea.

I think pokey can serve as a really good platform for apps who can't figure out push notifications as quickly as they can develop a mobile client.

For instance- once I form communities, I will be dependent on only the apps which can cater to them. At this time, Flotilla is the only app that truly does this. If I am more of an operator than a client dev- I'm SOL.

The addition of nip-29 support in pokey would allow communities who use flotilla to furthermore add notification support for their own custom clients down the line. As they progress into sovereign ecosystems, pokey can probably get left behind for that subset of users, at least in regards to that specific ecosystem's notifications.

I think pokey might need some work to feel more reliable and feature-rich.. but it seems like a really good option for some developers who aren't sure how to go full native.

All of this aside- I think flotilla alone will require some granual notification support that we haven't seen yet in any client. Once communities do scale, our notifications will easily begin to overwhelm. I can already imagine channel-level controls for push notifs.

It's a lot to imagine doing, but it seems rather logical to me, in consideration to all of the people and developers who might use and bridge with both pokey and flotilla, and relaytools and so on.

I see pokey as the future Amber for notifications and I think most mainstream client devs will try to avoid it- but embracing it could be very powerful for the ecosystem.

what about Oxchat's push system? i know in the apl it uses the oxchat relay but maybe can be forked and used for the relays 's space?

I like the initial design, but I think it's missing a lot of important stuff. Could be a good starting point though, the architecture makes a lot of sense.