Jami not handling basic message sending/receiving reliably

Hi there,

I’ve been evaluating Jami the past few days and I am a little surprised that basic message delivery is not happening at all reliably between two Android devices with the same version installed on them. (It is the latest Android version available via F-Droid - 20250310-01)

The issue is easy to trigger - on one device, just switch the network you’re on - move from wifi to cell network, or back.

As the issue occurs, things like typing notifications work when one device starts typing, and stops showing when the message is attempted to be sent.

The issue only seems to occur in one direction - one client can send to the other and the messages show up on the other without issue, but the other direction the message gets lost.

This appears to be similar to The issue with network switching causing the app to malfunction has been discovered. (#1731) · Issues · savoirfairelinux / jami-client-android · GitLab - but if anyone’s doing anything with this issue it’s completely unknown.

Speaking of unknown - how do the Jami releases have March dates on them but there’s no activity in the git repository to show that any activity is going on? Both jami-client-android and jami-client-qt repositories have commit dates older than a month. I presume development is being done through another repository and public-facing activity is not happening regularly?

1 Like

https://review.jami.net/q/status:merged+project:jami-client-android

Last commit is from 5 days ago

Nothing links to this in any public documentation that I’ve seen - everything seems to point to git.jami.net:

git.jami.net is a mirror (same for GitHub - savoirfairelinux/jami-client-android: Mirror of Gerrit Jami Android Client). The original repo is located on review.jami.net (cf first line of the README in the repo you linked: git clone --recursive https://review.jami.net/jami-client-android)

Seems the mirroring is broken from gerrit → gitlab since a month. cc @Jami


For your original issue, I guess one dev should look at it, probably a deadlock as the direct connection seems to work (you seems to receive typing notification using the same p2p channel as messages).

1 Like

Sure, ok, but it’s easy to get tripped up on all the conflicting information surrounding the project. I wasn’t looking at the android repo’s readme for further repository information as I’d found what appeared to be the repo - the docs at Introduction — Jami documentation all reference git.jami.net. I wasn’t looking too closely at the android repo as I wasn’t going to be checking it out and building it myself, but the lack of commits was noticeable. I was utilizing the jami-client-qt repo to do a desktop build, and while it does talk about cloning from review.jami.net - but again, a conflict from the other documentation so when you’re working from two places it’s easy to wind up with conflicting info.

Neither location seems to specify that git.jami is a mirror.

Should I file a bug about the documentation or about clarity in the readme files?

I’ve observed something similar. It’s specifically when the Android app is running in the background. The dhtproxy doesn’t send a push notification as it assumes the app is still active (I think), but it’s actually not.

My issue doesn’t appear to be related to background or battery optimization issues. It seems to mostly have to do with initial conversation set-up - the clients finding each other properly and communicating.

I had my son install Jami on his iPhone a few days ago and we used the QR code setup to connect with each other. Immediately it was clear that there’s all kinds of problems with the initial user connection, and while the two devices added each other as contacts, neither one could get a message delivered to the other at that time.

My son sent me several messages and they did appear on my Android device after a time. I sent several back and none wound up on his iPhone.

There’s serious jank going on with the Jami client and just basic setup and usage for messaging doesn’t seem to function at all well. Disappointing.

Mirroring to Gitlab git.jami.net has been fixed.

This explains so much; I could just never put my finger on it.

I have Jami running on my desktop, and I’d often find that messages that weren’t sent from my phone would be sent if I went to my desktop and poked around a bit. Other work-arounds have been enabling and disabling DHT settings – mostly at random, to be honest. And I’ve found that many message delivery issues on my phone are temporarily resolved by force-quitting and restarting the app.

Nothing has worked entirely reliably except the force-quit, and yesterday I encountered a situation where several messages sent from my phone have not been delivered to my wife’s phone, despite me force-quitting the app on both devices. I do see the messages on my desktop.

My wife’s completely given up and practically refuses to use the app anymore; she’s been strangely resistant to my suggesting that she force-quit it occasionally. Oddly, a couple of other family members using iPhones do message me on the app, and those seem to have fewer issues. I’ve yet to convince anyone in the group of 5 to switch to it completely because delivery reliability is apparently important to people, though, so it’s hard to tell just how pervasive the issue is, or when it occurs.

I’ve been assuming the issues were related to DHT. I certainly have more issues when the devices are on the LAN WiFi, although the LAN is obviously not the issue since my desktop Jami has been pretty reliable.

It’s super frustrating - and the public response from the project is “have you tried the latest release”? Like, no, I think most people go hunting for 2 year old APKs as their normal means of obtaining their phone’s software.

Is this project and it’s developers not interested in working with all these volunteer testers to get these absolute basics sorted out? It’s not like it’s a feature-request-fest here in the forums - people just want the basics in the communication between people to work.

But, have you tried the latest release?

1 Like

With all due respect, I do not think these issues are related to “developers not interested in working with all these volunteers”, but rather to the availability of enough manpower to do it (4 developers and 1 graphic designer working part-time on the project, see last link below). As explained here:

“Jami is a small team. Because Savoir-Faire Linux is a free Software consultancy, the size of the active team can and will vary a lot from time to time. Overall, we have a small core team, with several other developers being “loaned” to the project from time to time.” Jammin’ with Jami – Freedom, privacy, snaps | Snapcraft

I am however convinced that the people developing JAMI are really dedicated to the project. Maybe if all the users could consider a small donation, that might help the project going forward (Why donate). I would also like to add that I am only a JAMI user sharing his personal perspective on that matter.

1 Like

I’ve been involved with projects that have less manpower and are much more involved with the community, in so far as they are able to work with people pretty quickly to weed out the most serious bugs in their code to make products that aren’t fundamentally broken.

But here, it’s crickets from the developers.

And here we have a neat update from Jami today stating “Our team has been busy squashing bugs, enhancing the user experience, and preparing some exciting new features for all Jami users. From desktop to mobile, and deep into the core, things are moving fast.”

The basics need some real bug-busting efforts before “exciting new features” - but who’s listening?

I mean, do you not see the major cracks in the project here? Even the donation page you linked to can’t be trusted as it references it’s exciting major release as Eleutheria, from November 2023.

When I’ve had communication back from the Jami project, the claim is that they’re listening, but still nobody from Jami is addressing the issues that people bring up here, and their most helpful response is “try the latest version” - as if we’re not doing that already.

Somebody needs to start taking interest.

They want to operate a commercial product, but this is what kind of love is shown toward the community, and they want to solicit donations? Come on.

2 Likes