Babble - A Chat Plugin

Sorry for the delay, James. Tried to test this yesterday but was blocked a coincidental bug in Discourse itself:

With that issue fixed, I’ve re-tested but am still seeing the same behaviour.

It seems like there’s something wrong with your setup, for example visiting community.froware.com/babble/notification.mp3 results in a 404, whereas discourse-babble.com/babble/notification.mp3 sends the notification audio file. Any reason you can think of that this might be the case? What other plugins, or customized code on the server side, might be interfering?

Apologies, when I was testing before, I disabled the plugin to see if it still behaved the same way as previously — whereby it tries to load the .mp3 URL, but as the plugin is disabled, it renders the 404 page instead of downloading the file. I’ve re-enabled it now.

Hm, so the bug exists when Babble is present, but disabled, and someone logs in with OAuth?

I’ve just pushed a fix so that the notification file is not loaded unless a) Babble is enabled b) there are chats for the current user to participate in c) the sound option is enabled for that user, which I’m hoping will clear up most of the use cases here. We still have to check though that users who are loading the mp3 are able to sign in with OAuth. :confused:

1 Like

Correct. If the plugin is enabled, then the browser downloads the .mp3 file on login. If it’s disabled, it still attempts to open that URL, but it fails and renders the 404 page instead.

Incredible, James. Just freakin’ incredible! You’ve put so much into Babble in these last couple of weeks and it’s getting better and better. :fireworks:

For those of you who didn’t follow the previous Babble mega thread, the fact that James is pouring so much into Babble is all the more admirable when you read his context here.


Alright. Now for test results, James. I just did a round of testing with Babble 4.0.3 and there are some things that don’t work the way that I expect. I thought I’d send you a PM with the details, but others may be experiencing the same things, so I thought I’d put them here instead.

Sound Notifications Aren’t Working in a Specific Scenario

Let’s start with how I believe this should work:

I know you developed this feature specifically for my community (thanks!). It’s just not working the way I expect so far.

Here’s the scenario:

I tested this across browsers, mobile/tablet/desktop, and with Babble toggled open and closed. The result was always the same.

The good news is that 1:1 DMs within Babble and @ mentioning someone does generate the notification sound.

Side note: If you have multiple Discourse tabs open, the sound cascades across the tabs every 3-10 seconds. It’ll play in one tab, then another tab a few seconds later, then another tab a few seconds later, and so on.

User Level Babble Options Not Available When a User Isn’t a Moderator or Admin

A user doesn’t see the new Babble options at https://yourforumname.com/u/username/preferences/interface unless they have either Moderator or Admin privileges as defined at https://yourforumname.com/admin/users/NNNN/username. Without Moderator or Admin set to Yes, they don’t see the “Disable Babble chat completely” or “Enable browser sound for new chat notifications” at all.

Babble%20User%20Level%20Options%20Not%20Displaying

Perhaps this is by design. If it were me, I’d give access to the user level Babble options regardless of admin or moderator status and regardless of trust level. I don’t see the point of restricting the options.

Closing Babble on Mobile and Left Behind Animation Grayness

This could be due to the more assertive CSS changes you made so I can’t steamroll Babble as much or due to our unique Puttytribe community CSS.

  1. Scroll down on a page
  2. Toggle Babble open
  3. Select a chat room
  4. Toggle Babble closed

Following those steps, it leaves a gray horizontal line leftover from where the closing animation failed to seemingly finish.

4 Likes

Thanks for the excellent bug reporting; I’ve pushed some fixes for these.

  • Sound notifications should be much more reliable now, and trigger when you a) have a chat open and receive a message, or b) are directly messaged or mentioned somewhere. I’m thinking about splitting these into two separate user preferences, since if it were me I might be interested in the setting where I’m told someone’s trying to talk to me, but not every time someone decided to post an emoji in the random channel I have open.

  • I’ve fixed the user level babble options so they appear for everyone

  • I’ve also patched up the adaptive height setting, which I believe was causing your issue. I think it’s a much less erratic setting now, and now calculates the height of the chat on resize / scroll based on the difference between the bottom of the header element (.d-header), and the bottom of the screen

1 Like

So sorry, James. I don’t know how I managed to reply to the first half of your message and somehow glaze over the second half where you mentioned that you’d pushed an update for this :man_facepalming:t5:

I just tested with and without notifications enabled and experienced no issues; all OAuth options now work as expected. :tada: Thanks so much for your diligence on this and apologies again for the delayed feedback.

That sounds wonderful to me.

Agreed. It’s fixed.

Whatever was causing my issue is now gone with your recent updates.

I have a little more testing to do about the sound notifications since they aren’t triggering on mobile or tablet view, even when I allow notifications at the browser level in Firefox or Chrome. I need to more thoroughly test before I can make a report on that.

I’m trying to create a chat channel based on a group and I get this error

Hm, ive pushed a fix for that particular error, although I dont think it was particularly related to creating a group channel. Can you let me know if that fixes it for you?

That fixed it, thank you! Amazing plugin btw.

1 Like

I gave up and had to disable it and then later after a discourse update the plugin caused my instance to fail to launch so I removed it.

I may check again later but the risk is not worth the feature.

This was fixed a while back and mentioned here. I’d suggest giving it another go @Jeff_Vienneau; Babble is stable with the latest Discourse at the moment, and I’ve been responding quickly to reports that things are broken.

2 Likes

Good to hear things are fixed. It was an experiment at the time and worth a re-visit later for sure.

I have problem with babble open by default function.
When I open forum nothing happens, no console errors.

Is this feature also not working with yours discourse?

1 Like

Hm, it’s enabled and appears to be working on discourse-babble.com; are you able to PM me your forum address? Are you able to open the chat normally from the bottom tab once the forum is loaded?

I see the same problem on our instance, can it be theme related? we use customised Material Design Stock Theme and Header Search Theme.
After enabling “open by default” site setting, Babble does not load at all (no button/tab as well)

I’ve pushed a fix just now; let me know if an update fixes it for you?

2 Likes

Like a charm! Thanks, James!

1 Like