Matrix.org
Matrix is a decentralized, open source messaging system that integrates well with IRC. It provides modern features like a web interface, easy catch-up on missed conversation (without the need to run a bouncer), read-message tracking, and end-to-end encryption (implementation in progress). It even supports voice and video calling.
Contents
Using the web browser interface[edit]
The easiest way to get started with Matrix is using the Riot web interface. To register, create a free Matrix account at https://riot.im/app/.
If you have a bouncer, be sure to disconnect it before setting up Riot/Matrix. If you are using IRCCloud, signing out is not enough. You'll need to click on the gear icon next to the "Freenode" heading in the upper-right corner, and choose "Disconnect". Otherwise, the system will think your nick is taken, and Matrix will automatically connect you using a variation on your nick.
Connecting to freenode IRC channels[edit]
Configuring your IRC nick:
- Click the + icon in the bottom left to create a new room
- In the dialog, click the "Create Room" button
- In the empty room, click "Invite to this room" in the bottom right corner
- In the "Invite new room members" dialog, enter
@appservice-irc:matrix.org
and click the "Send Invites" button. - Wait until "@appservice-irc:matrix.org joined the room." is displayed.
- In the "Send a message" area at the bottom, enter
!nick <yournick>
and press the Enter key
Connect to freenode channels:
Freenode IRC channels are reachable by connecting to a channel called #freenode_#<channel>:matrix.org
. For example, to connect to #mediawiki
, start a matrix chat with #freenode_#mediawiki:matrix.org
.
- Click on the "Room directory" list icon in the lower left to bring up the room directory
- In the search field, enter the entire channel you want to connect to, such as
#freenode_#mediawiki:matrix.org
- When prompted, click on the "↲Join" button at the right in the search field
- On the "Join Room" page, click "Click here" in the "You are trying to access a room. Click here to join the discussion!" text
The riot.im web interface hides some of that, so you can instead:
- Click on the folder icon in the lower left to bring up the room directory
- In the dropdown on the right, choose
Freenode
- Enter some of the channel name, like
mediawiki
and wait for the list to populate below - Click on the channel in the list
- When prompted, choose to "join" the channel
- NOTE: Private channels will not be listed--you'll need to get someone already in the channel to invite you
Authenticating with freenode:
After connecting to a channel on freenode, you should get a chat invite from NickServ. It is displayed in the panel on the left, in the "People" section. If you don't, you can initiate a chat with NickServ by clicking on the person icon ("Start Chat") in the bottom-left) and entering: @freenode_NickServ:matrix.org
.
Once you are in a chat with NickServ, to sign in, accept the chat invite & type: identify <user> <password>
Appservice 0.7 also added the option to save the IRC password. This avoids the need to re-authenticate manually, which is especially useful if you frequently use private channels. To save your password, go to the chat with @appservice-irc:matrix.org
, and type !storepass chat.freenode.net <yourpass>
. Note: this seems to be necessary to connect to the #wikimedia-staff and certain password protected channels.
Other[edit]
If you need further help with your Freenode connection, try issuing the command !help
in your chat with @appservice-irc:matrix.org
. If that doesn't work, you can try asking for help in the #irc:matrix.org
room, where people who maintain the IRC bridge code hang out.
Using a desktop application[edit]
- Make sure you have already registered an account on https://riot.im/app/
- Install the package provided by your distribution, or follow the instructions at https://github.com/taw00/riot-rpm/blob/master/README.md
- Log into the Riot desktop application
- Click the icon at "Search the room directory" to search for rooms
- In the dropdown on the right, choose "Freenode"
- In the #channel search field, enter #wikimedia-dev or such. Press the Enter key or click the "↲ Join" button, then confirm
- See that you have joined that channel
- To join more IRC rooms, use the "Room directory" button in the left bottom corner. You can also directly type "/join #freenode_#channelname:matrix.org" in any chat window which will skip the confirmation part
- Via the Preferences button in the left bottom corner, under "Notifications", you want to disable "Messages in group chats" as things can get noisy
- Changing your IRC nickname on Freenode: Start a chat via
@appservice-irc:matrix.org
. In the private chat, use this command:!nick yourIrcNick
- Authenticating to Freenode's NickServ: Start a chat via
@freenode_NickServ:matrix.org
. Then use this command:IDENTIFY yourUsername yourPassword
[edit]
In addition to bridging to IRC channels, there are a few rooms on matrix.org as well (some are just test spaces):
- #mediawiki:matrix.org
- #wikimedia-hackathon:matrix.org
- #mwstake-extensions:matrix.org
- #mwstake-general:matrix.org
- #mwstake-matrix:matrix.org
- #emwcon:matrix.org
- #wikiclubwest:matrix.org
Further Links[edit]
- "IRC for the 21st Century: Introducing Riot. Learn how to get started with Riot", Justin W. Flory, opensource.com, 19 May 2017