Matrix

From Bibliotheca Anonoma
Revision as of 18:14, 3 October 2017 by Antonizoon (talk | contribs)

The Matrix protocol and it's chat client, Riot.im, provides modern group chat with the features users expect (chat history, push notifications), but open source with decentralization and federation like IRC. It even has self hosting and full encryption features that can be optionally enabled.

Most of all, Matrix bridges can let you use your favorite one (such as Slack) to chat with other group chats (IRC, Gitter, etc.). Matrix has direct support for IRC, Slack, and Gitter, and bridges can be self hosted to reach Discord, Telegram, Mattermost, Hipchat, and others.

Thus, Matrix/Riot is the universal group chat: it could potentially bring all of these disunited and proprietary communities back together again. As IRC's lack of chat history and push notifications make it harder for new users to acclimate, which has caused walled gardens and closed communities like Slack, Discord, and Facebook Messenger to become prevalent. Matrix not only weaves these group chats together, it even provides a modern IRC bouncer to existing IRC channels.

And if you don't want to use proprietary and invasive chat apps, Matrix/Riot (which are open source) can be used to puppet Facebook Messenger, iMessage, Groupme, Hangouts, and others so you can still chat to friends that don't switch.

Main Features

  • IRC Bouncer - Matrix/Riot can provide chat history and push notifications for supported IRC servers, such as Freenode, Rizon, Snoonet, and others.
  • Bridge multiple group chat channels into one - Matrix can function as a bridge not only to group chats, but between group chats. Thus, a Slack user can chat with an IRC user, a Discord user with a Gitter user, all as if they were on one united group chat channel.
  • Broad Platform Support - Chat, get push notifications, and read chat history from any supported device: Windows, Mac, Linux; Android, iPhone, WeeChat...
  • Self Hosting - You can run your own server and federate it as easily as if it were an IRC server.
  • End-to-end Encryption - Full, multiple device encryption is possible. Although you do have to manage, authorize, and revoke keys, at least unlike Signal this allows your desktop, phone, and second phone to chat encryoted.=

Basic Usage

  1. Create an Matrix account. This can be done using the matrix.org identity server, or even just your own self hosted one.
  2. Use or install a Matrix client. There are several to choose from, but currently the best is Riot.im.
    • Riot.im (Webapp, Android, iPhone) - The most popular, broad, and best-developed Matrix client at the moment. Supports encryption.
    • Weechat (Command Line) - If you prefer command line IRC clients, this plugin makes Matrix work in Weechat. Encryption is a work in progress.
    • [1] (Windows, Linux, Mac) - A Qt/QML desktop client. Works fine, though encryption is in development.
  3. Join some channels: the Riot.im directory will show you some popular ones. The Bibliotheca Anonoma has a channel, there are many Linux and Programming related Matrix channels, and many other IRC channels are already bridged and accessible.
    • Freenode, Rizon, Moznet, Foonetic, Snoonet, and other IRC servers have direct bridging to Matrix. Other IRC servers will need a puppet or custom bridge.
    • Slack and Gitter have official direct bridges to Matrix. Other group chats are supported, but may need self hosted bridges.
    • Puppets can be used to communicate to Facebook Messenger, Groupme, Telegram, and other users without having to install proprietary apps that have a whole host of unsavory permissions.

Advanced Usage

  • Matrix/Channel - How to create and run a matrix channel.
  • Matrix/Bridge - How to bridge between various group chats.
  • Matrix/Puppet - How to puppet your own Facebook Messenger, Google Hangouts, Telegram, iMessage, GroupMe account to use an open source client to chat with friends that still use these protocols.