views:

54

answers:

1

I'm looking into building an IM-type application using Java stack (for the server at least). I'd be interested to see any information/advice on how applications like Skype/AIM/MSN work, as well as know any technologies/APIs that might be relevant. Without giving away the idea itself, it's perhaps more akin to Google Wave than Skype, but information useful for either is very welcome.

Specific points I have already thought of include:

  • Server Vs P2P... for reasons of logging my system will require all communication to go through a central server. Is this how other IM tools work... especially when audio/video comes into the equation?
  • Cross-communication with other systems. Are there APIs for this or do all IM providers work hard to keep their protocol secret? The nature of what I'm designing means integration could probably only be limited, but it definitely seems worthwhile from a business perspective
+3  A: 

Get to know XMPP. There's plenty of Java libraries and most major IM clients support XMPP.

Anton Gogolev
Exactly the kind of thing I'm looking for. Can you recommend any particular Java lib... is there any 'official' one?
John
The best lib should be Smack from OpenFire project: http://www.igniterealtime.org/projects/smack/
instcode