[Proposal] Centralize chat on matrix

25 views
Skip to first unread message

Gavin Mogan

unread,
Apr 9, 2020, 7:44:57 PM4/9/20
to jenkin...@googlegroups.com
I heard about matrix for the first time a few months ago when mozilla officially shut down its irc servers and switched to matrix.

I'm really bad at documenting ideas, but I'm open to any and all questions.

Matrix is decentralized federated (nice fun buzz words again) chat system.

Vs IRC:
IRC has a large barrier of entry these days. Most people don't have irc clients anymore. No persistent logging. Really hard file sharing. No notifications. IRCCloud makes this simple, but costs money.
Matrix

Matrix has a matrix-ircd gateway to let irc clients talk to matrix, as if it was an irc server

Vs Gitter:
Gitter is pretty much abandonware these days, it was acquired by gitter and not much has been done since. They recently added threads, but I find them horrible, hard to track.
Notifications are inconsistent, they are pretty decent on desktop, but non existent on mobile.
Gitter is good in the sense that its low barrier to entry. You just need github, gitlab, or twitter account. And most people have that already.

Vs Slack:
* Channels can be public to guests (see https://view.matrix.org/room/!GibBpYxFGNraRsZOyl:matrix.org/)
* Can hook up to our jenkins ldap auth, so no need for extra accounts (if self hosting)

Useful features:
* Federated, people could use jenkins account (if self hosting) or matrix.org, or any other server (for example I self host chat.g4v.dev)
* Flair - like reddit, you can get various labels beside your names in channels, you could have "core-contributor" or "plugin-author" or whatever else we wanted
* Fully integrated with https://jitsi.org/ for per channel video conferencing
* I almost have helm charts for all basic features if we want to self host
* Bridging for most major services (gitter, irc, slack, etc) inside a matrix channel with 2 way communication. It will likely show up as bot on gitter side, but does work
image.png
as an example on gitter jenkinsci/docs

List of other sdks, servers, clients, etc - https://matrix.org/docs/projects/try-matrix-now

Ullrich Hafner

unread,
Apr 10, 2020, 5:35:01 AM4/10/20
to Jenkins Developers
Interesting, yet another chat system:-) In our university they now installed Mattermost and Rocket.Chat in order to help us to collaborate with the students during the lock down...

I like the idea to have one centralized system. I looks like Matrix (or Mattermost or Rocket.Chat) seem to be very user friendly systems that lower the barrier for beginners. And they seem to be superior to Gitter (which looks a little bit outdated compared to the other systems).

Our resources for infrastructure are quite valuable - Gitter and IRC do not require anything on our side, the service is provided for free. What is required for our organization to get such a chat system running? (We almost have no time to get our other services running, see e.g. the discussion about Jira.)   

<image.png>
as an example on gitter jenkinsci/docs

List of other sdks, servers, clients, etc - https://matrix.org/docs/projects/try-matrix-now


--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-de...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CAG%3D_DusPa41pDWNvONxfg2HO7qm5o5TZx0WxLZShycebmFxuZw%40mail.gmail.com.

Tim Jacomb

unread,
Apr 10, 2020, 6:28:15 AM4/10/20
to Jenkins Developers, Gavin Mogan
Hi

I've just had a try of matrix using riot.im

The UI looks nice and it's easier the core matrix.org server than IRC

Few negatives I found though:

