Categories
Uncategorized

The eJabberd and Tkabber stories :)

The eJabberd Story

For our on going project, I am playing with ejabberd. It is a Jabber/XMPP instant messaging server, licensed under GPLv2 (Free and Open Source), written in Erlang/OTP. Among other features, ejabberd is cross-platform, fault-tolerant, clusterable and modular. It’s just cool for developing jabber/xmpp bots on your local machine. The big guys often use it to run jabber services on their domain.

I am currently developing a jabber bot and had to install ejabberd on my Ubuntu. Installation was quite easy as I am on Linux. One single command did everything for me:

After installation, I had to check the status of the server. So I used the following command:

But I was disappointed to see the “node down” error message. I tried all the commands I knew to revive it but nothing worked right.

Then out of despair, I decided to use root privilege to do that, so I used:

Guess what ! 😀 It worked !! Man, I knew in order to start, stop, restart servers, you need root access. Who knew you’ll need root access for checking status as well? And why did the non-sudo code returned “node down” instead of a plain message asking to use root privilege ? I don’t know 🙁 It was really painful !

Now, I had to register a new user from the command line. I used the following command:

The format is:

Then I had to configure the ejabberd server to invoke admin access to the user I just created. The easiest way would have been to use nano with sudo to edit the config file. But unaware of what the name of the config file is and how to edit the config file, I explored the entire configuration directory with root access. I used the following trick:

Please Note that the /etc/ejabberd directory can be accessed only by the root user. A simple user can’t even view it’s contents.

The good thing was that I could double click on the config file and edit it with gedit without invoking further root access since I have already applied that to the nautilus window I have opened.

I edited the “%Admin Users” section to add me as an admin.

The eJabberd web admin is available at: http://localhost:5280/admin/ 🙂
The web admin panel is simply cool and you can do all sort of things using it except chatting 😉

The Tkabber

I was running my bot from command line and it hardly cared if I was connected to the internet or not. But I was having problem with the GUI xmpp client. I was using Pidgin. It was first working fine. But it required me to connect to the internet even the xmpp connection was being made to the localhost.

And even worse, later on, whenever I connected to localhost, pidgin crashed. So I was looking for alternatives. I have tried out a few other clients and a few web based clients as well. None of them suited me.

Finally, I found Tkabber. It’s based on TCL/TK and looks very very poor. From the look of it, it seems that it was developed for Unix machines. But matters not as long as it serves my purpose. It connects to the local machine even when I am not connected to the internet. It plays really funny sounds on different events. It has a nice tidy interface as well.

I like it ! 😀

That’s the story I wanted to share.. it’s nothing important… I just wrote it to pass my idle time… 🙂

Categories
Uncategorized

Using SVN with GoogleCode Project Hosting

At Leevio, we are going to use SVN or Subversion a lot. For demonstration and playing with the SVN system I chose Google Code Project hosting since it’s free and feature packed. I am a beginner at operating SVN and I had to get a sandbox SVN server to practise what I learn.

I already had the http://masnun.googlecode.com ready for this. So, I started trying out SVN on this account feeling relaxed that no matter what changes I make, no serious harm will be done.

SVN is pretty easy in fact. I read the “SVN Book” and “The Visual Guide to SVN”. None of them helped me grab SVN like the shell command — “svn help”. It was self explanatory and had a list of all available commands.

To start, I had to create a local repository or better said a local mirror of the project. I did the following:

It created a directory named “masnun” inside my linux home directory after I authenticated with my googlecode password.

Now I was ready to add files. So I copied a file named “quotes” into the /home/masnun/masnun (the local mirror) directory and typed in:

I got a text editing environment to write the changelog. After typing in a message, I pressed Ctrl+O to write out and then Ctrl + X to quit the editor.

Now the changes were reflected in the local copies, I had to sync the server. So I used:

And it transmitted all the data to the server 🙂

Now, I made some changes and updated the file using the following command:

Again, wrote the changelog and then :

I liked the simplicity and hated that I spent up much time reading theories telling me why SVN replaced CVS 🙁

Well, now I decided to delete the file:

That was it… Easy !

Categories
Uncategorized

Quicker Ways for Getting Backlinks

It’s very important for a website to have backlinks if it wants to rank well on search engines. Here’s some common methods I follow very often :

  • Add my website link to my signature at different discussion forums.
  • Add my website URL to my email signature.
  • Make a lots of relevant comments on popular blogs (specially wordpress blogs).