Skip to main content

Babble: Instant messaging client for Plone

Project description

Introduction

Babble: Instant Messaging for Plone

Babble is an instant messaging service for Plone. It consists of babble.client as the Plone front-end client and babble.server, a Zope2-based messaging service, as the backend chat service.

Communication between the client and server is achieved with JSON packets sent via XML-RPC.

The client consists of an Online contacts portlet with which you can initiate new chats.

Instead of using the provided portlet, you can also consider using Babble together with actionbar.babble .

Chat sessions occur in modal dialog chatboxes and make use of JQuery Ajax polling to provide seamless, real-time messaging.

During inactive periods, the polling interval gradually becomes longer until it reaches a specific (configurable) maximum polling interval.

Please note: even thought the polling values are configurable, it’s not advised to make the minimum polling interval less than 5000 milliseconds.

Features:

  • Remembers open chat windows on page reload

  • Chat windows can be minimized

  • New messages automatically opens chat window

  • An ‘online users’ portlet provides a list of currently online users

  • Configurable polling intervals

  • Clickable URLs recieved via chat messages

  • Requests to the messaging service are password authenticated

  • Can be integrated with the ActionBar of actionbar.panel

  • Can run on a different server than the messaging service

Compatibility:

Tested to work with Plone 3.3.5 and Plone 4

Documentation:

Full documentation for the Babble project can be found at http://babblechat.org

TODO:

  • Remove the DTML variables by getting them from the DOM. Then we can use jUnit for unit testing the js.

Changelog

2.0a1 (2011-10-05)

  • Add more finegrained message timestamps. This fixes the problem where only the chatbox in the currently active browser tab was updated. [jcbrand]

1.5 (2011-09-16)

  • Include permissions.zcml from Products.CMFCore and changed setup.py dependencies for Plone 4.1 compatibility [jcbrand]

  • Add GenericSetup xml file, babblechat_tool.xml, to enable configuration of the portal_babblechat tool. [jcbrand]

  • Use Zope3 resource registries. [jcbrand]

  • Escape html before sending. [jcbrand]

  • Urlize messages and on the sender’s side. [jcbrand]

1.4 (2011-03-18)

  • Full release.

  • Removed superfluous logging [jcbrand]

1.4b3 (2011-02-04)

  • Javascript fix in chat.js.dtml [jcbrand]

1.4b2 (2011-02-03)

  • Layed some groundwork for QUnit javascript unit testing [jcbrand]

  • Javascript fix for an IE7 quirk [jcbrand]

  • Only show the portlet search bar when it’s overflowing [jcbrand]

  • Fixed the portlet search bar’ rendering in IE7 [jcbrand]

1.4b1 (2011-01-18)

  • Fixed to work with email addresses as usernames. [jcbrand]

  • Show users’ fullnames in the chatboxes and the portlet. [jcbrand]

  • Simplified the polling system and provide better polling defaults. [jcbrand]

  • Send anonymous users to a login_form when they click on contacts in the portlet. [jcbrand]

1.3.4 (2010-10-18)

  • Fixed display of single number seconds if in 0-9 [pilz]

  • Converted message dates from server back to local time [pilz]

1.3.3 (2010-10-01)

  • Added 5 second timeout to xmlrpclib requests [do3cc]

1.3.2 (2010-05-21)

  • Removed the dependency on collective.js.blackbird being installed [jcbrand]

  • Fixed a bug whereby LDAP users are not visible [jcbrand]

1.3.1 (2010-05-07)

  • Unicode fix in utils.py [thomas_w]

1.3 (2010-05-06)

  • Full release [jcbrand]

1.3b3 (2010-04-28)

  • Fixed repeating page section rendering problem [jcbrand]

  • Added URL recognition [jcbrand]

1.3b2 (2010-04-17)

  • New polling solution via the doTimeout plugin instead of setTimeout [jcbrand]

  • Fixed ajax calls when in portal_factory as context [jcbrand]

  • Made the ‘Who’s online?’ portlet’s heading editable [jcbrand]

1.3b1 (2010-04-12)

  • Updated the README [jcbrand]

1.2 (2010-04-09)

  • Removed the option from portal_chat to bypass XML-RPC [jcbrand]

  • Bugfixes in tests and fixed getConnection AttributeError for utils.py [jcbrand]

1.1 (2010-04-08)

  • Tweaked jsregistry.xml to gain Plone3 compatibility [jcbrand]

1.0 (2010-04-08)

  • Initial release [jcbrand]

Contributors

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

babble.client-2.0a1dev.tar.gz (51.8 kB view details)

Uploaded Source

File details

Details for the file babble.client-2.0a1dev.tar.gz.

File metadata

File hashes

Hashes for babble.client-2.0a1dev.tar.gz
Algorithm Hash digest
SHA256 e055a9dbfb2b3fb29b31061ed9b2057183c941f5c37553c737a38a982bf980f5
MD5 d585c86729ea004d3b436baa4c92d1f0
BLAKE2b-256 b1bfaef49a40b0184bd38337f714af95eb65c6dd945b35330f1555a8cc00adfb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page