ajax im

If you like this script and would like to support further and continued development, please feel free to donate:
$

download 3.4

compressed

(yui compressed – 297 kb)

uncompressed

(full documentation – 317 kb)

what is it?

ajax im ("asynchronous javascript and xml instant messenger") is a browser-based instant messaging client. It uses AJAX to create a near real-time IM environment that can be used in conjunction with community, intranet, and social websites. No refreshing of the page is ever needed for this "web application" to work, as everything is updated in real-time via JavaScript.

demonstration

Launch the demo here. Demo accounts are usernames "test", and "test[1 to 4]". Password is "test". You can also create your own account on the demo.

updates

Updates in version 3.4:

Updates in version 3.3:

language packs

language size updated
Spanish 3 kb 05/02/2008
German 3 kb 05/02/2008
Brazilian Portuguese 3 kb 05/02/2008
Dutch 3 kb 05/02/2008
Simplified Chinese 3 kb 05/02/2008
Vietnamese 3 kb 05/02/2008
Russian 3 kb 05/02/2008
Italian 3 kb 05/02/2008
Persian (Farsi) 3 kb 05/02/2008
French 3 kb 05/02/2008
Japanese 3 kb 05/02/2008
Korean 3 kb 05/02/2008
Turkish 3 kb 05/02/2008

previous versions

version size released
ajax im 3.3 284 kb 03/08
ajax im 3.22 273 kb 01/08
ajax im 3.21 273 kb 12/07
ajax im 3.2 276 kb 12/07
ajax im 3.1 297 kb 02/07
ajax im 3.0 297 kb 11/06
ajax im 2.53 199 kb 10/06
ajax im 2.52 199 kb 10/06
ajax im 2.51 200 kb 10/06
ajax im 2.5 199 kb 10/06
ajax im 2.02 125 kb 08/06
ajax im 2.01 125 kb 08/06
ajax im 2.0 124 kb 08/06
ajax im 1.0 53 kb 10/05

news

3.4 Released, Looking For Contributors
May 3rd, 2008

Version 3.4 has been released with an extensive list of updates and new features, thanks to ajax im's new contributor, Benjamin Hutchins. He has put quite a lot of work into getting many of the requested features (and bug fixes, of course) into the script. We're not done, either! Just wait until you see the upcoming version.

On that same note, I am looking for two to three more developers. If you are interested in contributing to this project and really taking it further, please email or contact me (email preferred – contact information available below) with your credentials. As well, I'm looking for contractors interested in doing something involved with ajax im; for more information about this, please contact me.

On the left, you will notice "compressed" and "uncompressed" download buttons. The compressed version was compacted using YUI Compressor and provides the smallest package possible. Uncompressed includes commented functions, divided files, and is better for development and debugging.

As a final note, and keeping along the same vein as the other posts, we have a new language pack, Turkish, giving us 13 languages. As always, if you have another language you think it should be translated into, feel free to do so! Contributions are always appreciated.

View More Posts »

bugs? features?

Find a bug? Want to request a feature? Submit it to the Bug Tracker!

how it works

The XMLHTTPRequest object allows HTTP requests to be sent to the server and get input back from the server. There are two parts to the client-server interaction through this object:

  1. The client "pings" the server (a PHP script) for new messages. The server in turn queries a database for any messages for the client, and returns them as JSON. The XMLHTTPRequest object passes this JSON text be parsed by the rest of the JavaScript.
  2. The client sends data to the server (a PHP script), such as a new message to another user. This data is then processed by the server ("cleaning" the data of any thing invalid) and put into the database, which is later "pinged" by another client.

why?

Why not? This system has many useful purposes in many environments, as was it an interesting script to code and assemble. Some example applications could be:

And many others...

contact

If you would like to contact me for any reason, I am available via:

email: twist@unwieldy.net aim: epg msn: twist@unwieldy.net