<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
<title>Wildfire Readme</title>
<style type="text/css">
/* global font and body settings */
body {
	font-size : 100%;
	background-color : #d3d6d9;
	padding: 0px;
	margin: 0px 0px 30px 0px;
}
body, td, th {
	font-family : arial, helvetica, sans-serif;
	font-size : 10pt;
}
pre, tt, code {
	font-family : courier new, monospaced;
	font-size : 9pt;
}
#pageContainer {
	display: block;
	position: relative;
	clear: both;
	background-color: #fff;
	border: 1px solid #999;
	padding: 40px;
	margin: 30px;
	-moz-border-radius: 6px;
}
#pageHeader {
	display: block;
	position: relative;
	height: 80px;
	background-color: #e7eaee;
	border: 1px solid #cccccc;
	border-bottom: none;
	-moz-border-radius: 5px 5px 0px 0px;
	margin: 10px 0px 0px 0px;
}
#pageBody {
	margin: 0px 18px 0px 20px;
}



/* anchors */
a:link {
	color: #11568c;
}
a:visited {
	color: #571c8d;
}
a:hover {
	color: #7a1d42;
	text-decoration : underline;
}
a:active {
	color: #7a1d42;
}



/* page header elements (logo and navigation) */
.navigation {
	display: block;
	position: relative;
	height: 20px;
	background-color: #335588;
	border: 1px solid #cccccc;
	border-top: none;
	color: #ffffff;
	font-size: 11px;
	line-height: 18px;
	padding: 0px 0px 0px 0px;
	margin: 0px 0px 25px 0px;
	overflow: hidden;
}
.navigation a {
	margin: 0px 20px 0px 20px;
}
.navigation a:link { color: #ffffff; }
.navigation a:visited { color: #ffffff; }
.navigation a:hover { color: #ffffff; }
.navigation a:active { color: #ffffff; }



/* headings */
h1 {
	display: block;
	position: relative;
	font-size : 1.7em;
	font-weight : bold;
	color: #670e15;
	padding: 0px;
	margin: 30px 0px 0px 20px;
}
h2 {
	font-size : 1.3em;
	font-weight : bold;
	margin: 40px 0px 6px 0px;
	padding: 0px;
	color: #335588;
}
h3 {
	font-size : 1.0em;
	font-weight : bold;
	margin: 25px 0px 3px 0px;
	padding: 0px;
	color: #334466;
}



/* general elements */
p {
	margin: 0px 0px 15px 0px;
}

ul {
	margin: 5px 0px 15px 35px;
}
li {
	padding-bottom : 4px;
}
tt {
	font-family : courier new;
	font-weight : bold;
	color : #060;
}
hr {
	display: block;
	height: 1px;
	background-color: #999999;
	border: none;
	margin: 40px 0px 20px 0px;
}

.footer {
	font-size : 8pt;
	color : #666;
	text-align : center;
	margin-top : 2em;
	padding-top : 0.5em;
	border-top : 1px #CCC solid;
}
</style>
</head>
<body>

<div id="pageContainer">

	<div id="pageHeader">
		<h1>IM Gateway Readme</h1>
	</div>

	<div id="pageBody">


<h2>Overview</h2>
<p>
    The IM (instant messaging) gateway plugin allows users to log in to and
    communicate through other instant messaging services via their Jabber
    accounts.  The gateway itself provides a number of "transports" to other
    protocols (AIM, ICQ, MSN, Yahoo, etc).
</p>

<h2>Terminology</h2>
<p>
    To help identify the differences between the plugin as a whole and the
    underlying interfaces to external protocols (AIM, ICQ, etc), we refer
    to the plugin itself as the "gateway" while we refer to the protocol
    handlers as "transports".
</p>

<h2>Installation</h2>
<p>
    Copy the gateway.jar into the plugins directory of your Wildfire
    installation. The plugin will then be automatically deployed. To upgrade to a
    new version, copy the new gateway.jar file over the existing file.  Please
    be aware that an upgrade will cause all of the users on your server who are
    making use of the plugin to be disconnected from their external IM accounts.
    Your users should be reconnected after the plugin reloads.
</p>

<h2>Configuration</h2>
<p>
    By default, after the plugin has been deployed all of its features are disabled.
    This plugin is configured via the "Gateways" sidebar item located in the Wildfire
    Admin Console.  You can enable individual transports via the "Settings" sidebar
    item, and add new registrations/view existing registrations from the "Registrations"
    sidebar item.
</p>

<h2>Using the plugin</h2>
<p>
    Before going into specifics, there are some important things you need to
    know first.  A user must be registered with a transport in order to make
    use of it.  Registration is the process wherein a user tells a transport
    what username and password will be used with the external service.  This
    process also places the transport JID in their roster to that the
    transport itself can "hear" them come online, and act appropriately (logging
    them in and such).  In this case, we interact with the user's roster directly,
    so there is no need for a flood of subscription requests to the client itself.
    A side effect of this is that only users of the local Wildfire server will
    be able to make use of any transport on the gateway.  Roster items are created
    as non-persistent, which means that when the end user logs out or disconnects
    from the gateway, the associated transport roster items will no longer exist
    in their roster.
</p>

<h3>For admins:</h3>
<p>
    The web interface of the gateway plugin provides a mechanism for setting
    up registrations on a user's behalf, as well as editing and deleting them.
    It also provides tools for monitoring who is using the gateway, their status,
    etc.  In a typical setup, a user will be allowed to register an account
    themselves.  See the next section for details on this.  You can also
    set who has access to the specific transports and even enforce manual
    registrations only.  If a specific transport has any options, they will
    be made available from the web interface.
</p>

<h3>For end users:</h3>
<p>
    Typically, users will use Service Discovery (aka disco) to find out what
    services are available on a server, and then will be provided with a way
    to register with whatever transports are made available.  Some clients
    do not have the functionality to interact with transports.  In this case,
    a server admin will need to register the user on their behalf. (see above)
</p>

<h2>Trouble shooting</h2>
<p>
    If the plugin behaviour is not as expected you can enable server debug logging.
    This will allow the plugin to start logging.  Server debug logging should only
    be enabled temporarily, as it will generate a lot of additional logging that
    will both slow your server down and consume a lot of disk space.
</p> 


    <div class="footer">
    Copyright &copy; Jive Software, 2006
    </div>


    </div>
</div>

</body>
</html>