Virtual hosts and users management on Tigase.IM, Jabber.ME and Sure.IM and all other domains
A while ago our public XMPP/IM service has been migrated to a cluster installation on 3 nodes with MySQL database working in master-slave mode. This has been done to improve reliability and make sure performance is good enough for over 150,000 users on this installation.
But that's not all we have changed. We have made a big move and replaced websites related to this installation with our Web application totally based on XMPP. It works entirely on XMPP, all the data, is accessed through XMPP server and there is no direct access to any database or hard drive, except, of course, run-time files.
The web application is an XMPP client, but also more than that. We are working hard on adding new functions to it and more thorough description will be provided in a separate post.
In the meantime back to the topic of this post. VHosts and users management online.
We have over a 100 domains already registered and used by our users on that service. Until now, they had to use Psi client to a new vhost, change configuration of existing domain, adding, removing users, etc... Do not get me wrong there is nothing bad about Psi application. On the contrary. However, if somebody prefers and uses a different software on daily basis then keeping Psi around just to run ad-hoc commands on the server is just not so cool.
Our web application fully supports service discovery and ad-hoc commands, just like Psi client. And it is always there. No need to carry extra piece of software around. Just jump to your preferred web browser, login and do the work.
All the admin commands are dynamically pulled from the server, so the web interface can do just the same as Psi could. It pulls the up to date data, commands and lets you run them, or not, if you do not have enough permissions.
First thing to do is to login to the client. Please enter your user JID and password. If you do not have account there yet, do not hesitate to register one. You can select any of our domains: jabber.me, tigase.im or sure.im. There is also over 100 of other domains. Not all of them allow for public account registration and there is no list available. These are private domains so you have to know their names.
After you are logged in you are in the main screen with the contact list (roster) if there is any. Otherwise you get not so interesting, white screen full of nothing but with some options at the upper part of the screen. Clicking on any of the domains at the top: Sure.IM, Tigase.IM, Jabber.ME, Tigase.com, Tigase.org opens a new window or a new tab with the address.
The interesting stuff is one line below it. You have there: Chat - which brings you to the home screen with the contact list, Discovery which is what you have to pay attention to.
If you click on Discovery you will get a list of available components on the server. This is where it starts to be interesting. Clicking on a component gives you some more options.
Try VHost Manager for example and you get a nice button described as Execute command. What it does is, it will load all available ad-hoc commands from the server for this component. If you click it, you will get a drop-down list of all commands' descriptions. Once you select one, the application automatically pulls a list of required fields for this command.
Select "Add new item" which allows you to add a new vhost. "Update item configuration" is to change settings for existing domain which belongs to you.
Now try all these with another component. The Session manager component allows you to manage user accounts for your domains. Other components, probably, won't give you much to do.
I am attaching a few screenshots to the article and with orange rectangles marked places to look for clues how to use it. We are still working on usability so some functions might not as straightforward as you might expect, your feedback is always very welcomed.
Please try it out and let us know what you think.