powered by Jive Software

Does openfire support XEP-0133: Service Administration?

I’m tying to use the functions wich XEP-0133: Service Administration extention could provide but I don’t have any success.

Please somebody explain how to use it. I’ve managed so far as sending reguests to the server but i’m gettong error 400.

outgoingData <iq from="admin@valami.hu/xiff" id=“announce-1” to=“valami.hu” type=“get” xml:lang=“en”> <command xmlns=“http://jabber.org/protocol/commands” action=“execute” node=“http://jabber.org/protocol/admin#announce” /> </iq> incomingData <iq type=“error” id=“announce-1” from=“valami.huto="admin@valami.hu/xiff"><command xmlns=“http://jabber.org/protocol/commands” action=“execute” node=“http://jabber.org/protocol/admin#announce” /><error code=“400” type=“modify”><bad-request xmlns=“urn:ietf:params:xml:ns:xmpp-stanzas” /></error></iq>

Hi,

as far as I know it supports a small subset of XEP-0133, JM-404 is the issue to add full (hopefully without “Get User Password”, and likely without “Restart Service”) support for this XEP.

LG

First of all thanks.

Is there a file for download or not yet, i could only find GetUserPassword.java in this project

If you’ve downloaded Openfire source code, you could find the related files in org.jivesoftware.openfire.commands.* package.

The currently made active list of commands can be seen from the following method in AdHocCommandHandler.java:

private void addDefaultCommands() {
        // TODO Complete when out of the box commands are implemented
        addCommand(new GetNumberActiveUsers());
        addCommand(new GetNumberOnlineUsers());
        addCommand(new GetNumberUserSessions());
        addCommand(new GetListActiveUsers());
        addCommand(new GetUsersPresence());
        addCommand(new GetListGroups());
        addCommand(new GetListGroupUsers());
        addCommand(new AddGroupUsers());
        addCommand(new DeleteGroupUsers());
        addCommand(new AddGroup());
        addCommand(new UpdateGroup());
        addCommand(new DeleteGroup());
        addCommand(new AddUser());
        addCommand(new AuthenticateUser());
        addCommand(new ChangeUserPassword());
        addCommand(new UserProperties());
        addCommand(new PacketsNotification());
        addCommand(new GetServerStats());
        addCommand(new HttpBindStatus());
    }

Hey Aznidin,

Good summary. As you noticed the issue JM-404 is in progress but not finished yet. We do support several of the commands defined in that spec and also many other commands that are specific for Openfire. Unfortunatelly, the one that you are looking for is not done yet. In fact, we first need to implement that feature and then offer it as an ad-hoc command. If anyone is willing to take this job I would gladly include their code for the next release.

Thanks,

– Gato

Hey Gato,

If I may ask: how many are currently working on this?

Thanks,

AZ

Hey Aznidin,

At the moment no one is working on XEP-0133: Service Administration. It’s not a high priority at the moment thus we moved it for 3.4.1. But if we get some help from the community I would gladly incorporate your changes.

Regards,

– Gato

Hmm… interesting. It’s marked as Major priority in JM-404. Anyway, I’d like to try

Hi Aznidin,

if one creates a new issue there is a default priority which is usually not changed … so I would not spend two cents on the priority flag of any issue.

LG

Hey LG,

It’s true that we are not very strict in assigning priorities but I wouldn’t go to the extreme of saying that they are not important at all. When something is blocker or low priority we do set them as such. In this case I think that adding XEP-133 is an important feature although right now it’s not high priority.

– Gato

Hi Ferenc,

Sorry about the slightly off-topic messages. We get carried away

You need to change the of type=“get” to type=“set”. Your request for node=“http://jabber.org/protocol/admin#announce will still fail anyway because Openfire doesn’t support admin#announce yet.

thanks

is there any other way to send a message to all the users? actualy i can collect the names from all the chatroooms and just address them 1by1 but i’m looking for a simpler way. Openfire can do that from sessions --> tools --> send message

is there a way to reach that or only in the future through xep-0133 ?

Hey Ferenc,

Have you checked the broadcast plugin? It will let you do just what you are asking although not using an ad-hoc command. You can just send a message to all@yourdomain.com or group@yourdomain.com and the message will be broadcast to all users online or members of the specified group. Read the readme.html to learn how to configure it.

Anyway, I like the idea of improving the broadcast plugin to add a new ad-hoc command to let you broadcast using an ad-hoc command.

Regards,

– Gato

Hi,

There is also Broadcast plugin (http://www.igniterealtime.org/projects/openfire/plugins/broadcast/readme.html) for similar purpose, which I think better and faster than through admin console.

Thank you guys!

I have an other question however its not this topic. i’m making a isometric 3d chat with openfire and flash(xiff). I allready figured out a way to pass the XY cordinates, but its very costy because I’m hiding it in the nick name, so when somebody changes position the nick is changing with it wich trigers the presence twice with a lot of unneeded data. I could do it with the groupmessage, but when somebody joins in a room they have no way checking the positions of the others. So I would need to store it somehow a database table could do it but it would be a hustle to syncronize it specialy with slow internet. is there any extensions out there to solve such a problem? I have poted a simular topic a week ago on the xiff forum, but nobody replyed.

Hey Ferenc,

Probably the best place to add geolocation info is in the room presence. So when you join a room you can add your geolocation information as an extension to the Presence packet. Each time someone joins the room he will get the last known presence of each occupant that will include their geolocation extension.

You can also take a look at XEP-0080: User Location that solves a similar problem. That XEP uses PEP which is now supported in Openfire 3.4.0 (to be released by the end of October and will be out this week as beta).

Regards,

– Gato