The XMPP was developed within the Jabber project in the late 1990s as a means to provide the necessary communication infrastructure for instant messaging (or chat) applications. These kinds of applications required an open, flexible, and extensible protocol that allowed peers to communicate with each other, even if they were residing behind separate firewalls.
The protocol has since grown and covers a lot of different use cases requiring instant messaging (that is, asynchronous messaging between peers) that are not related to chat. The protocol is also maintained by a separate organization, called the XMPP Standards Foundation (XSF). The core of the XMPP protocol is also standardized by the Internet Engineering Task Force (IETF). XMPP Extension Protocols (XEPs) are maintained and published by the XSF.
Chapter 9. Social Interaction with Your Devices Using XMPP
In the previous chapters of this book, we discussed different relatively simple protocols and communication patterns to illustrate how communication can be done with devices, in different ways. In the second part of this book, we will introduce a more advanced paradigm of communication that allows us to do much more interesting things with our devices, in a more secure and interoperable, yet flexible, manner. The following chapters will be dedicated to the Extensible Messaging and Presence Protocol (XMPP). Since it provides such a rich set of tools that Internet of things (IoT) developers can use, the scope of the XMPP protocol will be presented throughout several of the following chapters.
This chapter will focus on social interaction with things. It covers: