See my other post, please, if you are limited to using HTTP.

The modifications I made to Smack (1.4.2) are subtle, and the classes are pretty small, but they require some detail to explain properly. The library does work as is. It uses two threads -- one that parses incoming XML and dumps the generated objects into queues, another that actively polls queues and notifies your listeners. I found that in some cases where Smack expects you to use one model (active vs passive notification), you really would like to use the other. This led (I think) to a quote on the Web site that was something like "some developers find that the Chat class doesn't meet their needs, so they implement their own using PacketCollector, etc.". So I made some modifications and wrote a couple new classes related to that. I prefer to write my own queues and Runnables because you have more control that way. If you are not comfortable doing this, don't worry, their stuff works fine as is. You can just register listeners and away you go, updating your GUI in event handlers.

Yes, I would contribute my modifications, but first I need to document them (and also make sure they are still needed -- they update fairly regularly). I will share them with you either way if you go this route.

Erik

P.S. There are Applet chat systems out there that have been around for a long time. Don't forget to check those out. Also, there is at least one open source Swing client built on Smack that looks pretty good, especially in the area of SSL. See the Smack forums and you can find an announcement of it. Probably, there are JavaScript-based chat implementations out there too. If you are going to use JavaScript and have simple requirements, Leon's suggestion might fit the bill.



Lixin Chu wrote:

Hi,
I am also interested in integrating a chat engine with my Struts
application - with very similar requirements. In fact I posted a msg
here before checking this thread !

I am not familar with any of the Sockets, ServerSockets, XML API or
Threads. So looks like building from scratch is not an option to me;
Smack sounds good, but with the problems you pointed out, I doubt if I
am able to handle them correctly.

Would you contribute your modifcation back to Smack someday ?

appreciate your info very much !
lixin

On 5/5/05, Erik Weber <[EMAIL PROTECTED]> wrote:


I just finished putting together a system with a Swing client and
combined services over XMPP and HTTP.

I think Leon's suggestion of doing your own is not bad, if you are good
with Sockets, ServerSockets, XML APIs and Threads (find a good tutorial
on building a chat system such as in the ubiquitous "Thinking in Java").
There is also JMS which gives you a low-level core. If you want
something higher level, just get Smack from jivesoftware.com, which will
give you an OO interface to Jabber (XMPP). Then get jabberd from
jabber.org. jabberd 1.4  is small, written in C and gets the job done
for what you are talking about, so I would start with that. They are
working on the 2.0 "enterprise" version.

I will warn you that while Smack is a great library (you'll get classes
such as "Chat", "Packet", "Message", "Presence", etc.), there are some
pitfalls related to Threading to watch out for. I rewrote about a half
dozen of the core classes. Fortunately, Smack operates with just two
main disptach Threads so once you spend some time with the PacketReader
and XMPPConnection classes, you'll figure it out. Apache license, too.

Erik


masegui wrote:



The requirements are these:
1. A user has a list of the other users in the system. He can click a
button that initiates a conversation with the selected user. The other
user can accept or not the conversation. If accepts, a "chat room" is
opened and now then can have a conversation. The rooms only accept 2
people. We would like a user to be able to have several conversations at
a time, but each conversation only between 2 people.

Thanks in advance.

Miquel Angel Segui





<-----Original Message----->
From: Leon Rosenberg
Sent: 4/5/2005 10:50:38 AM
To: user@struts.apache.org
Subject: Re: [OT] Recommendation of Instant Messagging System

if your only functionality is to allow users to send each other




messages




which are embedded in the site (html, or something, but no
standalone-desktop solutions) forget about existing systems and
implement it by yourself.
I have implemented dozens of such systems over the time, it's normally
about 100 locs, much less effort than an integration of an existing
system is.

maybe you could tell us a bit more, about the requirements of the
system, so we could give you more specific answer.

regards
Leon

On Wed, 2005-05-04 at 08:13 +0200, Miquel Angel wrote:




We are developing an application (struts 1.1 + Tomcat 5.5 + Java




1.4). One




of the requirements is to implement an instant messaging system for




the




users of the site (the system should not be very complex). Do you




mind to




share your experience in using this system. We are looking for free




or non




free systems.


Thanks in advance.

Miquel Angel Segui




--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]






---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

.






---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]





--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to