Email or username:

Password:

Forgot your password?
dansup

I've seen people mention that the Loops push notifications are dark patterns, and that is not my intention at all

I'm not encrypting the notifications and they can be collected by various parties (NSA, Apple, Google) so I didn't want to include any more metadata than I needed to

Hope you understand!

#loops #pushNotifications

15 comments
Emelia 👸🏻

@dansup why not just encrypt the notifications?

dansup

@thisismissem I will eventually, I don't know if Expo even supports that, because that is what I'm using for now.

Lyyn ☮️🦄 #2024-02-16

@dansup @thisismissem I am not sure how it works in the Apple ecosystem, but on Android the solution most apps use is sending just a ping in the push message, and then the app fetches everything it needs and displays the notification itself. It adds some latency, but not very noticeable.
I really think that what Google and Apple calls push notifications (where the push message actually contains all the data for the notification) is a bad thing and should not be generally used. Especially because it's really inconvenient to encrypt.

@dansup @thisismissem I am not sure how it works in the Apple ecosystem, but on Android the solution most apps use is sending just a ping in the push message, and then the app fetches everything it needs and displays the notification itself. It adds some latency, but not very noticeable.
I really think that what Google and Apple calls push notifications (where the push message actually contains all the data for the notification) is a bad thing and should not be generally used. Especially because it's...

alina 🌸

@lyyn@mastodon.ml @dansup@mastodon.social @thisismissem@hachyderm.io

> ping in the push message, and then the app fetches everything it needs and displays the notification itself

yeah afaik on ios that requires a special entitlement by apple which they are quite unwilling to give away

Григорий Клюшников

Lyyn ☮️🦄 #2024-02-16, Mastodon's push notifications work by sending the data in the notification itself, encrypted by your server. This makes it more reliable than just a ping that "something happened" that would make the app do an API request to retrieve the actual notification.

Unfortunately, you can't sidestep the need for a centralized notification service if you care about battery life, which I imagine most people do. So end-to-end encryption will have to do.

Lyyn ☮️🦄 #2024-02-16

@grishka @dansup What I proposed does use centralized notification service (although changing it to UnifiedPush would be preferable, and it's even worse there wrt encryption afaik) and does not drain battery.

Why do you think it's more reliable? I think the only downside is that the app needs to do another request, process all the state, and only then can it show a notification, which, as I said, adds latency.

Григорий Клюшников

Lyyn ☮️🦄 #2024-02-16, if your network connection is unstable, e.g. due to a weak signal or being on a subway train, there might not be a chance to do that request. You have to always assume that any network request can fail, and given enough users, it will fail, every day, thousands of times. So if you can avoid making an additional request, do avoid it.

Lyyn ☮️🦄 #2024-02-16

@grishka @dansup Agreed.
I'm still skeptical about WebPush's encryption, partly because I remember there being some differences between WebPush and UnifiedPush which make them incompatible when encrypted.
And in the end the app decrypts the message, right? Or is it the "distributor" (in UnifiedPush terminology)? I would prefer for the decryption key to not leave the app.

Lyyn ☮️🦄 #2024-02-16

@grishka

> you can't sidestep the need for a centralized notification service if you care about battery life

Why is that? I believe UnifiedPush can replace Firebase with comparable battery usage (in case you only use apps that support UP).

Григорий Клюшников

dansup, just write your own code to do it. Stop relying on libraries so much to do things for you.

Jared White

@dansup This seems *totally fine* for an MVP. Maybe some version down the road can improve on it…

Surya Teja K

@AstaMcCarthy @dansup I think not because UnifiedPush doesn’t support iOS

LPS

@dansup
I guess it is simple enough to disable notifications

Go Up