Follow

Is there *any* free software federated messaging app that works consistently fine on PC, iOS and Android? It appears there isn't, despite the efforts of the and various clients.

· · Web · 6 · 3 · 3

@tagomago there are basically no other "free software" federated protocols for messaging so I guess no...

But you could always help to improve #XMPP clients for example

@jr Sure, I contribute and donate periodically to some of them. Still, not quite there yet.

@tagomago FOSS always takes time compared to comercial alternatives...

@0 Yes, besides the good old email nobody replies nowadays apparently.

@tagomago I don't have any problem with Matrix, at least when not using matrix.org as my homeserver.

@LieuweR Thanks! Most issues are with iOS (friends use it 😓), where both Matrix and XMPP apps seem to fail at showing notifications and staying online when the app is on the background. iOS looks specially tricky on this. With XMPP I can assure it happens, both with ChatSecure and Siskin IM. Also, I read several bad (recent) reviews on the Riot.im page on the AppStore: apps.apple.com/us/app/vector-i

I'm afraid of recommending it to friends and endure their complaints once again :blobsweats:

@tagomago Hmm, I don't have experience with iOS, but I've heard about notification issues there somewhere iirc. That's a shame :/

I don't really think 4.0/5.0 is _that_ bad, I guess you can try it out yourself first for a while (joining some public rooms) and test if everything works out?

If enabled by the user (and homeserver) Matrix uses Apple's push system to notify the app to fetch new messages. And I think the devs used Riot on iOS too, but I'm not sure.

@tagomago @LieuweR

> and staying online when the app is on the background. iOS looks specially tricky on this.

Just to clarify - it's *impossible* for an app to stay online on iOS - this is just how Apple designed their mobile system and the only way to go about it is to use APNS (push).

We do everything we can so #Siskin delivers notifications reliably, but if that's not happening then please do report on github: github.com/tigase/siskin-im/is so we could investigate and hopefuly improve 🙂

@tigase @LieuweR

Thanks for the explanation! Just curious about one more thing: I read iOS behaves differently with certain apps to ease the notification system for them, like WhatsApp. Is this true? Why some apps notifications seem to work perfectly and others don't? Thanks!!

I think the notification issue is just something that needs to be polished out, both on the client side and server side (push component).

Siskin had issues when I tested it on friend’s phone but ChatSecure worked better. Not perfect (as it sometimes delivered dozens of notifications for typing etc.) I heard Siskin Beta fixes some of these issues but sadly I don’t have a phone to test it and I burned some iOS friends already… :(

Hope this improves with time!

@wiktor @tigase @LieuweR

Thanks!!! Neither do I have an iPhone, so same thing happened to me with my iOS friends... 😅 I tried ChatSecure on one, Siskin IM on another. Both show similar problems. They work at first, while they are online, but after a while they don't receive anything if they don't reopen the app. It's been frustrating for them as well as for me. I have to say it also happens on Android with Conversations sometimes, although it works better.

@wiktor @tigase @LieuweR

Also, the notifications received on ChatSecure were kind of weird, they didn't show a snippet of the message (an encryption thing, I assume? But then again, WhatsApp does show snippets?), and that notification didn't stay on if dismissed on the block menu. Not the normal behavior, as per the users said.

Yep, iOS kills the app after 30 seconds if you navigate outside of it. Someone claimed that this was actually a bug in iOS but I can’t find the reference now.

One way or another push should awake the app and display proper notification. Currently with iOS clients it can trigger notifications for non-body-messages too (like typing notifications or read markers). Not good.

I don’t know if apps can interact with push content if it’s encrypted. Whatsapp displays encrypted messages content too or just the plaintext ones?

@wiktor @LieuweR @tigase

Supposedly all WhatsApp messages are E2E encrypted... But I read something about how that was managed (not in a very secure way iirc) to make them appear on the notification snippets.

@tagomago @wiktor

For Android, that's easy. A notification can wake the app up, to fetch the messages, decode them and display them.

I don't know if iOS apps can do this.

@tagomago @LieuweR I'm not sure about different treatment of certain apps (though, it can be possible) but Apple Push Notification system allows differentiating priority of the notification, and low priority notifications could be dropped.

We do use high priority notifications, but once we make request to Apple servers to send notification we have no idea whether it was delivered or not.

On the note of "Whatspp works" - please take into account, that XMPP is federated and push has to be delivered on s2s.

@tigase @LieuweR

Oh, so iOS APNs is a service hosted on Apple servers?? I thought that was handled on the device.

@tagomago @LieuweR No, APNS is Apple service (and Google has it's own version).

The thing is - Apple forbids application to run in the background (and maintain active network connection - which completely breaks instant messengers!) so the only way for your app to receive instant notification about something is for the server to send that notification to Apple's APNS server, which then notifies device.

Please keep in mind, that Google is also pushing development into this direction.

@tigase @LieuweR

Ugggh, this is crazy. I didn't know things were sooooo bad for developers...

@tagomago @LieuweR Well, there is *some* merit to using PUSH on mobile devices (battery usage) and there is even dedicated XEP about that (xmpp.org/extensions/xep-0357.h)

@tigase @LieuweR

Indeed, but what I would expect is that the push services are managed independently from the manufacturer control.

@tagomago @LieuweR They are not. It would be awesome if you could just select independent PUSH server, but this should also be controlled somehow, because I could easily imagine each app wanting to use it's own dedicate push service, which would be like in pre-push times with each app maintaining it's connection.

Ideally, on your device you install "push provider" (which follows OS API and handles unified calls under defined URI)... but for now we are stuck with APNS/FCM

@tagomago @LieuweR Hi! I use #riot with #android, my familly with #macos and #iOs #linux and #windows. And it’s working very well. For free (like a beer) and it’s free (like freedom)! It’s not perfect, but I can recommand it for everyone is concerned by privacy. 😎

@tagomago

yes, converse.js - this works everywhere where you have a browser.

But i guess that is not what you search for.

As far as i understand, if you don't need end to end encryption, xmpp and matrix clients work fine. windows generally has not that good support, but i think matrix works better there, using riot-desktop.

@fruechtchen Thanks, yes it doesn't have to be the very same app, just a fine working client. It's specially troubling on iOS. On Android there's Conversations which is great, even though it fails to show notifications and stay online so many times on some devices/configs.

@tagomago

i've read that the XMPP IOS clients work roughly fine work most things, but their bug tracker contains many bugs. (chatsecure)

But i guess you tried that already, otherwise you probably wouldn't ask this questions. :D

However, i think matrix is generally better supported on IOS, because a company is backing it. there's a plan to port conversations over to IOS, i think. but it will still take time.

@fruechtchen Yes, I tried ChatSecure and Siskin IM, and both handle notifications poorly, which for me is a no-go.

I think I should probably give Riot.im a try, even though I encountered some recent bad reviews on the App Store like I said... and see what happens.

Thanks for the info on the Conversations port, didn't know about that!

@tagomago I think matrix is going to be your best bet right now. Riot.im *should* handle notifications on iOS without problems, because it uses Apple's APNS for sending notifications to the user. XMPP (iirc) doesn't provide a way to use APNS (or other external push services) yet, which is why notifications in the background don't work.

@jcgruenhage Thanks!! Apparently the XMPP iOS client Siskin IM does use the APNS, but it's not perfect yet, so...

@tagomago I saw someone mention email and got reminded of #DeltaChat
Don't know whether it would suffer from same issues as other clients though.
Sign in to participate in the conversation
Mastodon

Server run by the main developers of the project 🐘 It is not focused on any particular niche interest - everyone is welcome as long as you follow our code of conduct!