End user FAQ

Dax edited this page Jan 13, 2019 · 21 revisions

Frequently asked questions by people who aren't running the IRC bridge by themselves.

What do I do if I already closed direct chat with the appservice?

Simply open it again, the appservice will join on invite. You can find it from user list of any bridged room, for example the freenode one is @appservice-irc:matrix.org.

How do I change my IRC side nick?

Say !nick YourNewNicknameHere in direct chat with the appservice user.

I keep getting err_banonchan

You are banned from the channel on the IRC side of the bridge, so the appservice kicks you out of the corresponding Matrix room.

  • If the channel simply bans all unidentified users, you need to identify yourself explicitly with your nickname (see below (How do I register/identify to NickServ?))
  • If the channel bans you specifically or all Matrix users, you may have to start leaving the rooms you suspect to potentially be the cause or leave all the channels you have joined (you can quit every channel by sending !quit to the appservice user which will also disconnect your nick from the network).

Why don't I get notifications from IRC pings?

This section only applies for matrix-appservice-irc versions older than 0.11.0 released on 2018-08-XX.

Currently you have to add your IRC nick to your keywords. You can do this by opening Settings in Riot Web and under NOTIFICATIONS there is

Messages containing keywords

The word keywords is a link and by clicking it you can add/edit your keywords and add your IRC nick there to get pinged by it in the future.

I am getting kicked out of a bridged room with the err_needreggednick error

You need to register your username on the bridged IRC network that room (see next section). The name of the appservice account that kicked you can be used to tell which network.

How do I register/identify to NickServ?

Start by opening a direct chat with NickServ. It's generally @_<network>_NickServ:homeserver.example.org, though some networks omit the leading _ like freenode: @freenode_NickServ:matrix.org. You can figure out the network prefix from Bridged IRC networks.

Then you can register/identify normally depending on the syntax of your network which you can generally check by saying "help register" or "help identify".

For example freenode uses the syntaxes:

  • identify [<nickname>] <password>
    • where nickname is optional assuming you are identifying for your current nickname
  • register <password> <email>

In case you would already be registered to NickServ and possibly have IRC client running, instead of register you would use identify <nickname> <password> and then group to group your current nick under your existing account.

And do it automatically?

Again in direct chat with the @appservice-irc you can use !storepass <string> command to save a string that is sent in PASS command when your ghost (=your IRC-presence) connects if your network sends the PASS command to NickServ.

With freenode you can !storepass nickname:password, some only accept the !storepass password and some just ignore the command.

Why I don't get messages from unregistered-to-IRC IRC users?

The bridges on matrix.org automatically sets umode +R (+G at OFTC) for all ghosts instructing the IRC server to not send messages from unidentified users.

When an IRC user sends a private message to Matrix user, the bridge converts it to a room and invites the Matrix user there. In the past, there have been PM spam bots causing 2000+ room invites in a short time and crashing Synapse (the Matrix homeserver software) on matrix.org taking the whole homeserver down and the best way to prevent this from happening again is requiring registration which should be available for all IRC users.

In order to allow messages from unidentified users, run e.g. !cmd chat.freenode.net MODE YOURNICK -R, you can get YOURNICK and the server with !nick.

How do I change the topic?

If you are a moderator at Matrix and op at IRC

Simply set the room topic at Matrix and it will automatically sync to IRC.

If you aren't op at IRC or the channel is -t

Use the raw TOPIC command. Don't forget to prepend the : character before the sentence you will set as topic. For example:

!cmd TOPIC #foo :Welcome to the #foo channel!

will set Welcome to the #foo channel! as the topic for the #foo IRC channel.

I am a chanop and have a spam problem, how can I fix it without affecting Matrix users?

You have likely attempted to use mode +r or similar which prevents unidentified users from joining the channel also affecting Matrix users. It's not the only way and you may wish to think about some other modes:

  • MODE +S requires SSL/TLS secured connection for joining and has for now also cut spambots. However it may require your non-Matrix users to reconfigure their clients to connect to port 6697 and set checkbox for using SSL/TLS.

  • MODE +be $~a *!*@gateway/shell/matrix.org/* bans unidentified users, while making Matrix users exempt from spam. However the drawback is that to ban a Matrix user, you would need to connect to Matrix to do it.

  • MODE +q $~a with the exemption +e *!*@gateway/shell/matrix.org/* (can be set in one command MODE #channel +qe $~a *!*@gateway/shell/matrix.org/*) will prevent anyone unregistered speaking in the channel (or changing nick) but will allow them to join. (While exempting the matrix bridge users). This allows people to read the topic and the channel (to get nick registration instructions) but not to post.

  • MODE +q $~a would quiet all unidentified users preventing them from talking and /cs flags #channel *!*@gateway/shell/matrix.org/* +V would give all Matrix users automatic voice on join overriding this. The drawback would be that you cannot quiet Matrix users anymore (note that the matrix-appservice-bridge doesn't understand quiets anyway) and it may look ugly/weird.

  • MODE +m & setting a bot to autovoice everyone with some delay from joining to the channel. This would likely require you to host something by yourself and it would also prevent using of quiet instead of ban, but would be the easiest solution for your users.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.