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

Responding to incoming messages


Now we know how to extract information from an ltx object. Next, we can look at building up a response stanza and echoing the message.

To start building a new stanza, we create a new message, as follows:

const message = new ltx.Element('message') 

Next, we'll need to add details as to whom to send the message to and give it a type of chat. This can be achieved by using the attr() method and providing a second argument:

message.attr('type', 'chat') 
message.attr('to', from) /* Since we're echoing back to the sender */ 

If we don't supply a from attribute, the XMPP server will be nice enough to add this data for us before passing on the stanza. By supplying a second argument to the element constructor, we can actually shortcut these method calls as follows:

const message = new ltx.Element( 
  'message', 
  { type: 'chat', to: from } 
) 

To add a child element and element text, we use the c() (short for child) and t() (short for...