Hi. I have a group of 6 people using Discord to chat. Recently Discord changed a lot and we’re looking for an alternative. We have a few requirements:

  • Good client on multiple platforms
  • Easy to use search
  • Self hosted
  • Permanently saved chat history & attachments on server (no expiration)
  • Easy image upload (Ctrl+V to post image from clipboard)

IRC isn’t an option as chat history is saved on the client, and there’s no good integrated way to share files and preview images. Matrix would be an overkill as we’re a small group not interested in federation, and the available clients had a few bugs. Mattermost lacks a good mobile app (their current one had bunch of bugs). XMPP appears to be the best as it is extensible and has many clients available.

However, I tried configuring prosody on my FreeBSD server and it seems like it doesn’t permanently save chat history or attachment files. Does anyone know if these can be solved? Or is there any better alternative than XMPP?

Thanks.

  • barbara@lemmy.ml
    link
    fedilink
    English
    arrow-up
    10
    ·
    edit-2
    7 months ago

    You don’t have to federate with matrix.

    Curious: what are the bugs you encountered? I guess you looked deeper into element (or schildichat). The next version is on its way but not yet ready for prime time. In the long run it’ll be your best bet.

    • hexagonwin@lemmy.sdf.orgOP
      link
      fedilink
      English
      arrow-up
      7
      ·
      7 months ago

      One of the members and I used to chat on Matrix some time ago. I didn’t encounter much issues but he had an awful experience (android/Windows, encryption related things and minor glitches on the client such as when syncing) that he refuses to move to Matrix unfortunately…

      • barbara@lemmy.ml
        link
        fedilink
        English
        arrow-up
        3
        arrow-down
        1
        ·
        7 months ago

        Understand the issue. I know those bugs. Those were funny times. That didn’t happen in a long time

  • SolidGrue@lemmy.world
    link
    fedilink
    English
    arrow-up
    8
    ·
    7 months ago

    I maintained an ejabberd server for myself and a few friends for many years. The config language was a little arcane to me at first, but it was pretty solid after I got it set up. I used a couple of different client apps with it over that time, most of which are still available on the F-droid repo. It was fun, but got annoying when the server needed maintenance, or was down, or because of any of the other minor nuisances that come along with maintaining a service for others to use.

    Eventually we all ended up just moving over to Signal because it was just as good from the view of cost-benefit and risk for us. We’re just trading stupid memes and Saturday night stories among ourselves. The most radical thing we might organize is a trip to Vegas for the week.

    Definitely try it out, but consider that being a comms provider for others is always a bigger chore than it seems at the outset.

    • EngineerGaming@feddit.nl
      link
      fedilink
      English
      arrow-up
      3
      ·
      7 months ago

      The most annoying thing about Signal is that they don’t for some reason allow registering from desktop directly, so I had to use signal-cli. Which is inconvenient AF and it’s a shame they haven’t added a feature as simple as “input an SMS code in the desktop client”.

      Anyway, glad I only have to use it for a couple of guys and only with my real identity. So happy XMPP exists, and I have most of my 1-to-1 messaging with internet friends there. Very easy to host.

      • SolidGrue@lemmy.world
        link
        fedilink
        English
        arrow-up
        3
        ·
        7 months ago

        I hear you. The desktop wasn’t Signal’s primary market, and that’s pretty clear in their implementation. On the other hand, that difficulty registering a desktop servuce may make it less attractive to would-be bot farms and spammers. Its a thin one, but I see that as a silver lining.

        • EngineerGaming@feddit.nl
          link
          fedilink
          English
          arrow-up
          4
          ·
          7 months ago

          Not just bot-farms and spammers, but just a regular person. What is Signal’s main feature? Encryption. You would not want to expose your sensitive chats to a smartphone, unless it has a privacy-respecting OS (which not all phones can do). Good thing I only have to use it with a couple of guys who don’t want to use other encrypted communication methods.

    • Dran@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      7 months ago

      Did you ever get carbons working properly? (As in, mobile and desktop clients of the same user both getting messages and marking as read remotely between them)

  • WeAreAllOne@lemm.ee
    link
    fedilink
    English
    arrow-up
    7
    ·
    7 months ago

    Many years ago I used XMPP with Prosody and it was ok.

    • You can setup some retention time for attachments and history depending on the space you have.
    • There are clients for multiple platforms but not very much advanced vs competition.
    • Security is good with omemo protocol. In so e clients you have to turn it on since it’s not by default.
    • Audio video calls on one to one is good as long as you setup stun coturn server. Android to iOS calls still in progress.
    • Check out Snikket for an all in one solution.

    You might want to also consider Matrix (dendrite option ?) for your needs.

    • EngineerGaming@feddit.nl
      link
      fedilink
      English
      arrow-up
      3
      ·
      7 months ago

      I just started hosting Matrix in addition to XMPP (just because some communities prefer it now), and I find it bothersome that it saves chat history and media to every participating server. IDK how much of an issue chat logs would be, but media scares me a lot. Hopefully cleaning old files manually would not break anything…

      Anyway, I started with Conduit rather than Dendrite, and it seems like a good experience. Could not even hope to get Synapse going on my weak VPS.

      • WeAreAllOne@lemm.ee
        link
        fedilink
        English
        arrow-up
        2
        ·
        7 months ago

        Ah good to know about Conduit!

        Well that’s how the protocol works saving data on every participating server.

        Simplex chat might be another alternative but is on early development as far as groups and desktop client.

    • hexagonwin@lemmy.sdf.orgOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      7 months ago

      Thanks. Have you tried configuring infinite time for retention/attachments/history? I can’t find a way to disable those limits completely. Conversations on Android and Pidgin on Linux/Windows look pretty good, I’ve yet to find a good OSX one though. I’ll try checking out Snikket, thanks.

      • WeAreAllOne@lemm.ee
        link
        fedilink
        English
        arrow-up
        1
        ·
        7 months ago

        Unfortunately I don’t remember about the retention setting.

        I would avoid Pidgin since I’m not so sure they implement fully omemo encryption. Try Gajim.

  • aksdb@lemmy.world
    link
    fedilink
    English
    arrow-up
    6
    ·
    7 months ago

    I am surprised that no one mentioned snikket yet, which is essentially a distribution of Prosody with sane defaults and a custom client.

    • gray@lemmy.ml
      link
      fedilink
      English
      arrow-up
      4
      ·
      7 months ago

      This is interesting. I’ve never heard of this project but it looks really neat.

      • bob@lemmy.world
        link
        fedilink
        English
        arrow-up
        3
        ·
        7 months ago

        We’ve been using it on our phones and desktops for three years now, it’s very stable

        • gray@lemmy.ml
          link
          fedilink
          English
          arrow-up
          1
          ·
          7 months ago

          Do you self host your email or use it with an email provider? Also, does it need its own inbox/address to function? I can’t really tell from the documentation if it functions along side normal emails or if it’ll mess up your inbox if you use it with your normal inbox/address.

          • bob@lemmy.world
            link
            fedilink
            English
            arrow-up
            4
            ·
            edit-2
            7 months ago

            We use a self-hosted roundcube mail server, which is not necessary, and we did initially assign each person an additional account dedicated to delta.chat to prevent inbox clutter, but that didn’t happen.

            Nowadays, we prefer to send and receive emails in delta.chat. One of my groups already has 70 members, contains a lot of images and PDFs, and it’s still very fluid to use.

            We also run bots for integration with other systems, such as task management, meeting notifications, etc.

    • hexagonwin@lemmy.sdf.orgOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      7 months ago

      Looks interesting, but isn’t this slow though?

      Our chatroom is very active and the members won’t move if it’s much slower compared to Discord unfortunately…

      • bob@lemmy.world
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        7 months ago

        It’s basically real-time, even sending large files is very fast, I don’t know the details of the reason, maybe it’s because there is not much difference between IMAP and TLS, or because the roundcube we deploy is super fast?

  • dominiquec@lemmy.world
    link
    fedilink
    English
    arrow-up
    5
    arrow-down
    1
    ·
    7 months ago

    Nextcloud has chat capabilities. Perhaps it might be overkill for chat alone but presumably you also want some collaboration with documents.

    • TCB13@lemmy.world
      link
      fedilink
      English
      arrow-up
      10
      arrow-down
      4
      ·
      7 months ago

      Yes, but Nextcloud is also a perpetually half made project that breaks at every corner and requires a lot of resources.

      • dominiquec@lemmy.world
        link
        fedilink
        English
        arrow-up
        5
        arrow-down
        3
        ·
        7 months ago

        Speaking from experience from the last five years, it’s been pretty good for me.

    • hexagonwin@lemmy.sdf.orgOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      7 months ago

      It’s just a room for chatting among friends so not really, but I’ll check this out as well, thanks.

    • hexagonwin@lemmy.sdf.orgOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      7 months ago

      I’ve tried installing and using revolt. It’s okay and our members like it but the lack of support and a usable control panel makes it hard to choose.

  • orcrist@lemm.ee
    link
    fedilink
    arrow-up
    1
    ·
    7 months ago

    Prosody claims to support Message Archive Management and HTTP file sharing, sounds like the feature you want, or at least it is close.

  • Shape4985@lemmy.ml
    link
    fedilink
    English
    arrow-up
    2
    arrow-down
    1
    ·
    edit-2
    7 months ago

    Signal is a good alternatives as you can group call and screen share (no audio), share images and videos etc. Messages are saved locally on devices unless a timer is set on the chat

    • hexagonwin@lemmy.sdf.orgOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      7 months ago

      Thanks, but it’s not ideal for our usage, it’s not selfhosted and there aren’t many clients available. Plus it doesn’t have unlimited message and attachments history.

    • hexagonwin@lemmy.sdf.orgOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      7 months ago

      As I mentioned in the OP I tried Prosody on my FreeBSD server, I’ve yet to get attachments working.

      • Unpigged@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        1
        ·
        edit-2
        7 months ago

        Oh sorry, misread exactly this part. I’ve had great experience with ejabberd, maybe worth trying it.

  • Kairos@lemmy.today
    link
    fedilink
    English
    arrow-up
    1
    ·
    7 months ago

    You can have non-federated Matrix. And XMPP is federated as well.

    XMPP is probably fine. I haven’t used it but people say it’s good.

    • hexagonwin@lemmy.sdf.orgOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      7 months ago

      You’re right that XMPP is federated as well and Matrix can be non-federated but I’ve heard some people had trouble with the Synapse server chugging resources despite not using federation.