how to configure muc component

Submitted by Anonymous on Mon, 2009-03-30 15:18

Hi!

I added the MUC component to our Tigase implementation and it starts without any problems. But I don't succeed to create a chatroom or to chat with other users. I always get this error in Adium or IChat:

Room is locked. Please configure.

How can I configure MUC? Do I have to implement something?
We already used the UserAuthRepository and the UserRepository interfaces and added to to init.properties files so the MUC also uses these repositories (I checked it with debugging)

Does it also support clustering or do all the users have to be logged in on the same server?

Thanks in advance!
Cliff

I found the solution, I have

I found the solution, I have to make a room persistent.

Thanks for your help, it

Thanks for your help, it works fine now!

I studied the muc package and I saw that it also uses the UserRepository (so also our custom NetlogUserRepositiry).

I translated all its requests to our custom methods to store the configurations for the MUC rooms, remove configurations, ...

but these methods are never called by the muc.. does the muc stores these settings in the servers memory? or do I have to add a line to the ini.properties file?

(oh btw, everything I learn here will be documented and I will share it with the other Tigase users!)

Artur Hefczyc's picture

Cliff, if course you can

Cliff, if course you can checkout the latest MUC component from SVN, use the tag or the trunk, whichever suits you best.

I have got your message over IM, I have forgotten to mention that the default MUC behavior is as in spec, which is to lock the room by default. This setting is configurable however. You have to add following line to your init.properties file:

muc/muc-lock-new-room[B]=false

It should work with this fine.

great! is it also possible

great!

is it also possible to checkout the latest tag of the MUC component because we added it to the tigase server and compile it ourselves.

Artur Hefczyc's picture

I guess every XMPP client

I guess every XMPP client should work fine. I use Psi and it works well, unfortunately Adium does not.
However I have just put a new version of the muc component online so you can grab it and test it. Should work now with any client.
I have recently released a few new binaries for our projects:

Please go to http://maven.tigase.org and download following packages for the upgrade:

  1. The last version of tigase-server-4.1.5-SNAPSHOT.jar
  2. The last version of tigase-muc-1.0.3-SNAPSHOT.jar
  3. tigase-xmltools-3.2.0.jar
  4. tigase-utils-3.2.0.jar

New stuff included are:

  1. Anonymous users should be now able to connect to local components: MUC, PubSub
  2. The newly created MUC room are now in "instant room" mode and unlocked which means they don't need configuration to be sent before they are usable.
  3. Huge number of performance improvements...
  4. MUC component supports now chat states. This is probably
    not supported in any standard XMPP client for the MUC but
    if it does work and if you create own clients you can take advantage
    of this.

Please use the guide for instructions how to update your system.

Oh, can you tell me which

Oh, can you tell me which jabber client currently supports the create room feature with Tigase, so I can test the MUC implementation.

Thanks!

Artur Hefczyc's picture

The coming MUC version won't

The coming MUC version won't have clustering yet. This is a minor release with a few bug fixes and one new feature.
According to the MUC spec a new room after it is created is locked until the room owner sends configuration to the room. This causes some problems with clients which don't have MUC configuration capabilities therefore a new version won't lock new rooms and will apply default configuration for the new room so it will be available to use straight away.
As this breaks MUC spec the feature will be optional and configurable.

Also a new Tigase version will also allow anonymous user to connect to the locally loaded MUC components.

oh great! that's all we need

oh great!
that's all we need right at this time.

You said that within a few days a new version of muc will be released, will that release already support clusters?

We have to make some big decisions about the first (test) live version of jabber and this is one of them.

Thanks!

Artur Hefczyc's picture

The MUC component doesn't

The MUC component doesn't offer cluster mode yet. We are working on this.

The MUC component can be used in a cluster installation however if you use virtual component which redirect all calls to the MUC from other cluster nodes to the node which have a real MUC component installed.

Please follow the guide and let me know if you have any problems.

Hi! thanks for your quick

Hi!

thanks for your quick and clear response!

I will pass this problem to the Adium developers!
I'll also try the new MUC component within a few days, thanks for the great work!

Can MUC also be used in a cluster?

Cliff

Artur Hefczyc's picture

Hi, according to the spec

Hi, according to the spec the room must be configured before it can be used. After a new room is created but before the room configuration is sent to the MUC the room is in locked state and only room owner (creator) can configure the room and unlock it.

I checked with Adium and it looks like it doesn't support room configuration so basically room created with Adium are unusable. One of the option is to ask Adium developer to add this feature. Another option is to wait a couple of days before we release a new version of the MUC which bends specification a little and automatically applies default room configuration so it is not left in a locked state after it is created.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Post new comment

The content of this field is kept private and will not be shown publicly.