Page MenuHomePhabricator

Request creation of ircwebchat VPS project
Closed, ResolvedPublic

Description

Project Name: ircwebchat

Wikitech Usernames of requestors: 'Svetlana Tkachenko' 'legoktm'

Purpose: webchat for IRC use for wikimedia wikis

Brief description: Live chat is linked at numerous pages on-wiki, such as https://en.wikipedia.org/wiki/Wikipedia:IRC. After moving to libera, webchat is not yet available. Previously KiwiIRC (via chat.freenode.net (who changed management now, and Wikimedia IRC channels moved to libera)) was used for IRC live chat. This is an attempt to install theloungechat (https://thelounge.chat/) limited to Wikimedia channels only, and customize it to include links to resources that the live chat helpees may need.

How soon you are hoping this can be fulfilled: I expect to finish the initial install this weekend.

Extra requests

Event Timeline

While Libera Chat is planning to set up their own webchat, @Gryllida has rightly pointed out that we could provide a much better experience if we tailored the web chat specifically at helping new people on Wikimedia channels and potentially other tweaks. I'm volunteering to assist with the Cloud VPS specific parts like policies and various integrations. This service will need to see the real IP of users, and as such will need to live in Cloud VPS. It's likely we will also need a floating IP as well.

Given that there is some urgency for this and it was technically discussed in today's WMCS weekly meeting with no objections, I'd like to ask that we can accelerate the timeline on project creation.

+1. This should also have either an IP passthrough exception for the wmcloud.org proxy (so the client IP can be passed to Libera.Chat via WEBIRC) or a floating IP. With a floating IP it will need to handle it's own TLS certs too, but would separate traffic from the shared NAT which might prevent accidental k-lines of all of Cloud VPS + Toolforge.

Legoktm renamed this task from Request creation of ircwebchat-wm VPS project to Request creation of ircwebchat VPS project.May 27 2021, 5:19 AM
Legoktm updated the task description. (Show Details)

+1. This should also have either an IP passthrough exception for the wmcloud.org proxy (so the client IP can be passed to Libera.Chat via WEBIRC) or a floating IP. With a floating IP it will need to handle it's own TLS certs too, but would separate traffic from the shared NAT which might prevent accidental k-lines of all of Cloud VPS + Toolforge.

Oh! I think both the proxy exception and the floating ip actually would be best. Then the TLS can be handled by the proxy, but the outbound to Libera.Chat should transit the floating ip. Best of both!

Andrew claimed this task.
Andrew subscribed.

This should be ready to go. There's on floating IP allocated to the project, and I've also added xff exception for the ircwebchat.wmcloud.org domain -- if you want to use a different proxy name we'll need to adjust for that.

Hi @Andrew thank you. I now have set up 2FA, and logged in to horizon, but ircwebchat is not listed (only bastion and tools); is it the correct place to get started? How do I have access?

Hi @Andrew thank you. I now have set up 2FA, and logged in to horizon, but ircwebchat is not listed (only bastion and tools); is it the correct place to get started? How do I have access?

@Gryllida, this was my mistake, I didn't set up project membership correctly. Can you see the project now?

yes, it works now; thanks Andrew

Funny, was going to create a request for the same purpose, but searched and saw this :) I'm happy to help with anything relating to thelounge config if needed.

See also T253491: Set up convos.chat on Toolforge (IRC frontend; open alternative to IRCCloud) (which never happened but the tool is interesting - it's a FLOSS irccloud-ish thing with user accounts and constant presence).

This project will be deleted in a few days as it appears abandoned on https://wikitech.wikimedia.org/wiki/News/Cloud_VPS_2022_Purge

Let's maybe keep this if it's not too much trouble? The use case is valid, maybe we'll pick it up at some point, and having a project doesn't cost anything - it's less effort to not delete than to recreate. (If floating IPs are a scarce resource then please ignore.)

All that's necessary for a project to be kept is for someone to update the https://wikitech.wikimedia.org/wiki/News/Cloud_VPS_2022_Purge page and indicate that this project is used.

In order to protect projects from future deletion, please subscribe to https://lists.wikimedia.org/postorius/lists/cloud-admin.lists.wikimedia.org/ and respond to actions there.

Let's maybe keep this if it's not too much trouble? The use case is valid, maybe we'll pick it up at some point, and

The use case was that https://web.libera.chat/ did not yet exist. I think that was invalidated within a couple of weeks of this task being filed.

having a project doesn't cost anything - it's less effort to not delete than to recreate.

There is no equivalent of the https://wikitech.wikimedia.org/wiki/Help:Toolforge/Abandoned_tool_policy for Cloud VPS projects today, and if there was the waiting period would take significantly longer than requesting a new project with a reasonable scope.

(If floating IPs are a scarce resource then please ignore.)

We have 128 in total (the 185.15.56.0/25 allocation) for all of the Cloud VPS project. I personally consider them to be the most scarce resource that WMCS has stewardship over.

The use case was that https://web.libera.chat/ did not yet exist. I think that was invalidated within a couple of weeks of this task being filed.

The Lounge is far superior to KiwiIRC though. It can provide constant presence without a bouncer, which is the absolute minimum requirement for a chat tool to feel like being from this century.

We have 128 in total (the 185.15.56.0/25 allocation) for all of the Cloud VPS project. I personally consider them to be the most scarce resource that WMCS has stewardship over.

Fair enough. We can just re-request it once someone actually has time to work on it, then.

Is there any preference between The Lounge or convos.chat?

Relevant quote from the convos.chat ticket:

This service will need to require OAuth authentication with the Wikimedia wikis or a similar authorization mechanism before connecting any visitor to Freenode's servers. If authorization is not required, this would be an open proxy to Freenode for anyone on the internet. This would likely be considered a violation of the Cloud Services Terms of Use. It would almost certainly cause friction with Freenode admin staff if it became any repeated source of spam or harassment as a result of having no barriers to use.

Users docs for thelounge are relevant; it could probably be implemented by having an authentication microservice that creates accounts via the JSON config once the user logs in to their SUL account with oauth. The microservice should also handle password resets and account deletions.