Ulteriori informazioni
This practical book provides everything you need to know about the Extensible Messaging and Presence Protocol (XMPP). This open technology for real-time communication is used in many diverse applications such as instant messaging, Voice over IP, real-time collaboration, social networking, microblogging, lightweight middleware, cloud computing, and more.
XMPP: The Definitive Guide walks you through the thought processes and design decisions involved in building a complete XMPP-enabled application, and adding real-time interfaces to existing applications. You'll not only learn simple yet powerful XMPP tools, but you'll also discover, through real-world developer stories, how common XMPP "building blocks" can help solve particular classes of problems.
With this book, you will:
Learn the basics of XMPP technologies, including architectural issues, addressing, and communication primitives
Understand the terminology of XMPP and learn about the wealth of XMPP servers, clients, and code libraries
Become familiar with the XMPP concepts and services you need to solve common problems
Construct a complete business application or real-time service with XMPP
Every day, more software developers and service providers are using XMPP for real-time applications, and with the help of XMPP: The Definitive Guide, you can, too.
Sommario
Inhaltsverzeichnis
Preface
Why XMPP?
Is This Book for You?
Getting the Most Out of This Book
Conventions Used in This Book
About the Examples
Using Code Examples
Safari® Books Online
How to Contact Us
Acknowledgments
An Overview of XMPP
Chapter 1Introduction
What Can You Do with XMPP?
Brief History
Open Source and Open Standards
Extensibility
Summary
Chapter 2Basics of XMPP
Architecture
Addresses
Streaming XML
Communication Primitives
Hello Hello World World: Building a Basic XMPP
Application
Summary
The XMPP Toolkit
Chapter 3Presence
Is Anybody Home?
Authorization Required: The Subscription Handshake
How Presence Is Propagated
Availability Status
Presence Priorities
Directed Presence
Going Offline
Rich Presence
Presence and Rosters
Using Presence
Summary
Chapter 4Instant Messaging
I Think, Therefore IM
Chat Sessions
Are You There? Chat State Notifications
Looks Matter: Formatted Messages
Who Are You? vCards
Talk to the Hand: Blocking and Filtering Communication
More Messaging Extensions
Summary
Chapter 5Discovering the World
Items and Info Using Service Discovery with Servers and Services
Using Service Discovery with Clients
Summary
Chapter 6Data Forms
Basic Structure
Using Data Forms
Defining Your Terms: Form Types
Including Media in Data Forms
Summary
Chapter 7Multi-Party Interactions
Starting the Party
Groupchat Basics
Crowd Control
What s in a Nick?
Configure This!
Privacy, Security, and All That Jazz
MUC As a Data Transport
Summary
Chapter 8Publish/Subscribe
Why It Matters
Quickstart
Subscriptions
Publishing and Receiving Notifications
Payloads: To Send or Not to Send?
Items: To Store or Not to Store?
Discovering Nodes
Node Management
Personal Eventing: PubSub Simplified
Summary
Chapter 9Jingle: Jabber Does Multimedia
To Instant Messaging and Beyond
The Jingle Model
Making a Call
A Swarm of NATs
Jingle on ICE
Additional Jingle Actions
Summary
Chapter 10Sending Binary Data
Starting Small: Bits of Binary
Moving On Up: Transferring Midsize Files In-Band
Thinking Big: Sending Large Files Out-of-Band
Negotiating File Transfer
Summary
Chapter 11Remote Commands
Controlling Clients
Providing Custom Commands
Advanced Workflows: SOAP, RPC, IO Data
Summary
Chapter 12Connection Methods and Security
Negotiating an XMPP Stream
Authentication Options
Encrypting the Connection
Server Federation
Server Components
BOSH: XMPP over HTTP
Serverless Messaging
XMPP Security
Summary
Putting It All Together
Chapter 13Design Decisions
Is XMPP the Right Choice?
How the XMPP Community Works
Writing XMPP Software
Extending XMPP
Summary
Chapter 14Building an XMPP Application
The CheshiR Microblogging Platform
First Sprint: The CheshiR XMPP IM Bot
Second Sprint: Configuring the CheshiR XMPP IM Bot
Third Sprint: Scaling the CheshiR XMPP Service Using a Server
Component
Fourth Sprint: Registering with the CheshiR Server
Component
Fifth Sprint: Extending the Server Component with
Rosters
Future Sprints A CheshiR Server Module or Dedicated Server?
Summary
Appendixes
A Guide to XMPP Specifications
XMPP RFCs
XMPP Extension Protocols
Humorous XEPs
XMPP Compliance Suites
Popular Servers, Clients, and Libraries
Servers
Clients
Libraries
Further Practical Considerations
Getting Started
Debugging Tools
Network Setup
Glossary
Bibliography
Colophon
Info autore
Kevin Smith zählt zu den stilprägendsten Filmemachern des amerikanischen Independent-Kinos. Seine Filme wie Clerks, Dogma und Red State genießen Kultstatus, ebenso die wiederkehrenden Figuren Jay und Silent Bob, letzterer gespielt von Smith selbst. Als Autor schrieb er Comics und veröffentlichte mehrere Bücher, darunter einige New York Times-Bestseller. Smith betreibt das Podcast-Netzwerk Smodcast.com und lebt in Los Angeles und auf Twitter.
Riassunto
Presents an overview of the XMPP instant messaging protocol that gives developers the tools they needed to build applications for real-time communication.