You are here

howto: install openfire server and sparkweb client

openfire is an xmpp server sometimes called a jabber server. xmpp is the protocol behind gtalk. openfire is supposedly the best open source implementation of xmpp. that saying a lot coz i havent heard of a commercial version of an xmpp server yet.

while we will be using the sparkweb client to connect to the xmpp server, any client will do: miranda or pidgin or whatever else supports it.

i will be installing both the client and server on a fedora machine. note that while i will be using my hosts file, it is recommended to use your dns server for the hosts. no seriously, the sparkweb client will need to resolve the xmpp server.

and in my hosts file i added this line:

127.0.0.1       openfire.example.net conference.openfire.example.net

to get started we need to download the packages from http://www.igniterealtime.org/downloads/index.jsp#openfire

be sure to get the openfire server and the sparkweb client.

next install it with

sudo yum localinstall openfire-3.6.4-1.i386.rpm  --nogpgcheck

this will install the package into /opt/openfire

next set up the database by using the provided GUI interface to the hsqldb

cd /opt/openfire/lib
java -cp hsqldb.jar org.hsqldb.util.DatabaseManager  

once, the gui opens up, press enter for default connection. this will give you some (limited) functionality on the database. we now want to run the provided sql to create the database by going to File/Open script.

  

the script is located at/opt/openfire/resources/database/openfire_hsqldb.sql. hit the Execute button then exit if there are no errors.

now according to this little gem, we need to use a database password. and to set it up is pretty simple.

sudo vi /opt/openfire/bin/embedded-db.rc

and add a password next to the word password. it can be anything you like. once that is done, you have setup the password to the database. for the server side and the client side. nothing more is required.

we are now ready to begin the openfire xmpp server installation by starting with

/etc/init.d/openfire restart

now we will visit the installation wizard via a browser at this url http://openfire.example.net:9090 and follow the on-screen instructions but use "embedded database" for the setup. and that is it for the server.

next, the client installation is either as easy or even easier than the server installation.

we will go to our http server's document root

cd /var/www/html/

untar the tarball within the directory

tar -zxvf sparkweb_0_9_0.tar.gz 

and fix ownership of the newly created directory 

chown -R user.group sparkweb

next, for ease of use, i also created a link called index.html like so

cd sparkweb
ln -s SparkWeb.html index.html

the very last step involves ease of use to the person using the web client as the default xmpp server is not your local server. so we change that by editing the file called SparkWeb.html. and looking for the line with "server" and changing it like so: 

server: "openfire.example.net",

to use the client we visit the client at http://openfire.example.net/sparkweb/

thats it, the client and server are now ready for some heavy duty chatting. 

however, there are still 2 items left to be said. the first being there were 2 entries in /etc/hosts. the second entry was for conference.openfire. thats meant to be used for group chats and the second item is to inform you there is a pretty decent list of plugins for openfire to be found via the admin console or at http://www.igniterealtime.org/projects/openfire/plugins.jsp

oh and the username for the administrator console is "admin"

Comments

Good Article Mohammed, Been there before ..

Openfire is really great when it comes to collaboration, I use it all the time in conjunction with the pidgin/pandion client

Thanks.

a very nice list of xmpp clients is available here

Hi ,

I have gone through the steps mentioned in your blog, when I am trying to login as a new user it is landing me on the same page wihtout giving any error message.

 

and while creating new user it is showing following error :

No response from server. Please try again.

 

Please guide me so that I can use it...!!!

 

Thanks in advance.