Chat

We have our own chat now on roflfaucet, so…

Below Is Redundant

What we need:

  • Comms for Direct Sponsor recipients to communicate with each other
  • for recipients and sponsors to communicate
  • for all site users to share links and advice as well as general community discussion
  • A reliable way to communicate with new users (most never get the email replies I send out, especially volunteer devs!). Instead of the contact form, send them to the chat site.
  • Video conferencing for all, but especially so we can do good podcasts
  • Support channels for users of all sites.

Telegram has all we would need—groups, private chats, etc.—but requires the user to be on Telegram. There is a description below of ChatBro, which might solve the problems mostly, but here is an outline for describing the ideal system.

  • In-site chat live chat system for all users
  • across all sites (we have SSO via ClickForCharity already).
  • main chat window (default)
  • an expand symbol linking to a page that holds only the chat (in the center section; the rest is the normal sidebars and horizontal ad banners) to make the chat more comfortable. moderator and admin roles
  • Ability for moderators and admins to create “rain” in the chat on random users, e.g., rain 10 coins on 5 active users chosen randomly. The command would be /rain 10 5
  • tipping between users, e.g., /tip username 5

Below Is Redundant

What we have

Chatbro

Currently using Telegram for in-page chat, which is able to be embedded via a bot into the site. It’s a plug-in and a bot called ChatBro, which is no longer maintained (2 years). The dev runs it on his own server, which is often down, but we could run it ourselves using the open-source code on GitHub.

Chatbro docs are here.

Jitsi

For video chats we have https://meet.jit.si/clickforafrica set up which is a lot easier than hosting it all ourselves. I embedded it in https://clickforcharity.net/jitsi-test/ (gone) for now. More about the WP embed in the Jitsi page and more general Jitsi info below.

This is new (Oct 2021) but may be useful in the future. (openchat, decentralized blockchain chat.)

Leaving the rest of the stuff I tried out below for reference if we decide to use something else. But Telegram, Jitsi, and BuddyPress will probably do all we need.


Alternatives

nostri.chat looks promising, though there is very little documentation at this early stage.

Tried setting up a Rocket.Chat server, and it worked fine on a cheap VPS. If Rocket.chat turns out to be troublesome, we could try Discord instead.  https://discordapp.com/open-source

Some other possibilities to enable video chat in browsers… This may be simpler, and people may be more likely to use it, but it would have to work, and many I have read about seem really clunky and bad!

https://github.com/trailofbits/tubertc

Tiny chat might be useful; it seems simple but not independent

and this…

matrix 

is a completely decentralized system for fully distributed chat rooms with no single points of control or failure. But it is not really ready yet.

iflychat.com

Tried, but can’t set up an account because of the stupid, useless Google CAPTCHA. Will try again later because the video chat is confirmed as P2P and available in the free version. Also, the WP plug-in.

Rocket.Chat

It looks exactly like Slack and has the same functions, including text, audio, and video chat, as well as conferencing, channels, notifications, and much more. 
There’s a demo chat you can join here.

chat.clickforafrica.org is our test installation.  Though it is a stand-alone server and not part of any site, it can add a live chat feature to the websites.

There is a WebRTC Troubleshooter we can use too. Seems like there can be problems if participants are remote from each other, or in a group chat, but there is a solution in

jitsi

which is apparently integrated already into Rocket.Chat and easy to activate. It sounds like the video streams are still peer-to-peer, although I have not seen or heard it said explicitly (in English, at least!).

More research reveals that it is indeed P2P in the video chats and audio, so no worries about bandwidth-hogging the server. (confirmed by the dev)

Some highlights: easy setup on Linux—and the requirements, take a look at VPS-minimal, we’re talking maybe as low as the 2-euro-a-month VPS, assuming less than 1TB bandwidth. If that turns out to be insufficient, the $5 DigitalOcean instance will be plenty.