MatrixIRCBridge

From Tmplab
Revision as of 10:05, 19 October 2022 by Alban (talk | contribs) (Objective 2 : allow bridge on IRC)

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.

Objective 3 : allow IRC users to pose 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 https://matrix-org.github.io/matrix-appservice-irc/latest/room_configuration.html#linelimit], select a "State" event (st), enter the type "", and then the event body is

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

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