O que é o XMPP e como funciona?
XMPP é um protocolo de comunicação baseado em linguagem de marcação extensível (Extensible Markup Language - XML). O XMPP, que significa eXtensible Messaging and Presence Protocol, foi padronizado na Internet Engineering Task Force (IETF) RFC 6120, RFC 6121 e RFC 7622. O protocolo suporta múltiplos padrões de comunicação, incluindo Mensagens Assíncronas, Publicar/Subscrever e Requisição/Resposta.
No seu núcleo, o XMPP é essencialmente um protocolo de streaming que torna possível a troca de fragmentos de XML entre quaisquer dois pontos terminais da rede. Ao contrário da maioria dos protocolos de mensagens instantâneas, o XMPP é um padrão aberto que permite aos usuários acessar redes usando outros protocolos.
Além de fornecer capacidades de presença e mensagens, o XMPP também tem visto uso em aplicações VoIP, jogos e -- mais recentemente -- Internet das coisas (IoT). A XMPP Standards Foundation (antiga Jabber Software Foundation) está ajudando a desenvolver uma nova série de extensões que ajudarão sensores e atuadores usando o XMPP a trocar informações em tempo real.
XMPP foi originalmente chamado de protocolo Jabber, mas este era um erro técnico porque Jabber era simplesmente o nome do aplicativo de mensagens instantâneas de código aberto construído sobre o XMPP. Actualmente, o XMPP é o protocolo de mensagens instantâneas (IM) subjacente ao WhatsApp Messenger, bem como ao Google Talk, e tornou-se o padrão oficial de IM do Departamento de Defesa dos EUA e de muitas grandes instituições financeiras.
Ao configurar um canal de comunicação bidireccional, onde existem dados estruturados e os dispositivos não têm restrições de memória, utilize o XMPP.