That is on the off chance that the message is actually delivered.
Trying to get omemo up and running, but some clients (pidgin) have next to no support for it, while others only support it, and it seems it is only supported on ejabberd as of very recently, with documentation on how to enable it consisting of a comment line in a config file.
I am not inclined to positively review a chat protocol that frequently fails to deliver messages.
OMEMO only really needs XEP-0163, the thing which also gives you avatars and such, supported nearly anywhere. There is some problem that you can't access the key of someone who did not add you yet to the contact list on older implementations [1] but that does not make it unusable.
> I am not inclined to positively review a chat protocol that frequently fails to deliver messages.
XMPP delivers, if you encrypt them with the wrong key it can do nothing about.
What part of XMPP is doing that? I think you're talking about a bug in an implementation of XMPP not the protocol itself. Its like saying you go to an address and get the wrong website. Hard to blame an issue like that on HTTP rather than a server or a client that implements it.
Is a protocol worth anything without an implementation?
Is a protocol good even if it only has poor implementations?
XMPP relies on clients having the Carbon Copy plugin installed.
Some clients have it installed, some clients do not.
If I have 3 devices connected to XMPP, which one gets a message sent to me is rather hard to determine. Often times it is the one I have most recently sent a message from, but other times it is not, and I will not get messages delivered to any of my other devices until I physically go home and log out of my desktop.
- Pidgin: Just take a look at their bug tracker. You will not have any problems finding tickets requesting essential features which are 6 years and older (e.g. Message Archive Management). So unless the Pidgin devs get some done I would not use their client (Gajim is a much better alternative, especially since the 1.0 release last year).
- ejabberd OMEMO: Actually, I don't know what the ejabberd devs were thinking when they changed their default config to disable OMEMO. They told something about having a hard time tracking down issues with OMEMO enabled. Well, kinda makes sense from a developers perspective, but given the fact that OMEMO is end-to-end encryption, I wonder what they were expecting. Nevertheless, disabling OMEMO by default on the server is just a stupid idea.
- message delivery: I had problems with that too, but ultimately it was just a problem with some ejabberd setting (I think it was mod_stream_mgmt: resend_on_timeout: if_offline) [1].
[1] https://docs.ejabberd.im/admin/configuration/#mod-stream-mgm...
force_node_config:
## Change from "whitelist" to "open" to enable OMEMO support
## See https://github.com/processone/ejabberd/issues/2425
"eu.siacs.conversations.axolotl.*":
access_model: whitelist
[1] https://github.com/processone/ejabberd/blob/master/ejabberd....http://deb.debian.org/debian/pool/main/e/ejabberd/ejabberd_1... (debian/patches/ejabberd.yml.example.diff)
When I got a MacOS machine up and running, I installed Adium (top result still if you go around looking for a MacOS XMPP client), also a dead project.
On Android, the top XMPP client does not support OMEMO and the new hotness XMPP client does not support OTP!
I have a legacy client on Android and Pidgin half hacked together with random plugins on my Windows boxes and I forget what in the world MacOS is running because I have it turned off half the time because the more clients I have connected the more problems I have and holy crap this is why Slack is a great product.
XMPP has had 20 years to solve these problems, and part of their problems of course is that the base protocol wasn't designed to solve these issues out of the box.
But, from the end user's perspective, Telegram, Signal, What's App, Slack, Discord, and Teams, all "just work"!
Same.
Well, it's not the only reason I'm in contact with less people now, but it's a major component.
Google stopped XMPP compatibility before FB messenger did. I believe the latter still had an interface to the XMPP world up until 2015.