Added by Jonathan Nolen, last edited by Jonathan Nolen on Feb 14, 2007  (view change)

Labels:

confluence confluence Delete
Enter labels to add to this page:
Wait Image 
Looking for a label? Just start typing.
Name Chat Plugin
Author(s)  
Priority High
Description A web-based chat plugin with transcripts

Description

I'd like to offer a real-time, group-based, persistent chat inside a Confluence page. The main purpose of this plugin would be to allow groups to have an online discussion between multiple parties, collaborate over Confluence content with a real-time backchannel, and keep a permanent record of the conversation, which would then become searchable by Confluence search.

This Chat plugin is specifically not about person-to-person IM. There are plenty of good systems for that already, and we incorporate them to a small degree already with the IM Presence Plugin.

Implementation

Any user can create a new chatroom by placing a chat macro on a page, like this: chat:My Room Name. That macro will render an HTML table that contains information: name, last activity, participants, files uploaded, transcripts by date, as well as a big link that says "Join Chat."

Clicking the "Join Chat" link will launch a new popup window with no broswer chrome, but containing the chat-room UI. Across the top should be a title. Down the right side should be an info panel. At the bottom is the input area and submit button, and in the middle should be the content window. Just like regular IM, content should be appended to the bottom of the page and it should gradually scroll off the top. As each participant submits a message, it appears on the other screens with name and timestamp.

Whenever there is activity in the chat room, it should log the conversation. That conversation should be stored on a child page of the chat-room page, separated by date – probably one page for a full day's transcript. If there is no activity that day, don't create a transcript page. The transcripts should be formatted as close to the original as possible.

Permissions should be handled by using the permissions of the page on which the chat-room macro occurs. The Chat will also take the parent page's CEO id as it's id, in order to ensure uniqueness.

Use Cases

Features

Beyond the basic chat feature, we could also add:

  • Wiki-rendering of messages, or at least wiki-link rendering.
  • Paste-support, that allows you to view pasted content at full size and formatted as <pre>.
  • Sound. We could make a beep when a new message appears.

References

Screenshots

Here are a couple of very simple wireframes that describe what I'm imagining.

Sounds bloody useful. Any time frames?

Dan @ Adaptavist already has a prototype up and running - just need to get some other projects out of the way before we can finish it off and release it.

Whilst Dan does indeed have a prototype of a chat application working, it is missing the trickier stuff in the description above such as logging, user lists, attachment lists, calendar view of transcripts and permissions. So don't expect it to be done overnight.

This will be a major new feature. Can't wait to use it. How's it going?

I think this should be a whole new form of content (pages, news, discussions)

Here is my IM Video Meeting Plugin

http://confluence.atlassian.com/display/CONFEXT/Video+Conference+Plugin

I plan to add a text based chat for this..

Posted by Matti Kiviharju at Dec 14, 2007 07:44 Updated by Matti Kiviharju

I added this to list:

http://confluence.atlassian.com/display/DEVNET/Video+Chat+Plugin+for+Confluence

Idea is same but there is Live Video Stream from users Webcams and simple Chat.

I am also tested that the Desktop Sharing with Red5 Flash Server via web browser is possible.

This video stream work real time and very fast like in Skype or Messenger.

I'm also interested in the Chat plugin. The development group that I belong to is thinking of using IRC to coordinate design changes amongst geographically diverse members. The Confluence Chat plugin would allow us to more easily document chats in our wiki.