Book Image

Practical XMPP

By : Steven Watkin, David Koelle
Book Image

Practical XMPP

By: Steven Watkin, David Koelle

Overview of this book

XMPP (eXtensible Messaging and Presence Protocol) is a messaging protocol that enables communication between two or more devices via the Internet. 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. You will not only have a solid grasp of XMPP and how it works, but will also 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, and have a good understanding of how to extend XMPP, as well as using it in sample applications.
Table of Contents (16 chapters)
Practical XMPP
Credits
About the Authors
About the Reviewers
www.PacktPub.com
Preface
Free Chapter
1
An Introduction to XMPP and Installing Our First Server

Server Modules


Whether you use Prosody, Tigase, ejabberd, or the XMPP server of your choice, you will have the ability to install server modules, components that extend the capabilities of your server and that can be independently installed, enabled or disabled, and configured. Some modules might provide capabilities to support a XEP, some might provide integration with databases and other storage frameworks, and so on. At the time of writing, Prosody has 230 modules, which you can explore at https://modules.prosody.im. Together, these modules comprise the prosody-modules project. The source code for these modules is located on Prosody's Mercurial site, https://hg.prosody.im/prosody-modules, and you can pull them down easily using Mercurial.

If you do not yet have Mercurial, you can apply the following steps:

$ sudo apt-get install mercurial
$ mkdir ~/prosody-modules
$ cd prosody-modules
$ hg clone https://hg.prosody.im/prosody-modules

When, at some point, you want to update the files in...