Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

JavaScript Jabber/XMPP Client Library

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 examples
Octocat-spinner-32 src
Octocat-spinner-32 utils
Octocat-spinner-32 AUTHORS
Octocat-spinner-32 COPYING
Octocat-spinner-32 ChangeLog
Octocat-spinner-32 Makefile
Octocat-spinner-32 README
Octocat-spinner-32 jsjac.js
README
JSJaC - JavaScript Jabber Client Library
========================================

JSJaC is a jabber/XMPP client library written in JavaScript to ease
implementation of web based jabber/XMPP clients. For communication
with a jabber server it needs to support either [1]HTTP Polling or
[2]XMPP Over BOSH (formerl known as HTTP Binding).
JSJaC has an object oriented interface which should be quite easy to
use.
Communication is done by using the HTTPRequest object also refered to
as AJAX technology. Your browser must support this.
JSJaC is fully compatible with all major AJAX/JavaScript frameworks
like prototype, mootools, jQuery, dojo and YUI!.

License
=======

JSJaC is licensed under the terms of the GNU Lesser General Public 
License (LGPL). Please refer to the file named 'COPYING' that came with 
this distribution for details.

Hints on Usage
==============

Service Address
---------------

Due to security restrictions you may have to forward or proxy requests
to your jabber server's service address.

Let's say your JSJaC based web application is located at
http://example.com. Your Jabber server is at jabber.example.com and
it's HTTP Binding service is located at
http://jabber.example.org:5280.

As most browser don't allow scripts to connect to a different domain
and/or port as they have been loaded from you'd have to find a way how
to access this service at some URI hosted at http://example.com/.

If you're using apache you could use mod_proxy and mod_rewrite to do
this job for you:

%<---
<VirtualHost *>
  Servername example.com
  DocumentRoot /var/ww
  AddDefaultCharset UTF-8
  RewriteEngine On
  RewriteRule ^/http-bind/ http://jabber.example.com:5280/http-bind/ [P]
</VirtualHost>
%<---

With this you'd end up having access to the Jabber server's service at
http://example.com/http-bind/ (the httpbase address).


Debug Logger
------------

JSJaCConnection supports use of [3]JSDebugger which is available
separately.

JSJaC also ships with a class 'JSJaCConsoleLogger' which lets you log to
Firebug's and Safari's console.


Example
-------
For an example on how to use this library within your web application
please have to look at 'examples/simpleclient.html'.

Supported Browsers and Platforms
================================

The following browsers are known to work. Let me know about others!

Microsoft Internet Explorer 6+7
Firefox 2.0.x
Opera 9
Safari 3


References:
===========
[1] http://www.xmpp.org/extensions/xep-0025.html
[2] http://www.xmpp.org/extensions/xep-0206.html
[3] http://svn.stefan-strigler.de/JSDebugger/trunk
Something went wrong with that request. Please try again.