[ANN] Jabber

Michael Rueger m.rueger at acm.org
Wed Jun 25 18:00:34 UTC 2003


Hi all,

finally I got around to actually finish the Jabber stuff to a point 
where I'm not too embarrassed to publish it ;-)
I've put a package at
http://squeaklet.com/jabber-package.zip

It includes not only the chat client stuff but also the new version of 
YAXO. One reason why it took so long were the network rewrites and 
adding the namespace handling to yaxo.

You need an uptodate image with the network rewrite already included.

Please fileIn in the following order:

Yaxo removal
Yaxo 2.0
Network-IM
Network-IM Jabber
Network-IM Jabber UI

Execute "JabberBuddyList open" and you will be prompted to define a new 
identity. Once you done that this identity will be remembered and you 
can pick it on subsequent connects.

Below are the change set comments.

I will upload and post the Yaxo removal and 2.0 packages separately 
later, just wanted to get it out the door NOW ;-)

Enjoy

Michael

-------------------------------------

Change Set:		Yaxo-removal
Date:			25 June 2003
Author:			Michael Rueger

Removes the XML parser from the image.

----

Change Set:		Yaxo-2.0
Date:			25 June 2003
Author:			Michael Rueger

Version 2 of the Yaxo XML parser and writer toolkit.
This version adds pretty complete handling of namespaces to both the 
parser and the XMLWriter.
The namespace code is based on code Simon Dobson.
Whitespace handling bug fixes by Colin Putney

----

Change Set:		Network-IM
Date:			25 June 2003
Author:			Michael Rueger

A few abstract classes for building IM clients. For now only the 
JabberClient makes use of it.
The mechanisms are close to the ones already used for the IRC client, so 
porting IRC over to this framework should be easy.

---

Change Set:		Network-IM Jabber
Date:			25 June 2003
Author:			Michael Rueger

A non-UI client for the OpenSource jabber im protocol (see 
http://jabber.org).
This implementation relies on the IMClient framework.
This version includes contribution from different sources, among them 
Duane Maxwell, Andres Valloud/exobox, Niko Schwarz.
The current version handles most of the (un-)subscribe protocol, 
messages and buddy status changes. Registration is untested and will 
probably not work as is.

Documentation is non existing right now.
The basic functionality is that the JabberProtocolEntities are parsed 
from the SocketStream and then dispatch themselves to the client.
The client has a registry with handlers for the different event but also 
includes some default handling of buddy subscription and status changes.
Marhaling and unmarshaling of entities to/from XML is done in a 
smi-automatic fashion. It is usually enough for new entities to 
overwrite the messages marshalingAttributes, marshalingElements, 
marshalingStringElements and umarshalFromDOM;. Some of this code might 
be general enough to move it into Object as a class extension at some point.


--

Change Set:		Network-IM Jabber UI
Date:			25 June 2003
Author:			Michael Rueger

Very simple UI for the Jabber chat client.
More an example of how to use the event and handler registries in the 
client.
Try
	JabberBuddyList open


---




More information about the Squeak-dev mailing list