Extend multi user chat room with plugin


i want to create a special kind of multi user chat room, which for e.g. blocks or transforms user messages, suppresses chat after specified events and more such stuff, so adding a bot does not help. For ease of experimenting I subclassed the MultiUserServerImpl with my Plugin’'s own class. To this point, everything seems to work out correctly: the plugin starts, the component gets registered and packets get sent to the processPacket() method. All methods that I have overridden call their respective super method.

But when the client (gaim) connects to the room, no group chat window or configuration window opens. I get no error message. It seems that the client is connected to the room, because rejoining the same room does not work (no Presence packet received) and when closing the client, Presence messages are received by wildfire.

What can I do? Is there anything wrong with my approach?

Hi chipped,

Rather than subclassing MultiUserServerImpl you might want to do something similar to the example I posted here. Using a PacketInterceptor you can do your message blocking or transformation without having to alter any of the core Wildfire MUC code.

Hope that helps,