Installation Guide
Back: Introduction Next: Jabber Client Installation

Download the jabber-1.4.2 server to your tmp directory. and do the same with mod_acs-0.0.8.x.tar.gz

Now unzip and untar the archive.

now copy the mod_acs-0.0.8.x.tar.gz into the jabber-1.4.2 dir.

>mv mod_acs-0.0.8.x.tar.gz jabber-1.4.2

Now configure and make the binaries.

edit the make files.

>make

If no errors occurred you can now configure your jabber server.

>emacs jabber.xml

now replace the all "localhost" appearances with "your.domain.name"

(In emacs the easiest way in emacs todo this is: M-x replace-string (hit enter) localhost (enter) your.domain.com (enter)
emacs will tell you how many times it replaces "localhost" with "your.domain.name" )

Quit emacs C-x C-c, and start the server vor the first time.

>jabberd/jabberd -D

Now try to connect to your Jabber Server with your Jabber Client , and register a account, if it worecked , register an account for your aolserver.

Now install the jabberd server to /usr/local/jabber

As nsadmin go back to the /tmp/jabber-1.4.2/ dir. and copy the following files.

Now download the transports (aim , yahoo , etc.) and install them.

Download the aim-transport-0.x.x.tar.gz to the folder /tmp/jabber-1.4.1

In the README file you find everything you have to know to compile an configure the transport, compilation an configuration can vary from transport to transport, this is what it mostly locks like.

Inserting a <browes> and a <service> section, into the jabber.xml file.

<jabber>
...
>jsm>
...
<browes>
<!-- The Browes section is only important if you want to let users use your transporst, this is no technical configuration of the Server or it's Transports, it's just to information Jabber Client Application's what Transports are available. -->
<service type="aim" jid="aim.intranet.sussdorff-roy.com" name="AIM Transport">
<ns>jabber:iq:gateway</ns>
<ns>jabber:iq:register</ns>
</service>
.....
</browes>
</jsm>
<!-- The Service section is very important, it tells jabberd wich Transports (lib's) to use, their two ways to use a Transport 1. load/run it in the main jabberd process. 2. load/run a Transport in a own jabberd process, and let the main jabberd process connect to it via the network (preferred way ) As well the service Section configures the Transports (wich url they use etc.) -->
<!-- 1. To load/run a Transport in the main jabberd process, put a <service>-xml (like the example A.) into the jabber.xml file to let the main jabberd process load/configure/run the Transport. After you entered this Section you can restart your server with:
>jabberd/jabberd -c /usr/local/jabber/jabber.xml
and the Transport will be available to your users. -->
Example A. :
<service id='aim.intranet.sussdorff-roy.com'>
<aimtrans xmlns='jabber:config:aimtrans'>
<aimbinarydir</home/bkiesbye/jabber/jabber-1.4.1/aim-transport-0.9.23/aim3.5.1670>/aimbinarydir<
<vCard>
<FN>AIM Transport</FN>
<DESC>An AIM Transport!</DESC>
<URL>http://aim.intranet.sussdorff-roy.com/</URL>
</vCard>
</aimtrans>
<load>
<aim_transport>./aim-transport-0.9.24c/src/aimtrans.so</aim_transport>
</load>
<t/service>
<!-- 2. To let the main jabberd process connect to a Transport that runs in a separate process. you need a different styled sektion in your jabber.xml file (Example B) to let the main jabberd know how to connect to a Transport that runs in a separate process (may even on a separate server) , and a separate Transport-jabber.xml (Example C.) file, to let the separate jabberd process load/configure/run The transport. -->
Example B.:
<service id="yahoo-linker">
<host>yahoo.intranet.sussdorff-roy.com</host>
<accept>
<ip>127.0.0.1</ip> <!-- Server IP the Transport runs on >
<port>5237</port> <!-- the port to connect to (same as in Example C.) >
<secret>passwd</secret>
</accept>
</service>
</jabber>

The conntent of the extra file should look like this (yahoo-jabber.xml)

<!-- Example yahoo-jabber.xml configuration file -->
<jabber>
<!-- This section is to let this process know how to connect to the main jabberd process -->
<service id="yahoo-linker">
<connect>
<ip>127.0.0.1</ip>
<port>5237</port>
<secret>passwd</secret>
</connect>
<uplink/>
</service>
<pidfile>./yahoo-jabber.pid</pidfile>
<!-- This section is to load/configure the Transport it self. -->
<service id="yahoo.intranet.sussdorff-roy.com">
<load><yahoo_transport>./yahoo-transport.so</yahoo_transport></load>
<config xmlns="jabber:config:yahoo">
<vCard>
<NAME>Yahoo Transport</NAME>
</vCard>
<server>scs.yahoo.com</server>
<port>5050</port>
<charmap>CP1252</charmap>
</config>
</service>
</jabber>

You can now start your main jabberd process with:

>jabberd/jabberd -c /usr/local/jabber/jabber.xml

and to start the Transport in it's own process type:

>jabberd/jabberd -c /usr/local/jabber/yahoo-jabber.xml

It will atomaticly try to connect to the main jabberd process via the network, you can start/stop/crash the separate Transport process without harming the main jabberd process. In case you run your Transport on a separate Server you need a Jabber instalation on this Server as well.

Back: Introduction Next: Jabber Client Installation