Chapter 6. Talking with Friends: One-on-One Chat
WHAT'S IN THIS CHAPTER?
Presence subscriptions
Managing rosters and contacts
Message routing
Best practices for one-on-one communication
Chat state notifications
For many years, XMPP was used primarily for its original purpose of instant messaging. The other uses of the protocol, many of which you will see in upcoming chapters, were just the experiments of a few creative hackers. Today, the instant messaging pieces aren't as fashionable as publish-subscribe, group chat, and collaborative applications, but the IM foundations of XMPP remain extremely important.
Instant messaging systems are first class social networks. Each member has a social graph, their roster, and can communicate and participate with others. These social tools are baked into XMPP at a low level, and they make building social applications quite easy. Unlike many popular social networks, the XMPP network is also federated, connecting many disparate communities together.
Social and community aspects of applications are becoming increasingly important, and therefore it is imperative that you gain an understanding of XMPP's basic social tools. The chat application in this chapter, called Gab, may not be on the cutting edge of software, but its parts can be used to add important social features onto nearly any kind of application. Indeed, many users will expect to see these features as they have grown accustomed to them in other tools.
Instant messaging is the oldest use of XMPP, ...
Get Professional XMPP Programming with JavaScript® and jQuery now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.