IM & Presence Overview
Version 2012.02 of the AJAX XMPP Library (CAXL) for hosted deployment has been released. Read the release notes here.
The Cisco AJAX XMPP Library (CAXL) is an API that provides a jump start for developers writing Extensible Messaging and Presence Protocol (XMPP)-enabled web applications.
It is ideal for companies looking to leverage the Cisco WebEx Collaboration Cloud and integrate Presence and messaging into their own custom web-based applications. With the CAXL Library developers can:
- Embed a customer support portal into a company website
- Add instant messaging capabilities into a gaming application
- Add Presence information and messaging capability to custom applications
You can use CAXL in both hosted deployments and on premise deployments.
The IM & Presence (CAXL) tools provide you with the following
1-to-1 Instant Messaging- Ability to initiate and receive P2P IM
- Supports XHTML-IM rich-text.
- Ability to create adhoc and persistent chat rooms
- Ability to invite and be invited to chat rooms.
- Ability to search for existing chat rooms
- Personal Eventing Protocol - Ability to create/publish/subscribe to pub/sub service nodes on a server.
- Ability to Add/Update/Remove Contacts.
- Ability to move contacts between groups.
- Ability to set device Presence.
- When integrated with CUP, SDK can be configured to set CAXL device Presence to be the same as Presence engine composed Presence.
- Ability to create temporary subscriptions to users who are not on your roster ("Quick Contacts")
- Ability to do bulk subscribe/unsubscribe of temporary subscriptions. Useful in multi-page applications where each page may have a different list of users.
Architecture
The Cisco AJAX XMPP Library (CAXL) provides a foundation for developing web-based applications that utilize the XMPP protocol. For detailed information on the XMPP standard, please visit http://xmpp.org The AJAX library is a JavaScript XMPP client library for integration of instant messaging, Presence and roster services from the Cisco WebEx Collaboration Cloud. It is comprised of the following components:- jQuery: an open-source library for searching, traversing, and manipulating the browser's DOM
- CAXL Core: a high-level API for messaging and Presence
- CAXL UI: HTML UI components built on top of the core CAXL API
The library can be used purely as an API or as a web UI or both. The core CAXL API is not dependant on the CAXL UI being used. The internals of the library utilize jQuery for low-level JavaScript tasks but there is no dependency on any JavaScript UI framework for the UI components. The Cisco AJAX XMPP library is an object-oriented, client-side library which communicates to a BOSH server component. BOSH (Bidirectional-streams Over Synchronous HTTP) technology is used as an HTTP binding for XMPP communications that is useful in situations where a device or client is unable to maintain a long-lived TCP connection to an XMPP server, .g.e in a web browser.