Speccing out a full page chat plugin

Alright, I’m ready to open this up to beta testing. If you’d like to have a play, go here:

http://discourse-babble.com/chat/chat/292

And let me know what you find!

Improvements since we last left our heroes:

  • Allowed loading of chat history
  • Removed duplicate avatars and timestamps for messages which are sent close together
  • Mentioning works!
  • Link unfurling works!
  • Added date separators
  • Logged out users can view chats (if they have permission)
  • The whole thing is faster!
  • Chat activity no longer clogs up your user activity page

‘Who is typing’ is complete pending a PR to the Discourse core repo:
https://github.com/discourse/discourse/pull/4562

5 Likes
  • Displays very nicely on mobile but seems to hijack my scroll somehow, since it I can’t momentum scroll, i.e. I can’t flick the page with my finger to scroll faster.

  • Logging in from /chat/chat/292 redirects me to the front page instead of back to Chat

  • Forces me to scroll past the top menu to reach the text input box. I’m able to touch the menu and scroll it.

  • Something is definitely slowing down the page. When writing on mobile (iPad Air 2, safari) text input is noticeably slower.

  • Hitting edit button on mobile is extremely hard and very close to delete.

  • How do I cancel an edit on mobile? On desktop I can use esc but there should probably be an easy way out on both platforms.

  • Not sure why but I got a couple “Invalid date”

5 Likes

Feedback:

Urgent

  • When I post message is shows up, but second message does not render. Only way to see it is do a screen refresh.
_ember_jquery-863361d….js:26009Error: Property set failed: object in path "currentTopic.presence.sam" could not be found or was destroyed.

High

  • It is critical to see who is online in chat. needs a box that shows who is in the chat room.

Medium

  • Show “who is typing”
  • collapsing has too much margin.
one
two
three

Should render same as:

one [enter]
two [enter]
three [enter]
  • 1m styling is too strong. Should be a lighter grey, not black. Consider moving it to the left like slack:

  • Personally I think the use of local times in Slack is better than 1m, 1h etc.

  • Add a way to bookmark a message and reply directly to a message

  • Start thinking about “moving out of chat” … select N messages and “copy it into a new topic” or something like that.

11 Likes

Looks like babble is breaking Discourse at the moment: https://meta.discourse.org/t/discourse-fails-with-this-resource-is-not-a-function-how-do-i-find-which-plugin-it-is/53571/4

I’ve had to remove it but my users are having chat-abstinence issues :smiley:

Ya it’s the Ember 2.4 upgrade. It’s on my list for today. <3

6 Likes

Perfect idea!!!!:笑脸:

Hello,
Testing instance doesn’t work for me on iPad. Is the plugin compatible with latest Discourse? Thx!

Can you describe what kind of ‘not working’ you’re seeing? As far as I can tell Babble is working with the latest version of Discourse.

1 Like

Hi, I’ve gave it another try and after registration and login it works…

Sorry, I was not aware that I need to be registered. As a guest all I was getting was “spinning/loading icon” and nothing more (no message to login or any kind of error)…

I just wonder if it is possible to limit width of babble window… It looks like too long line can break the design… so that right “who’s online” column is out of screen.

Anyway good work! Thanks for all the work, I’ll definitely use the plugin.

It should probably be noted that Discourse Chat now exists and should be used instead

1 Like