Firstly: Yes, I like Synapse / Cinny / Element too…don’t hate me…but needs must when the devil drives…

For reasons that are too complex to get into (TL;DR: hodge podge of equipment from the dawn of time, from intransigent family members, complexity over HTTP vs HTTPS…they usual nonsense when you volunteer to become the family sysadmin) I’ve been looking at different methods for a persistent, family chat experience that I can “self host”.

Does anyone know much about Jami?

https://www.jami.net/

From what I can see, it has the following worthwhile features:

  • FOSS/GPL
  • Android, Windows, Linux, macOS and iOS.
  • Text messaging ,group chats, video calls
  • File sharing, E2EE etc etc
  • It apparently works over a LAN with no Internet connection at all, which is particularly interesting to me.
  • Federation not required.
  • CA not required
  • Transparent handoff with Tailscale

From what I can see, there’s a headless jami-daemon for Linux. Jami’s own docs specifically suggest putting an existing account on an always-online server to facilitate message exchange, with multiple servers possible for redundancy.

So…that’s…good.

OTOH, there isn’t a Synapse-equivalent central Jami server holding everyone’s accounts and rooms. Accounts and conversations are distributed across the participating devices, though as I said above, it looks like Jami does support an always-online daemon/device to improve message availability.

I dunno what to make of it. It seems…too good to be true.

Has anyone use it? Particularly, is the always-online jami-daemon actually dependable for store-and-forward behavior in practice?

https://github.com/savoirfairelinux

EDIT: This was an interesting experiment, but Jami is far too unreliable even without UnifiedPush / DHT (which I think is the main issue). I presented the work done so far and the consensus is to look at using IRC (as most of the users are familiar with that) and having Janus as the video chat / WebRTC server. It seems to work on all of their devices and doesn’t have any of the cute issues we encountered with Synapse / Matrix

TL;DR the fam has settled on -

