Matrix

From Technologia Incognita
Revision as of 15:14, 18 November 2024 by Thijs (talk | contribs) (Remove discord from tables)
Jump to: navigation, search

Motivation

The TechInc community is using a bunch of different protocols and platforms to communicate with each other, such as IRC, Telegram, Discord, Signal, email, etc. Unfortunately, this leads to fragmentation, as not everybody is able to participate in the conversations that people are having within the community. It would be nice if people can to talk to each other, but without them being peer pressured onto platforms that they don't want to use.

I'm one of the few Instagram users who connects solely through the Unix 'talk' gateway.

This is one of the things that Matrix hopes to address

Matrix defines a set of open APIs for decentralised communication, suitable for securely publishing, persisting and subscribing to data over a global open federation of servers with no single point of control. Uses include Instant Messaging (IM), Voice over IP (VoIP) signalling, Internet of Things (IoT) communication, and bridging together existing communication silos - providing the basis of a new open real-time communication ecosystem.

With Matrix, it becomes possible for a Telegram user to talk to a user on Discord, and from a Signal user to talk to a user on IRC. Of course, this should not be done without the explicit consensus of the existing communities. Each platform and protocol has different rules and norms that cannot and should not just be thrown out of the window for the sake of interoperability.

Bridging communication silos with Matrix

We would like to setup a Matrix instance. This will be hosted on space infrastructure. There are several ways that we can setup a Matrix instance and the various bridges, each having their own upsides and downsides. Before deciding on what works best, we need a common understanding of the different options. The methods described below are just there to illustrate some of the different options. The exact details, such as the channel names, what platforms to bridge, and everything else, are of course open for discussion.

Method 1: Full bridging

With full bridging, all channels are bridged to all other channels on all other platforms.

Channel Matrix IRC Telegram
General #general:techinc.nl #techinc-general #⃣ General
Updates #updates:techinc.nl #techinc-updates ❗ Updates
Printing #printing:techinc.nl #techinc-printing 🖨 Print Team
Electronics #electronics:techinc.nl #techinc-electronics ⚡ Electronics
Networking #networking:techinc.nl #techinc-networking 💻 Network Team
Food ordering #foodordering:techinc.nl #techinc-foodordering 🍕 Food Ordering

Advantages

  • Everybody can talk to everybody, regardless of the platform, client or protocol that they prefer to use. A message sent in a channel on one platform will be relayed to the corresponding channel on every other platform.

Disadvantages

  • There is no opt-out. Sending a message in a bridged channel will broadcast it to every other platform.
  • There might be a mismatch between the norms that each platform is currently accustomed to, and the norms that other platforms expect

Method 2: Partial bridging

Everything is bridged to the TechInc-hosted Matrix instance, but the Matrix instance does not necessarily bridge other platforms together.

Channel Matrix IRC Telegram
IRC #irc:techinc.nl #techinc
General #general:techinc.nl
Updates #updates:techinc.nl ❗ Updates
Printing #printing:techinc.nl #techinc-printing 🖨 Print Team
Electronics #electronics:techinc.nl #techinc-electronics
Networking #networking:techinc.nl #techinc-networking 💻 Network Team
Food ordering #foodordering:techinc.nl

Advantages

  • Everything is bridged to the TechInc Matrix instance, so everybody can get access to all channels through the TechInc Matrix instance.
  • Only certain channels are bridged to other platforms besides Matrix.

Disadvantages

  • Might be difficult to distinguish a channel that is bridged to both Matrix and other platforms, from a channel that is just bridged to Matrix.

Method 3: Single-channel bridge

Channel Matrix IRC Telegram
Bridged #bridged:techinc.nl #techinc-bridged 🌉 Bridged

Advantages

  • Very explicit in showing that it is a bridged channel.

Disadvantages

  • People can only join conversations that happen in the bridged channel. Any conversation that happens in a different, non-bridged, channel is not accessible through Matrix.
  • Unlikely that people will actually use this channel, which sort of defeats the purpose.

What information is being sent over a bridge?

Depending on the platform, a bridge sends the following information to the Matrix instance:

  • Your nickname
  • The content of the messages that were sent
  • When messages where sent
  • Join/leave notifications, if available
  • Typing notifications, if available