
XMPP The Definitive Guide
Kevin Smith, Peter Saint-Andre, Remko Troncon
- Editorial
- O'Reilly
- Año
- 2009
- Páginas
- ~320
- Nivel
- Básico
De qué trata
Obra canónica sobre el protocolo XMPP (Extensible Messaging and Presence Protocol) y las tecnologías Jabber, redactada por tres de sus principales arquitectos y miembros de la XSF (XMPP Standards Foundation). El libro expone las especificaciones de base (RFC 3920 y RFC 3921) y múltiples extensiones XEP para el transporte de flujos XML estructurados y asíncronos. Está orientado a desarrolladores de software, ingenieros de sistemas y arquitectos de redes de nivel básico a intermedio que conocen conceptos elementales de redes TCP/IP y XML, y que desean crear servicios federados, descentralizados y en tiempo real.
El texto analiza la arquitectura descentralizada cliente-servidor y servidor-servidor de XMPP, explicando la estructura de los identificadores de entidad (JIDs) y las tres primitivas de comunicación o stanzas: mensajes (<message>), presencia (<presence>) y solicitudes estructuradas (<iq>). Enseña la gestión de listas de contactos (rosters), intercambio de estados de suscripción, descubrimiento de servicios y capacidades (Service Discovery, XEP-0030), chats grupales multiusuario (MUC, XEP-0045) y patrones de publicación/suscripción (PubSub, XEP-0060). También cubre el uso de formularios dinámicos (Data Forms), transporte web mediante BOSH (XEP-0124/XEP-0206), seguridad con TLS y autenticación SASL, así como una panorámica de servidores consolidados como ejabberd y Prosody y bibliotecas de desarrollo en Python como SleekXMPP y xmpppy.
El aprendizaje práctico se consolida en su tercera sección con la construcción guiada de CheshiR, una red social y plataforma de microblogging inspirada en Twitter. A lo largo de sprints sucesivos, el libro muestra cómo transformar un bot conversacional inicial en un componente de servidor XMPP desacoplado y de alto rendimiento que administra registros de usuarios, seguidores y distribución masiva de estados. La obra destaca por su rigor conceptual y su visión de XMPP como bus de eventos universal más allá del chat tradicional; no obstante, al haberse publicado en 2009, no incluye extensiones modernas como XMPP sobre WebSockets (RFC 7395) ni cifrado OMEMO. Es ideal para comprender los fundamentos arquitectónicos antes de integrar librerías cliente actuales.
- XMPP
- Jabber
- XML Stanzas
- Mensajería instantánea
- Presencia
- Multi-User Chat (MUC)
- PubSub
- Service Discovery
- BOSH
- Python
- ejabberd
- Arquitectura cliente-servidor
¿Cómo enseña?
Teoría + práctica
- ✗ Sin ejercicios
- ✓ Incluye proyectos
Proyectos
Plataforma de microblogging CheshiR
Servicio de publicación y suscripción de estados en tiempo real implementado en Python y conectado a un servidor XMPP; evoluciona desde un bot de mensajería hasta un componente de servidor desacoplado capaz de gestionar registros de usuarios, listas de seguidores y difusión de publicaciones.

