Hello everyone! I currently selfhost a matrix server but, seeing everyone talking about xmpp, I decided to try again with that one. I did try about 8-9 years ago but couldn’t make it work (don’t remember the issue, probably pebkac).

My requirements are:

  • e2ee (I see OMEMO is the solution for this);
  • audio/video calls (looks like all the main clients/servers supports this with SIP or similar);
  • whatsapp bridge: this is very important as I currently use my matrix with element to chat (not calls) with all the whatsapp contacts.

Would be nice if the server runs with docker images (but I see Prosody has the option so not an issue).

So basically I am a bit stumped only on the whatsapp bridge thing. I see some github repos for that but they all seem quite old.

Any help, pointers, suggestions would be appreciated.

Thanks!

  • @[email protected]
    link
    fedilink
    English
    8
    edit-2
    8 months ago

    As you’ve mentioned, I highly recommend you look at Prosody for the server. It is by far the easiest, but also really really good. The only thing ejabber might be better at is for extremely large deployments with failover and load balancing.

    XMPP doesn’t use sip, it has its own protocol for voice and video calls (called Jingles). All servers, afaik, support it. On the other hand, SIP/RTP servers such as FreeSwitch and Asterisk do support Jingle bridging!

    OMEMO and GPG support is purely a client side thing, so server support is irrelevant. Though some servers can be configured to refuse to pass unencrypted messages.

    With XMPP bridges are usually implemented as external components (a feature built-into the XMPP standard). Slidge franeworm seems to be the latest and greatest in terms of external bridges: https://sr.ht/~nicoco/slidge/ a WhatsApp bridge is built using it: https://git.sr.ht/~nicoco/slidge-whatsapp

  • poVoq
    link
    fedilink
    English
    2
    edit-2
    8 months ago

    https://slidge.im/slidge-whatsapp/ Is what you want to use for WhatsApp right now. The Slidge gateway framework works best with Prosody currently, however to be honest Prosody’s Docker support isn’t great, but you can easily install it from a distribution repository.

    There is the Prosody “distribution” called Snikket that does have well working containers, but it isn’t that easy to get it to work with Slidge currently. But maybe try it out with Snikket first, and if you like the normal use, you can try to recreate a similar setup with vanilla Prosody and the Slidge gateway.