Checking and communicating users’ status (presence) information.Sending and receiving direct messages between users.In an instant messaging use case, XMPP and XML handle most or all of the fundamental tasks we’ve come to take for granted. A protocol is not code or software rather, it sets expectations and technical baselines so that various hardware and software components can interact coherently. ProtocolĪ protocol like XMPP establishes a standard structure or methodology for doing something, so that all involved parties are on the same page. In addition to exchanging messages, XMPP can communicate user state (status) information like online, offline, or online but away/inactive. If you remember away messages from AOL Instant Messenger (AIM), you already understand the concept of presence data. Unlike other web-based messaging services in which the client is constantly polling the server to check for new messages, XMPP conserves bandwidth and ensures fast, chronological message delivery using an efficient push mechanism initiated by the sending machine. The messaging part is relatively straightforward: XMPP allows two clients to exchange text messages in near-real-time. XMPP’s extensible nature as a living open-source project is one reason the protocol is still widely used and considered secure and efficient more than 20 years after its initial launch. Rather than repeatedly rebuilding the core of XMPP, its users and the XMPP Standards Foundation (XSF) maintain a “clean” core and continually improve and add to a long list of extensions. If you need to double check specific guidelines about how to implement XMPP for your specific use case, these documents are the authoritative source.įor more detail, let’s break down the meaning of each word in the protocol’s name: ExtensibleĪn extensible protocol is designed to evolve, with new contributions - or extensions - contributed by the community and implemented by users as needed. RFC 7395 allows for the creation of WebSocket bindings for XMPP. The newer RFC 7590 expands upon XMPP, allowing for the use of Transport Layer Security (TLS) encryption with XMPP messaging. The Internet Engineering Task Force (IETF) standardized XMPP in the early 2000s in a series of publications, most notably RFC 6120, RFC 6121, and RFC 7622. XMPP allows XML data, in the form of short snippets called stanzas, to be reliably sent from one endpoint to another using the internet’s Transmission Control Protocol (TCP), passing through an intermediary server along the way. XML, or Extensible Markup Language, provides a framework for storing and organizing plain text data within documents so that the data can be easily interpreted by a wide variety of network endpoints regardless of their hardware or software configuration. Short for Extensible Messaging and Presence Protocol, XMPP is an open standard that supports near-real-time chat and instant messaging by governing the exchange of XML data over a network. Looking for a more hands-on tutorial? Learn how to code a basic functioning chat app in minutes using our interactive chat demo→ What is the Extensible Messaging & Presence Protocol (XMPP)? Let’s take a closer look at how XMPP works and what makes it unique. And even if you’re looking to build a chat app that doesn’t use XMPP, a high-level understanding of this classic protocol can help you consider architectural decisions for your project and account for all of the baseline capabilities that chat users have come to expect. XMPP is still widely used today, powering messaging giants like WhatsApp. One constant across all this time has been XMPP, the open protocol that came to define instant messaging standards in the late 1990s and early 2000s. But if you look underneath modern user experiences and the compact, high-tech devices that deliver them, you might be surprised to find that some core backend functions remain relatively unchanged. Today’s internet landscape is practically unrecognizable compared to the 1990s, when AOL, MSN, GeoCities, Hotmail, and other long-gone services reigned supreme.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |