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 occured you can now configure your jabber server.

>emacs jabber.xml

now replace the all "localhost" appearences 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 acount 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 Aplication'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 proccess. 2. load/run a Transport in a own jabberd proccess, and let the main jabberd proccess connect to it via the network (prefered way ) As well the service Section configures the Transports (wich url they use etc.) -->
<!-- 1. To load/run a Transport in the main jabberd proccess, put a <service>-xml (like the example A.) into the jabber.xml file to let the main jabberd proccess 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 proccess connect to a Transport that runs in a seperate proccess. 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 seperate proccess (may even on a seperate server) , and a seperate Transport-jabber.xml (Example C.) file, to let the seperate jabberd proccess 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 proccess know how to connect to the main jabberd proccess -->
<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 proccess with:

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

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

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

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

Back: Introduction Next: Jabber Client Installation