vCard-based Extended Presence Plugin

After gathering dust for a few months in some deep and dark corner of my hard disk, my vCard-based Extended Presence plugin for Openfire is now publicly available here.

What this plugin does is add avatar (XEP-0153) and nickname (XEP-0172) information from your vCard to all your outgoing presence packets. This allows clients that do not support setting of vCard-based avatars (e.g. Psi) to still broadcast this information to contacts, such that clients supporting this avatar protocol (basically almost all clients, including the upcoming Psi 0.11) can still see your avatar. This server-side approach is basically what Google Talk does as well. For nickname support, this adds nickname information to presence subscription requests, such that clients supporting the protocol can present the request in a nicer way.

To use this plugin, simply put it in the plugins/ dir of your Openfire installation. It should then be listed in the Plugins pane of the admin console. You can then change the settings of the plugin (enable/disable avatars/nicknames) from the first panel in the admin console.

Tags: , , , ,

15 Responses to “vCard-based Extended Presence Plugin”

  1. Daniel Henninger says:

    Hey man, I added a link to your plugin here from the igniterealtime.org wiki. (I had started a list of plugins for wildfire that weren’t hosted/managed by Jive a couple of months ago) Cool stuff. =)

  2. kael says:

    I tried it with Openfire 3.2.2 but it doesn’t seem to work.

  3. It was indeed broken with an API change of OpenFire. I’ll try to fix it ASAP.

  4. I updated the plugin to work with OpenFire, and deployed it on el-tramo.be.

  5. kael says:

    Thanks !

    I’ve installed it and it has apparently been correctly recognized by Openfire.

    But I haven’t seen its effect yet, though (I’m using Psi).

    Cheers.

  6. The people who will see an effect are the ones who have you on their roster. Try subscribing to yourself, and then change avatars. Your avatar should automatically be updated in the second account. Also, don’t forget to enable the option.

  7. kael says:

    Actually, there seems to be a bug in Openfire. I sometime appear as offline while I’m not and when subscribing to myself, I can’t see my ID

    BTW, I’m using Openfire 3.3.2 not 3.2.2.

    I’m going to check that.

    Thanks.

  8. El Burro says:

    does this still work with OF 3.4.1?

  9. kael says:

    The plugin still works with Openfire 3.4.4.

    BTW, the vCard-based extended presence plugin seems to be the only the implementation of XEP-0153.

    And it is very useful with a bot that frequently changes the vCard photo (and apparently more simple than XEP-0084).

    However, I’m not sure about the user-nickname. Although the server seems to react to a packet containing a nickname, I never see it in the console otherwise.

    dnd
    kael

    dnd
    kael

    e47a22376eb55c1132996cfe24eafe9f63aa3e0a

    Cheers.

  10. kael says:

    Ooops, the stanza example have been eaten by WordPress.

  11. dimsum says:

    don’t work with openfire 3.6.3,i don’t know what error but i can’t get interface vcard and can’t restart service

    org.jivesoftware.openfire.vcard.VCardManager.removeListener(Lorg/jivesoftware/openfire/vcard/VCardListener;)V

  12. Phyerboss says:

    dimsum is right.

    I am also using 3.6.3 and cannot get the plugin to restart or delete. Instead I just get this
    error: http://www.phyer.net/test/openfire.txt

    I will assume this is the long error dimsum is getting as well.

  13. pinker says:

    the method VCardManager.removeListener has been moved to “Class VCardEventDispatcher”, and it’s a static method.

    Can you tell me where I can find the source of this extension.

  14. Nick says:

    Would it be possible for me to get the source code also?

    thanks
    Nick

  15. @Nick Wow, this is embarassing, I seem to have lost the sources, and don’t seem to have it under version control. I submitted them to Openfire 3 years ago, but never got a response back, and I seem to have removed them from my server.

    I’ll see if I can find a backup, and otherwise, someone will have to decompile the source ;-)

Leave a Reply