Uh-oh, it looks like your Internet Explorer is out of date.
For a better shopping experience, please upgrade now.
The Internet is evolving into an infrastructure where applications can converse with one another in a much different way than the traditional page-serving architectures of the first generation Web.
Through examples and clear explanations, Jabber Developer¿s Handbook demonstrates how Jabber, currently the world¿s most important open source messaging protocol, can be used to go beyond interactive chat and file sharing to build flexible, reliable, and powerful distributed software systems. Peer-to-peer applications using the Jabber open source toolkit, and leverage its use with other readily available and open source software and middleware. It explains how to use Jabber peer-to-peer technologies to solve troublesome reliability and interoperability issues with distributed systems. While peer-to-peer computing and Jabber are considered fairly new technologies, the authors have extensive hands-on experience in applying a variety of system messaging technologies.
Jabber Developer¿s Handbook shows how to design, build, and integrate peer-to-peer applications using the Jabber open source toolkit, and leverage its use with other readily available and open source software and middleware. It explains how to use Jabber peer-to-peer technologies to solve troublesome reliability and interoperability issues with distributed systems. While peer-to-peer computing and Jabber are considered fairly new technologies, the authors have extensive hands-on experience in applying a variety of system messaging technologies.
About the Author
Dana Moore is a Senior Scientist with BBN Technologies in Arlington, VA. He joined BBN in June 2001 to focus on ULTRA*LOG, a DARPA initiative to build very large-scale Java-based multi-agent societies. Previously, he was Chief Scientist with Roku Technologies, a P2P infrastructure developer, and prior to that, a Distinguished Member of Technical Staff at AT&T Laboratories Research. He is the coauthor of Peer-to-Peer: Building Secure, Scalable, and Manageable Networks. He is a popular conference speaker on software agent systems and various management topics, a university lecturer, and he has contributed articles for numerous computing publications. Moore holds a master of science degree in Technology Management from the University of Maryland, and a bachelor of science in Industrial Design, also from the University of Maryland.
William Wright is a Division Engineer with BBN Technologies in Arlington, VA. He provides architecture design and development support for several projects utilizing the Cognitive Agent Architecture (Cougaar) distributed software agent framework. He led the integration and demonstration of one of the world's largest software agent systems, and led the development of an extension to Cougaar to bring agent technology to embedded systems. He has recently written for Java Developer's Journal, Dr. Dobb's Journal, and Embedded Systems Programming magazines. He is coauthor of the book Beginning Java Networking. Wright holds an M.S. in computer science from George Mason University and a Bachelor of Music Education from Indiana University.
Table of Contents
Introduction: Lets Jabber.
Jabber Enables Peer-to-Peer Computing. Jabber Enables an Evolved System Architecture.
I. JABBER IN-DEPTH.
1. What Is Jabber Technology?
Traditional Applications and How They Got That Way. The Nature of Traditional Tools. Shortcomings of Traditional Tools. Jabber Is…. A Useful Application to Jump-Start Your Interest. Conclusion (or Rather, The Beginning).
2. Installing and Configuring Jabber Software.
Downloading the Server Software. Installing the Server Software. Initial Server Configuration. Service Configuration Details. Common Optional Services. Instant Messaging Clients. Summary.
3. All About Jabber Clients.
What Is a Jabber Client? Session Mechanics. Protocol Mechanics. Protocol Details. The <iq> Element. Summary.
4. Jabber Server Architecture.
High-Level Architecture. Messages and Sessions. Browsable Agents. Instant Messaging Gateways. Summary.
5. Extending the Jabber Server.
A Database Service. A Report Service. An Inventory Management Service. Decomposing the Inventory Management Service. Summary.
6. Jabber Security.
Client Registration. Client Authentication. A Custom Authentication Component. Using SSL for Client Connections. Server-to-Server Connection Authentication (Dialback). Summary.
II. JABBER-BASED NETWORKED APPLICATIONS.
7. Whats in a Name: Web Services.
First-Generation Applications: Servers and Glass Terminals. Second-Generation Applications: Servers and Clients. Third Generation Applications: Enter the Web. Fourth-Generation Applications:
8. Jabber and Conversational Software Agents.
Motivating This Application. Accomplishing the Objective. What Is Alice? Why Alice Appears to Work. Alice Design Principles. The Alicebot Server. ALICE Static Knowledge (AIML) Files. Fitting the Pieces Together. The AliceJabber Mux Code. Running ALICE with Jabber. Summary.
9. Jabber and System Control and Administration.
Jabber for System Event Monitoring. Jabber for Version Management. Jabber for Distributed Control. Jabber for Application Monitoring. Summary.
10. Jabber and JXTA.
JXTA Technology Introduction. Elements of JXTA Technology. Roles for JXTA Peers. Trying Out JXTA. The JXTA Java Binding API. Example: A Jabber-to-JXTA Bridge. Summary: Jabber and JXTA as Complimentary Technologies.
11. Jabber Libraries for Popular Languages.
Jabber-Net—Jabber for the .NET Environment. iksemel—Jabber for C/C++. JabberBeans—Jabber for Java. JabberPy—Jabber for Python. A Cross-Language Example. Summary.
Appendix A. Glossary.
A Simple Document. Tag Attributes. Comments.
Appendix C. Resources.
Jabber Servers. Jabber Protocol. Jabber Clients. Jabber Libraries. Miscellany.