Am 16.06.21 um 11:30 schrieb Lex Trotman:
Thanks Thomas but unfortunately you have given me even more questions that the Matrix site doesn't answer (that I could find) :-S
There seems to be some misconception. Matrix is a federated protocol. That means that there is no single instance that is the "host" of a #geany matrix channel.
Anyone can open such a channel, and it will propagate to any Matrix server that "owns" clients that participate in the chat, and all of those servers have the entire history.
So how does a server get clients? Or perhaps its more how does a client find a server? If I want to join a channel what do I do? Who runs the servers?
You register your Matrix account on a server of your choice.
matrix.org hosts the reference server but anyone is free to host commercial or personal ones like I do (then called homeserver).
(There is a reference server side that is FOSS and there are a number of competing implementations as well, for example in Rust).
You can register within the clients, for example on https://app.element.io/, and then you can readily join all channels over the world.
So its like IRC in that all conversations on the #geany channel are mixed together. But unlike IRC the servers maintain the history?
Yes, it's a flat chat. From my past experience with #geany on irc (which is very low traffic) that's good enough.
I only know Rocket.Chat (https://rocket.chat/) that allows for sub-threads in channels. We use that at work, and that feature is sometimes nice, but the UI is not great (sub-threads are in a tiny window on the right) so I often want to avoid sub-threads.
So there is no action required to keep the channel alive, as long as there are participating (even if idle) users.
How does the "federation" handle loss of servers? Are there IRC like net splits? Or does it handle it all better?
When a server goes down then users that have their accounts on that server cannot participate anymore. Other users are not affected. When the server comes back online it fetches the missing history of what happend during the downtime.
Federation is not for load-balancing or redundancy, at least not primarily. It's so that there can multiple servers in the ecosystem to chose from. You might trust server A more than B, or server C could offer better services for a fee.
Best regards