* Bridging to IRC on freenode required some googling as you get insta kicked out as you haven't identified to nickserv, needed to google around to find how to DM nickserv from matrix,
but that worked in the end. I'll continue using it for a bit and see how it compares to IRC cloud.
* It seems someone has to add each irc room as published on matrix.org otherwise you can't search it, (I was able to join #jenkins and #jenkins-infra, but #jenkins-meeting didn't come up)
* gitter bridge UX is horrid, it's because of limitations of the gitter API and there's issues been open for years, but I wouldn't recommend using this bridge
image.png
* no threading support (riot-web#2349), even gitters limited threads are better than nothing imo in a busy room
* no oauth support so can't use GitHub / twitter / google auth, if you host your own server you can setup LDAP
* if we self hosted for LDAP it's another service to maintain

Positives:
* all open source
* the bridging is nice so you can have IRC in as well if you use that
* emoji reactions to messages (gitter doesn't have this)
* easy file sharing

@Gavin Mogan if we were to use this is there a reason not to use the SaaS version (other than LDAP auth)?

Personally I think that Slack is a better tool,
* threading
* lots of communities use it
* very easy to use
* fully SaaS
* lots of easy to add bot integrations

But happy to use it if it gets us off gitter and gives us one place where all the jenkins community chat rooms would be

Thanks
Tim



Gavin Mogan

unread,
Apr 10, 2020, 11:32:31 AM4/10/20
to Tim Jacomb, Jenkins Developers
I'm going to throw out right away that that the matrix.org version seems super slow, i suspect its super overloaded. That was the case for the main mastodon (federated twitter) and the other servers are a lot faster (I would recommend mozilla)

> Our resources for infrastructure are quite valuable - Gitter and IRC do not require anything on our side, the service is provided for free. What is required for our organization to get such a chat system running? (We almost have no time to get our other services running, see e.g. the discussion about Jira.)   

So mozilla went with https://modular.im as a hosted solution. There's also absolutely no reason why to not use mozilla's matrix install, just like we use freenode instead of running our own IRC server. The advantage of running our own server is ldap integration, and adding integrations (like bridges) that will auto create accounts.

> Bridging to IRC on freenode required some googling as you get insta kicked out as you haven't identified to nickserv, needed to google around to find how to DM nickserv from matrix, but that worked in the end. I'll continue using it for a bit and see how it compares to IRC cloud.

I haven't found the bridging being very great, it works, but its more of a temporary solution. Ideally we'd fully move and leave bridges behind just for uncaught users. Puppeting is better, which is what I'm using for telegram/whatsapp/etc.

> It seems someone has to add each irc room as published on matrix.org otherwise you can't search it, (I was able to join #jenkins and #jenkins-infra, but #jenkins-meeting didn't come up)

They don't create rooms for each irc room. You need to create a new room, make it public, and add the irc/gitter bridge (riot web has the 4 block icon on top right)

> gitter bridge UX is horrid, it's because of limitations of the gitter API and there's issues been open for years, but I wouldn't recommend using this bridge

Agreed, I'm going to run a patched version for my server

> * no threading support (riot-web#2349), even gitters limited threads are better than nothing imo in a busy room

I actually think its a good thing. I found at the last company I was at, that used threading heavily in slack, lead to side conversations, invisible to the majority, information lost, things split between threads. I really don't like slack

>  if we were to use this is there a reason not to use the SaaS version (other than LDAP auth)?

I think if we did modular.im, we could still use ldap, and they might be have open source pricing. I think its something that cdf might be interested in.

I just don't like slack because I have now close to 15 different slack accounts. Each server needs individual accounts, and monitoring. The desktop client can handle multiple servers ..okay, though ate up a lot of memory. I don't know if this ever got fixed.
I'm a big fan of the big shared environment like gitter and irc where you can belong to multiple communities at the same time.
I also like the matrix has matrix-irc, which would allow weechat, irssi, ircloud, etc to connect and use basic features like you would with an IRC server if desired.

Gavin

Tim Jacomb

unread,
Apr 10, 2020, 12:05:24 PM4/10/20
to Gavin Mogan, Jenkins Developers
>  if we were to use this is there a reason not to use the SaaS version (other than LDAP auth)? 

I think if we did modular.im, we could still use ldap, and they might be have open source pricing. I think its something that cdf might be interested in.

I just don't like slack because I have now close to 15 different slack accounts. Each server needs individual accounts, and monitoring. The desktop client can handle multiple servers ..okay, though ate up a lot of memory. I don't know if this ever got fixed.

Agree the multiple accounts is a pain
 
I'm a big fan of the big shared environment like gitter and irc where you can belong to multiple communities at the same time.
I also like the matrix has matrix-irc, which would allow weechat, irssi, ircloud, etc to connect and use basic features like you would with an IRC server if desired.

Agree that's useful
 

Tim

Matt Sicker

unread,
Apr 15, 2020, 12:23:13 PM4/15/20
to jenkin...@googlegroups.com
I'd love to use a more modern and open chat protocol like matrix,
though I have no experience in doing so. The only chat server I've run
within the past few years was Mattermost which was nice, though their
LDAP integration costs money from what I remember.
> --
> You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-de...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CAH-3Bifzy5QCHsGihThLCMWZZtUWNE3cn5jKkRYK5oBMQMzmBQ%40mail.gmail.com.



--
Matt Sicker
Senior Software Engineer, CloudBees
Reply all
Reply to author
Forward
0 new messages