bw logo

Chapter 1. Overview

Table of Contents

1.1. Free / Open Gateways

XMPP is an open XML based message protocol with origins in Instant Messaging (IM) and friend presence notification. It is presented within the scope of the BigWorld FantasyDemo example code to illustrate a working implementation of the BigWorld.registerFileDescriptor() method as well as providing a real world example of one approach that can be used for implementing a messaging system into your game using an external service.

The intended audience for this document includes technical MMOG developers, designers and system administrators.

XMPP was chosen as the protocol to use for illustrating in game messaging services for a number of reasons:

  • Open Standard

    XMPP provides a completely open protocol standard that can be re-implemented by anybody without any licensing costs. This also means that there are many free implementations of the XMPP protocol available.

  • Decentralised architecture

    The decentralised nature of the XMPP protocol lends itself to server solutions that can scale as required and integrate with other services.

  • Integration with other services

    Protocol extensions have been defined that describe how other services can interact with an XMPP server through various mechanisms. This allows users on an existing service such as AOL or ICQ to communicate with users on an XMPP server as though they are all within the same network.

XMPP has been used in numerous projects including, but not limited to:

There are numerous XMPP server implementations available including both free and commercial solutions. For the purposes of this document we use EjabberD (http://www.process-one.net/en/ejabberd/).

1.1. Free / Open Gateways

Currently the only known open and free to use XMPP gateway is the GTalk gateway operated by Google. Refer to the federation documentation of your XMPP server for more details on integration.