This chapter gives you a brief idea of what Hamsam is, how it is going
to be useful for you, and features of Hamsam.
Instant messaging has recently emerged as a new medium of communication over the Internet. Various services like Yahoo!, MSN, AIM have come up with their own protocols for sending and receiving instant messages.
However, it is never easy for a developer to make use of this emerging
technology. No two instant messaging services follow the same protocol. Each
has its own quirks and twists. Attempts are being made to arrive at an inter-operable
protocol that will become an internet standard. However, out of the popularity
of existing instant messaging systems arises the need to have a framework
for programming instant messaging systems. Hamsam is such a framework.
Hamsam gives you a protocol transparent technique of handling instant messaging
services. It provides a rich set of features supported by many service providers
- features like conferencing (ability to chat with more than one user at
the same time), rich text messaging (text in different font and color, URLs,
smileys, etc.). All these can be accessed without worrying about the underlying
protocol.
Hamsam elegantly handles protocols that does not support some features. The API allows developers to check which all features are supported by a specific protocol, and model the behavior of the client according to that.
The Hamsam API is written completely in Java. Besides the obvious advantage of portability, this has some additional benefits. Since Java is closely tied up with the web, you can create a variety of software using Hamsam, ranging from stand-alone Swing/AWT applications to IM bots.