Email or username:

Password:

Forgot your password?
Delta Chat

Often overlooked from our "but e-mail!" skeptics: Any sufficiently advanced P2P messenger will eventually re-invent a custom, partial form of e-mail ... because users want to communicate when their apps are offline or not foregrounded and active at the same time. See briarproject.org/download-bria for a recent example.

Delta Chat goes the reverse route by providing a secure and interoperable e-mail based messaging experience and then adds P2P tech like webxdc.org on top.

14 comments
rakoo
@delta

This begs the question: when will we see a version of Delta Chat that is fully P2P, essentially a mail-server-in-my-smartphone. Sounds like a stupid idea until it doesn't. If the phone of my correspondent is up, no third-party. If it isn't, I can contact their backup, vps-hosted mail server thanks to... MX priorities. Everything is there already.
Delta Chat

@rakoo stay tuned :) but we will not compromise on reliability, efficiency and ease of use which means we tread carefully. Instead of a distributed hash table (dht) we are to use the massively scaled e-mail system for bootstrapping P2P connectivity and paradigms. Any P2P system needs a bootstrapping mechanism, if not email it would be "root" servers and they are way less federated and decentralized than email :) but more when the time comes as we prefer delivering working code not ideas.

Felix Urbasik

@delta @rakoo I think P2P messaging has too many hurdles to overcome and is a big technical challenge. First there is the NAT/Firewall problem and second there is smartphones' battery optimisers which essentially forbids keeping a connection at all times.

Come to think of it, I haven't used DeltaChat in over a year, but I love the idea. How does it handle mobile push notifications (if at all)?

Lyyn ☮️

@fell @delta @rakoo I see people blame optimizers for forbidding persistent connections, but I prefer thinking that it is a conceptual problem with mobile environments. In the end to keep the connection you need some program to be loaded, and it can consume RAM and run at random moments. It should be possible to completely kill a program and it still should work correctly.

Delta Chat

@lyyn @fell @rakoo surely, push notifications are a complex thing only arising because mobile OSes prefer to prevent apps from just sitting there, listening for network activity. dontkillmyapp.com/ exists for good reasons.

Felix Urbasik

@delta @lyyn @rakoo I think the real reason is because (Android) smartphones want to suspend the actual CPU whenever possible and receive notifications via the less power hungry baseband modem. AFAIK it's capable of maintaining simple TCP connections on a very low level, which is what Google's FCM service is.

rakoo
@fell

Read somewhere a loooong time ago that the reason for that is that some applications were doing stupid stuff like sending packets all the time, essentially having a constant use of the network, just to check for new content. When all applications do that, each on its own clock, the battery doesn't last very long.

Which is a shame because a proper application without FCM and proper implementation is virtually invisible. Keeping a TCP socket open costs nothing, even from an app. But it's always the same: if the consequence is that the battery is bad, then the one that is blamed is Google/Apple, not the app maker.
@delta @lyyn
@fell

Read somewhere a loooong time ago that the reason for that is that some applications were doing stupid stuff like sending packets all the time, essentially having a constant use of the network, just to check for new content. When all applications do that, each on its own clock, the battery doesn't last very long.
Lyyn ☮️

@rakoo @delta @fell I used Signal on websocket without FCM and had a feeling that battery life is not perfect. I believe Signal spent some effort not to do it the stupid way.

Delta Chat

@lyyn @rakoo @fell in our measurements delta manages to consume less battery when there are no gplay services as it can do efficient idling. Google fcm and play have their own overheads even if their purpose it to prevent apps from consuming too much battery. With the upcoming FCM Push Service integration for Chatmail users we might redo these measurements but there is a wide variety of setups on Android so not so easy.

Lyyn ☮️

@delta @rakoo @fell Hmm, if you are integrating FCM into Chatmail do you have plans to add UnifiedPush support? I saw a discussion thread on your forums, but it was closed 3 years ago.

rakoo replied to Lyyn
@lyyn

Not a delta dev, just my opinion: UnifiedPush is useless here. Either you want to integrate with FCM because reasons, or you use the native IMAP IDLE that doesn't consume much. There is no need for an intermediary because there is no need to make it pluggable.

UnifiedPush is useful for apps that don't use a protocol with a proper push mechanism even though it's important for the app to work. If anything it's a confirmation that HTTP is crap and should not be used *that* much.
@delta @fell
@lyyn

Not a delta dev, just my opinion: UnifiedPush is useless here. Either you want to integrate with FCM because reasons, or you use the native IMAP IDLE that doesn't consume much. There is no need for an intermediary because there is no need to make it pluggable.
[DATA EXPUNGED]
rakoo replied to DELETED
@lyyn

There already is a standard though for sending messages, that doesn't consume much and can interleave multiple payloads, it is XMPP and is specified by the IETF. In fact FCM allowed XMPP at some point. I'd agree with you that XMPP should replace all those reinventions and both Google and Apple should use it, but alas.

It totally makes sense to use UnifiedPush instead of websocket though, because websockets are a hack because using HTTP here is silly, and it requires specific machinery. It's easier to rely on another party. Deltachat isn't the same: there is something that works natively, that should be the preferred way of doing notifs
@delta @fell @grishka
@lyyn

There already is a standard though for sending messages, that doesn't consume much and can interleave multiple payloads, it is XMPP and is specified by the IETF. In fact FCM allowed XMPP at some point. I'd agree with you that XMPP should replace all those reinventions and both Google and Apple should use it, but alas.
Григорий Клюшников replied to DELETED

Lyyn ☮️🦄 #2024-02-16, Mastodon doesn't use UnifiedPush, it uses a WebPush -> FCM relay. There is currently no way to receive push notifications without Google services or at least MicroG.

silverpill

@delta

>Any sufficiently advanced P2P messenger will eventually re-invent a custom, partial form of e-mail

That's correct, pure P2P is a pipe dream. The solution, however, is federation, and email is only one protocol among many.

ActivityPub should work just as well, but it is modern, extensible, with a rapidly growing userbase, and may eventually replace email. Consider supporting it. The secure fediverse messenger still doesn't exist, and many have promised to build one, but you can be the first who actually delivers.

@delta

>Any sufficiently advanced P2P messenger will eventually re-invent a custom, partial form of e-mail

That's correct, pure P2P is a pipe dream. The solution, however, is federation, and email is only one protocol among many.

ActivityPub should work just as well, but it is modern, extensible, with a rapidly growing userbase, and may eventually replace email. Consider supporting it. The secure fediverse messenger still doesn't exist, and many have promised to build one, but you can be the first...

Go Up