MatrixIRCBridge

From Tmplab
Revision as of 10:22, 19 October 2022 by Alban (talk | contribs) (Objective 3 : allow IRC "unconnected" users to post on matrix)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

This document is dedicated to explaining how to connect a Matrix room with any IRC room on the libera.chat network. As a prerequisite, you need to have the two rooms and be an admin for these two rooms, with your existing accounts on Matrix and IRC.

Also, note that the procedure we describe is a less standard version than usual, where you connect to an existing IRC room in Matrix using the "#your_room:libera.chat" room name.

The basics of the procedure we describe are explained in this github bug comment : https://github.com/matrix-org/matrix-appservice-irc/issues/1324#issuecomment-866828587


Objective 1 : connect Matrix to IRC

1. MATRIX: open the room info page, and head to the plugins / integrations menu.

2. MATRIX: require an IRC plugin

3. MATRIX: fill the form with IRC network/chan/user

Objective 2 : allow bridge on IRC

4. IRC : reply "yes" to the DM discussion which has been opened by the user "matrixbridge" :

 > @<you:your.matrix.server> has requested to bridge '<Matrix room>' (<https://matrix.to/#/room:matrix.server>) with #matrix_room on this IRC network. Respond with 'yes' or 'y' to allow, or simply ignore this message to disallow. You have 300 seconds from when this message was sent.

You should see the users being imported in the IRC room from the matrix chan, progressively.

Objective 3 : allow IRC "unconnected" users to post on matrix

5. MATRIX : type "/devtools" in the matrix room chat.

6. MATRIX : head to the "room state" page and then click on "send custom events" / "état du salon" "Envoyer des événements d’état personnalisés" in French

7. MATRIX : Following the documentation posted here, select a "State" event (st), enter the type "org.matrix.appservice-irc.config", and then the event body as follows

 {
   "content": {
     "lineLimit": 5,
     "allowUnconnectedMatrixUsers": true
   },
   "type": "org.matrix.appservice-irc.config",
   "unsigned": {},
   "room_id": "<CHANGE ME matrix room id CHANGE ME>"
 }

Note : to get the absolute room_id (something like !iCrBRXZcTDjFbja:matrix.org) you can look at other room events.

And this is how this documention ends. Hope you liked it!