How does xmpp work




















Extensible — using the power of XML, anyone can build custom functionality on top of the core protocols; to maintain interoperability, common extensions are published in the XEP series , but such publication is not required and organizations can maintain their own private extensions if so desired.

Flexible — XMPP applications beyond IM include network management, content syndication, collaboration tools, file sharing, gaming, remote systems monitoring, web services, lightweight middleware, cloud computing, and much more. This page provides an introduction to various XMPP technologies, including links to specifications, implementations, tutorials, and special-purpose discussion venues.

The protocol, which emerged from the Jabber open-source community in , was originally designed to provide an open, secure, decentralized alternative to consumer-oriented instant messaging IM services like ICQ, AIM, and MSN.

These core technologies include:. In they were revised, resulting in the current specifications. There are many implementations of the core XMPP specifications.

As a result, XMPP is an open technology that is not tied to any single software project or company. The XMPP specifications define open protocols that are used for communication among network entities. The protocols are as free as the air, which means they can be implemented in code that is licensed as free software, open source software, shareware, freeware, commercial products, or in any other way.

This open standards model is different from the open source or free-software model for software code, wherein the code is often licensed so that modifications must be contributed back to the developers. That said, XMPP emerged from an open source developer community, specifically the community that formed around the open source jabberd server that Jeremie Miller released. Thus there are many open source implementations of XMPP, which can be downloaded for free by end users, system administrators, and developers alike.

Much of this software is focused on instant messaging, as befits a technology that started as an open alternative to closed IM silos that did not interoperate. There are open source clients for just about every operating system and device; as a result, millions of end users communicate using XMPP-based services.

There are open source servers that can be deployed at companies, schools, and service providers; as a result, tens of thousands of XMPP services inter-connect every day. There are open source libraries for all the major programming languages, which can be used to write bots, components, and other real-time applications; as a result, there are thousands of active developers in the XMPP community. The original Jabber developers were focused on building an instant messaging system.

However, the extensible nature of XML has made XMPP attractive to application developers who need a reliable infrastructure for rapidly exchanging structured data, not just IM features. As a result, XMPP has been used to build a wide range of applications, including content syndication, alerts and notifications, lightweight middleware and web services, whiteboarding, multimedia session negotiation, intelligent workflows, geolocation, online gaming, social networking, and more.

Over the years, the developer community defined a large number of extensions to the core protocols. But if you find that a feature is missing from the XMPP protocol stack, it is easy enough to extend the protocol for your own purpose, and optionally work with the community in standardizing these new features, as we discuss in Chapter In this chapter, we looked at the core services XMPP provides and sampled the kinds of applications you can build with those services.

Skip to main content. Start your free trial. Chapter 1. RFC Revisions As of this writing, [ RFC ] and [ RFC ] are under active revision to incorporate errata, clarify ambiguities, improve their readability, define additional error codes, etc. Channel encryption This service, defined in RFC and explained in Chapter 12 of this book, provides encryption of the connection between a client and a server, or between two servers.

Authentication This service, also defined in RFC and explained in Chapter 12 of this book, is another part of the foundation for secure application development. Presence This service, defined in RFC and explained in Chapter 3 of this book, enables you to find out about the network availability of other entities.

One-to-one messaging This service, defined in RFC and explained in Chapter 4 of this book, enables you to send messages to another entity. Multi-party messaging This service, defined in XEP and explained in Chapter 7 of this book, enables you to join a virtual chat room for the exchange of messages between multiple participants, similar to Internet Relay Chat IRC.

Anyone can build their own client, server, and library setup and distribute it as a free or paid solution. As mentioned above, XMPP has been proven reliable for a number of types of communication outside of the traditional peer-to-peer messaging and presence use case. The framework can support multi-user team chat applications , and even transmission of non-text data like audio, video, and images.

Certain types of computerized industrial manufacturing equipment also use XMPP for communication. The XSF is working to develop extensions that will support true end-to-end encryption , as well as better adaptations to accommodate sensor and actuator devices in machine communication use cases. When it comes to developing modern messaging platforms and in-app chat functionality, XMPP is just one option available to engineering and product teams.

For example, a multimedia live streaming app with real-time chat will require different tools and a different approach than a live chat solution designed for sales or customer support. Modern developer tools make it easy and cost effective to build custom chat and messaging functions on top of a reliable, enterprise-grade foundation instead of reinventing the wheel.

Ready to start tinkering? You can build out the framework for your own chat app in minutes with a free Stream Chat trial and our library of technical tutorials. This protocol may eventually allow Internet users to send instant messages to anyone else on the Internet, even if the operating system is different from the browser. The predecessor of XMPP is jabber, an open-source network instant communication protocol.

The core results of standardization are divided into two parts;. Prim was initially based on the instant messaging protocol, similar to XMPP and simple, but it is no longer used. XMPP does not belong to any organization or individual, but to the whole community, which fundamentally guarantees its openness. It embeds attendance and context sensitive information into XML structured data, in this way, data is delivered to the most appropriate resources with high efficiency.

Applications built based on XML have good semantic integrity and scalability. Distributed Network Architecture. The network architecture is very similar to email, but it is not integrated with any specific network architecture and is widely used. XMPP is flexible. In addition to instant messaging applications, XMPP can also be used in network management, content feed, collaboration tools, file sharing, gaming, remote system monitoring, and so on.

As shown in:. The use of XML tags is basically a need for protocol openness and scalability. Core documentation also specifies the definition and processing of errors, XML The usage specification, the definition of the jid jabber identifier, Jabber identifier , and the naming convention. Therefore, this document is required for all XMPP-based applications. Rfc also defines blocking policies as multiple blocking methods. It can be said that rfc is a supplement to rfc The two documents are combined to form a basic instant messaging protocol platform on which various applications can be developed.

XEP service search. A powerful protocol used to measure the features supported by other entities in the XMPP network. XEP entity performance. One of the XEP's custom through instant attendance can change the alternating ad feature in real time.

XEP multiplayer chat. A set of protocols defining the participation and management of multi-user chat rooms, similar to the relay chat on the Internet, have high security.



0コメント

  • 1000 / 1000