ajax im
download 3.41
compressed(yui compressed – 324 kb)
uncompressed(full documentation – 347 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.41:
- Remove Buddy button now works properly
- Minor bug fixes
Updates in version 3.4:
- Fixed popup.php Include Path, Bold, Italic, and Underline errors (Issue #116, Issue #111, Issue #91).
- Added option to disable the register ability.
- Multiple releases (YUI Compression, Full Source).
- Blocked buddies are now blocked when they should be (Issue #112).
- Added buddy icons (Issue #92).
- Added context/right-click menus (Issue #12).
- Added buddy profiles (Issue #13).
- Added Lingo-Replacement feature, can be used with multiple languages (Issue #127).
- Buddy status changes are shown in chat window.
- Custom timestamps now used in chat as well.
- User search now lists users' emails.
- Created update.php to update your ajax im installation from version 3.3 to 3.4.
- Created test-uploads.php to allow you to test your server for the ability to upload files.
- Created php.ini.sample. If you need a php.ini, just rename this to php.ini.
- Added auto-away/auto-idle feature (Issue #124).
- Fixed use of &, <, and > symbols (Issue #101).
- Fixed use of new lines (Issue #118).
- Added Shift+Enter shortcut to add a newline.
Updates in version 3.3:
- No more PHP file for languages, all language information is stored in Javascript (Issues #40 & 61)
- Language files are loaded dynamically and can be switched by user before login (Issues #40 & 61)
- index.php is now index.html, as there is now no PHP in the index file
- Fixed issue regarding buddies and letter casing (Issue #38)
- IM sounds fixed (Issue #42)
- IM timestamp format is now fully configurable (Issue #16)
- Selecting/hovering over users in chatlists fixed (Issue #81)
- Chatrooms can now be predefined for the "Join Room" chatlist (Issue #78)
- Added previously nonexistent "Make Admin" PHP function (Issue #24)
- Fixed error when "Sign On" button clicked a second time (Issue #3)
- Various minor issues (Issue #60)
- Page title is now modifyable via config.js (Issue #21)
language packs
| language | size | updated |
|---|---|---|
| Spanish | 3 kb | 05/02/2008 |
| German | 3 kb | 09/14/2008 |
| Brazilian Portuguese | 3 kb | 05/02/2008 |
| Portugal Portuguese | 3 kb | 09/14/2008 |
| Dutch | 3 kb | 05/02/2008 |
| Simplified Chinese | 3 kb | 05/02/2008 |
| Traditional Chinese | 3 kb | 09/14/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 |
| Arabic | 3 kb | 09/16/2008 |
| Bulgarian | 3 kb | 09/16/2008 |
previous versions
| version | size | released |
|---|---|---|
| ajax im 3.4 (full) | 315 kb | 05/08 |
| ajax im 3.4 (compressed) | 296 kb | 05/08 |
| 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
New! Support Forum And Reason For No Updates
March 10th, 2009
So as you can see, there haven't been any updates to Ajax IM in a while. I've been getting a lot of questions regarding whether or not the Ajax IM project is "dead" or when I will "have the next update out."
The reason that there hasn't been an update in a while is because I'm actively working on VisTrac, which should be out within a few months, and haven't had any time to update Ajax IM. Once VisTrac is launched, hopefully I will be able to find some time and finally update Ajax IM.
If you think you have a lot of time and a fair amount of PHP experience (3+ years), feel free to send me an email with some examples of work you've done in the past, and what you would like to contribute to Ajax IM.
On another note: I've setup a forum for Ajax IM, where you can post bug reports (the bug report software is broken), feature requests, and other questions/comments about the script. If you have a question about the software, please check the forum first to see if someone else has had the same issue.
- Josh
View More Posts »
license
ajax im is licensed under a modified BSD license.
bugs? features? questions?
Find a bug? Want to request a feature? Question about Ajax IM? Post it on the forums!
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:
- 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.
- 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:
- Web-based support services
- Instant messenger for a social network
- Intranet instant messenger
And many others...
contact
If you would like to contact me for any reason, I am available via email at twist@unwieldy.net.