I’m tied, boss. Never volunteer.

  • u_tamtam@programming.dev
    link
    fedilink
    English
    arrow-up
    3
    ·
    9 hours ago

    Wow, as someone who has been hosting XMPP for family for 10+ years and only liking it, I’m amazed by the overwhelmingly supportive comments for it, it’s like people are recovering from a Matrix hangover and rediscovering the things they already had for their merit. So yeah that’s my +1: XMPP is really something dependable, it just works, and the sysadmin story is great too (my preference goes to ejabberd for the best “turnkey” experience, but you can’t go wrong with prosody either if you are willing to read some guide).

  • hexagonwin@lemmy.today
    link
    fedilink
    English
    arrow-up
    29
    arrow-down
    1
    ·
    1 day ago

    it’s really not reliable especially for non techies. plus it’s a real p2p so…

    just setup XMPP

    • Mikelius@lemmy.ml
      link
      fedilink
      English
      arrow-up
      2
      ·
      8 hours ago

      Probably less reliable for me as a techie. Every time I opened Jami, my firewall alerts would go off about a device on the network calling to China, Russia, and Vietnam lol. Resulted in it almost never connecting for me since my network just blocked way to many connections on it for outbound traffic.

      • SuspiciousCarrot78@aussie.zoneOP
        link
        fedilink
        English
        arrow-up
        6
        ·
        22 hours ago

        Yeah…you know what? I’m going to try that. I’m sick of Jami and I am ready to burn Matrix to the fucking ground and piss on it’s ashes.

    • SuspiciousCarrot78@aussie.zoneOP
      link
      fedilink
      English
      arrow-up
      7
      ·
      23 hours ago

      Yes, sadly I think you’re right. I played around with it a bit today…showed great promise…then uninstalled it and tried to do a fresh install and since then, nada.

  • lambalicious@lemmy.sdf.org
    link
    fedilink
    English
    arrow-up
    18
    arrow-down
    3
    ·
    1 day ago

    It’s 2026… Why do people insist on skipping the fact that XMPP exists?

    Anyway. Just set up XMPP.

  • Possibly linux@lemmy.zip
    link
    fedilink
    English
    arrow-up
    6
    ·
    21 hours ago

    I would be very careful with it as it has a long history of being unstable and hasn’t had a security audit.

    Honesty my recommendation would be to use Signal or Molly. While it isn’t the best from a anonymity perspective it is reliable and easy to understand and use

  • solrize@lemmy.ml
    link
    fedilink
    English
    arrow-up
    3
    ·
    21 hours ago

    I was never able to get it to work reliably. For those mentioning XMPP, Jami uses a serverless approach with a distributed hash table instead. In principle it has better privacy but in reality it’s flaky. IDK for sure if the flakiness comes from the DHT but either way I gave up. I might try again sometime.

    • SuspiciousCarrot78@aussie.zoneOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      19 hours ago

      I’ve been hammering it hard rn and it definitely is the Unified Push / DHT proxy. The instant those are disabled, it works reliably. So I may need to revise my position.

      The thing that really caught my attention is the jami daemon

      https://docs.jami.net/en_US/user/jami-for-servers.html

      If I’m reading that right, it’s sort of like a headless instance that can store and forward. Additionally, it doesn’t require tail-scale / head-scale to do so (as jami has its own protocol). So no nonsense with domains, reverse proxy, certificate infrastructure or public chat service.

      The only issue is “it’s not self hosted”, which was part of the brief.

      • solrize@lemmy.ml
        link
        fedilink
        English
        arrow-up
        1
        ·
        19 hours ago

        You can self host Jitsi and it’s nice. I haven’t done it yet though.

          • undrwater@lemmy.world
            link
            fedilink
            English
            arrow-up
            1
            ·
            17 hours ago

            Jitsi is good as an ad hoc communication tool, but it won’t replace a “chat / sms” tool. I took a small peek at SimpleX, and it looks quite complex. Not sure if it really is.

  • sbird@retrofed.com
    link
    fedilink
    English
    arrow-up
    14
    ·
    1 day ago

    I have tried it before, it’s neat, but notifications are not reliable since it is peer to peer (both devices need to be online for a connection), a bit like Briar if you’ve used that before. I don’t think it uses the Tor network, so it might be faster than Briar (but also less anonymous?)

    I don’t have experience with the jami daemon though, so can’t comment if that solves the peer to peer issue.

    I personally like Matrix the best, since you have federation, options for encrypted chats, self-host able with Continuwuity (or Synapse), lots of alternative clients for nearly every OS (even mobile Linux, you have Fractal! FluffyChat also works but it’s definitely oriented towards Android devices)

    • mote@lemmy.ca
      link
      fedilink
      English
      arrow-up
      5
      ·
      1 day ago

      It sounds good but in practice it doesn’t work out; laptops sleep, people put their phones on airplane at night, whatever happens in life. The “best” solutions use some sort of cache-and-forward relay (thinking like DeltaChat relays, or I hear SimpleX is adding them) but I think most end up looking at Snikket (xmpp) or Matrix for the group management etc. on a central server. The Disroot group uses “Movim” which is XMPP highly customized to a social experience.

      I use DeltaChat with friends and there’s a lot of things you can’t do because it’s essentially P2P with caching relays - like Jami, all control and data is stored on the device(s). If all you’re looking for is a Signal replacement it’s great (and why we use it), but if you want good group social controls you gotta go the central server route.

      I think Jami here could do with caching relays like Delta has, could move this project to the next level.

    • SuspiciousCarrot78@aussie.zoneOP
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 day ago

      I like matrix too but am dealing with weird networking issues, across ancient devices. Issues around MatrixRTC, old android devices, using HTTP vs HTTPS and the like are making me not want to live on this world any more.

      • sbird@retrofed.com
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        1 day ago

        Well, there’s also IRC and XMPP. Could those work better for older devices? Dunno, but neither are encrypted, so don’t use them for anything sensitive. Signal is good if you want security, they’ve been audited a lot, but they are based in the U.S. which isn’t great.

        I’ve also heard of Stoat (formerly Revolt) and Fluxer, both are relatively new, but I would prefer Matrix over both since it’s more easily self-hostable (+ all those different clients to choose from!)

        edit: I really didn’t know, but looks like XMPP does support encryption! (and it’s enabled by default on most clients!)

        • SuspiciousCarrot78@aussie.zoneOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          5 hours ago

          Just a little postscript for you, sbird

          TL;DR the fam has settled on -

          Ergo as IRC server: https://ergo.chat/
          The Lounge as PWA IRC client: https://thelounge.chat/
          Janus for video calls: https://janus.conf.meetecho.com/index.html
          I will host all this on the Pi at my place and they can tailscale in.
          

          So, it looks like ye ancient IRC has saved the day.

          Thanks for the suggestion; I never would have thought of it.

          PS: I’m tied, boss. Never volunteer.

        • SuspiciousCarrot78@aussie.zoneOP
          link
          fedilink
          English
          arrow-up
          3
          ·
          edit-2
          19 hours ago

          You know, I had to do a double take when you mentioned IRC, but it’s actually come a long way since I used it last.

          https://github.com/ergochat/ergo

          https://thelounge.chat/

          And unlike Jami, it really IS self hosted.

          Good idea; thanks for that. I realise IRC doesn’t have native video / audio calling but that’s probably a smaller problem to solve / bolt onto that trying to juggle Matrix across multiple unruly devices

          EDIT: … IRC has video and voice calls now?

          https://github.com/AndroidIRCx/AndroidIRCx

          Wat

          • undrwater@lemmy.world
            link
            fedilink
            English
            arrow-up
            2
            ·
            17 hours ago

            IRC is great. The challenge is picking a client for the family, and getting them set up. It’s not friction free.

        • lemmyvore@feddit.nl
          link
          fedilink
          English
          arrow-up
          6
          ·
          1 day ago

          IRC supports TLS encryption. Many large networks don’t actually have it enabled or use self-signed certs because they still think it’s the 1990’s, but if you make your own server you can use TLS just fine.

        • ambitiousslab@feddit.uk
          link
          fedilink
          English
          arrow-up
          8
          ·
          1 day ago

          neither are encrypted, so don’t use them for anything sensitive

          I run XMPP - just wanted to say that all major XMPP clients (the ones I’m thinking of are Conversations, Monal, Dino and Gajim, among others) encrypt-by-default, you have to actively go out of your way to disable it per contact.

          • sbird@retrofed.com
            link
            fedilink
            English
            arrow-up
            2
            ·
            1 day ago

            That’s actually pretty cool, I’ll be making an XMPP account then. Adding to my collection of chat apps!

          • sbird@retrofed.com
            link
            fedilink
            English
            arrow-up
            2
            ·
            1 day ago

            Oh whoops, I didn’t know that! That’s kind of neat, didn’t know had encryption. I will amend my comment

  • SuspiciousCarrot78@aussie.zoneOP
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    20 hours ago

    Ok…I think I have this narrowed down. Jami is fine…it’s just that the UnifiedPush / DHT proxy mode is ass. I was using SunUP for UnP. I might need to look at different solution or just accept running in background.

    EDIT: tried Ntfy too; I’m 99.9% convinced it just cannot use UnifiedPush properly.

  • ambitiousslab@feddit.uk
    link
    fedilink
    English
    arrow-up
    8
    ·
    1 day ago

    I never tried deploying Jami, as I settled on XMPP for this use-case. But, let us know how it goes if you do try it! I haven’t seen many review it before so I’d be interested to hear your experience.

    • SuspiciousCarrot78@aussie.zoneOP
      link
      fedilink
      English
      arrow-up
      5
      ·
      edit-2
      22 hours ago

      Postscript: it went terribly. That is…it worked perfectly on test devices / with test accounts. Then I thought "ok…this has potential! Then it shat the bed, in a way I couldn’t grok (and frankly, I didn’t have the energy to trouble shoot).

      Then I thought “fine…clearly Jami is flaky. LiveKit and MatrixRTC are shitty with Synapse…I know X wants to video call Y…let me try a clean cut over to Continuwuity + Tailscale”.

      …and now I hate everything and everyone.

      So, that probably means I will try Jami again one more time and then just switch to Snikket.

      The moral of the story is: I should have played with dollies as a kid instead of computers, because this exact pattern of fuckery has been the bane of my existence near on half a century now.

      Le-fucking-sigh.

      Fuck it; I’m going get Claude to set this up. “Claude, take the fucking wheel and make no mistakes.”

      • ambitiousslab@feddit.uk
        link
        fedilink
        English
        arrow-up
        1
        ·
        22 hours ago

        Ahhh, sorry to hear it :(

        I should have play with dollies as a kid instead of computers

        Probably we’d all be happier :)

        So, that probably means I will try Jami again one more time and then just switch to Snikket.

        Good luck! I hope it goes well