matrix-org / matrix-appservice-irc

Node.js IRC bridge for Matrix
Apache License 2.0
465 stars 151 forks source link

Appservice bot DM is confusing to Matrix users when unknowingly joining bridged room #888

Open joepie91 opened 4 years ago

joepie91 commented 4 years ago

There are quite a few rooms on Matrix that are bridged to IRC channels without that being very obvious (Ruma channel, HQ, etc.), and so a Matrix-native user who joins one of these channels would also be connected over the IRC bridge.

When that user is unfamiliar with IRC and hasn't used it before, the initial DM invite + message from the appservice bot can be very confusing to them, because to their knowledge they are not using IRC. There was just one case of someone getting confused by this on the Riot Web/Desktop channel.

I'm not totally sure how to fix this, but IMO it's definitely something that needs to be addressed UX-wise, as these sorts of confusing messages can scare off new Matrix users. From their perspective, Matrix will be doing things they don't understand, and that sort of 'uncertain behaviour' is often a reason for people to stop using a technology or piece of software.

Related: #705

joepie91 commented 4 years ago

Maybe the text could just be changed to better explain what is happening? Something like:

You've just joined the room "<room name>". This room is bridged to a channel on IRC, a different chat system. This means that you can talk with people in the IRC channel like they are in the same room, even if they don't use Matrix themselves.

You might get messages from a user like "ChanServ" or "NickServ" as well. These are bots on the IRC side, and because you've been connected to IRC through your Matrix homeserver (with the nickname "<nickname>"), you can interact with them as well. You can read more about how IRC bridging works [here].

This room shows you any errors or status messages from IRC, as well as letting you control the connection. Type !help for more information.

It still uses quite a few terms that aren't necessarily clear to all users (room vs. channel, 'server', and so on), but I think it'd be a big improvement over the current message:

Selection_401

Half-Shot commented 4 years ago

Honestly this is related to the giant bug that we don't have a way to indicate that rooms are bridges beyond their membership. I want to fix that first and foremost, so it's obvious which platforms you are sending data to.

Afterwards, we should rethink the purpose of the status room and how to indicate to users that they are being bridged without being obstructive.

Groxx commented 4 years ago

The bot mention of !help does help a lot, but I had to ask in the #riot:matrix.org room to really understand its response, since it wasn't clear why I would be interested in !storepass or others.

Can I request adding a link to e.g. https://github.com/matrix-org/matrix-appservice-irc/wiki/End-user-FAQ ? Something that explains what this DM is, and how to use it? Somewhere in !help is probably good enough, though I wouldn't complain about making it more visible (like in the first message). Otherwise I'm not sure how people are expected to know where to go to find this kind of info.

Half-Shot commented 3 years ago

We could probably just link to a help page on https://matrix-org.github.io/matrix-appservice-irc