XMPP (eXtensible Messaging and Presence Protocol) is a messaging protocol that enables communication between two or more devices via the Internet. It is used primarily to power instant-messaging services such as Jabber and WhatsApp. In this way, it is similar to other protocols such as WebRTC, which enable near real-time communication between Internet-connected devices.
With this book, developers will learn about the fundamentals of XMPP, be able to work with the core functionality both server-side and in the browser, as well as starting to explore several of the protocol extensions. Get a solid grasp of XMPP and how it works, and be able to use the protocol to build real-world applications that utilize the power of XMPP. By the end of this book, you will know more about networking applications in general, have a good understanding of how to extend XMPP for your needs, and use it in applications.
What you will learn
- Install and configure an XMPP server and use it to connect from a traditional desktop client and send a message
- Build a simple server-side application that will respond to messages from our logged in desktop client
- Install and run XMPP-FTW, connect to the server from the browser, and handle incoming/outgoing messages
- Connect to a multi-user chat room, send/receive stanzas, add a room password, join a protected room, set the room’s subject, and change a user’s affiliation
- Get to grips with the publish-subscribe extension of XMPP and use it to build a pusher system that can make any website real-time
- Build a simple XMPP component and create an extension for XMPP-FTW that allows you to use your own custom format
- Build an XMPP version of the classic game “Pong”