XEP-0398 Avatarconversion Plugin

I proudly presence my new plugin for openfire which will make xep-0398 available.

So i’ve allready closed my old PR https://github.com/igniterealtime/Openfire/pull/1619
and i think ticket OF-2034 could be set to resolved.

Edit: Now added a tested release 1.2.0 with support for XEP-0008

3 Likes

Compliance.conversations.im doesn’t show this feature…when plugin installed

This is a bug in the compliance check because as described in the XEP-0398 the plugin adds a

to the result for a disco#info query on the xmpp domain:

You can check it: Simply send

<iq xmlns="jabber:client" to="YOUR.DOMAIN" type="get" id="ID123ID">
  <query xmlns="http://jabber.org/protocol/disco#info" />
</iq>

and OF should answer with:

<iq xmlns="jabber:client" type="result" id="61e49be5-c8ee-44fb-9f33-13152fc6fe0f" from="YOUR.DOMAIN" to="USER@YOUR.DOMAIN/gajim.M2OO83QV">
  <query xmlns="http://jabber.org/protocol/disco#info">
    <identity category="server" name="Openfire Server" type="im" />
    <identity category="pubsub" type="pep" />
    <feature var="http://jabber.org/protocol/pubsub#retrieve-default" />
    <feature var="http://jabber.org/protocol/pubsub#purge-nodes" />
    <feature var="http://jabber.org/protocol/pubsub#subscription-options" />
    <feature var="http://jabber.org/protocol/pubsub#outcast-affiliation" />
    <feature var="msgoffline" />
    <feature var="jabber:iq:register" />
    <feature var="http://jabber.org/protocol/pubsub#delete-nodes" />
    <feature var="http://jabber.org/protocol/pubsub#config-node" />
    <feature var="http://jabber.org/protocol/pubsub#retrieve-items" />
    <feature var="http://jabber.org/protocol/pubsub#auto-create" />
    <feature var="http://jabber.org/protocol/disco#items" />
    <feature var="urn:xmpp:mam:0" />
    <feature var="urn:xmpp:mam:1" />
    <feature var="urn:xmpp:mam:2" />
    <feature var="http://jabber.org/protocol/pubsub#persistent-items" />
    <feature var="urn:xmpp:fulltext:0" />
    <feature var="http://jabber.org/protocol/pubsub#create-and-configure" />
    <feature var="http://jabber.org/protocol/pubsub#retrieve-affiliations" />
    <feature var="urn:xmpp:time" />
    <feature var="http://jabber.org/protocol/pubsub#manage-subscriptions" />
    <feature var="urn:xmpp:bookmarks-conversion:0" />
    <feature var="http://jabber.org/protocol/offline" />
    <feature var="http://jabber.org/protocol/pubsub#auto-subscribe" />
    <feature var="http://jabber.org/protocol/pubsub#publish-options" />
    <feature var="urn:xmpp:carbons:2" />
    <feature var="http://jabber.org/protocol/address" />
    <feature var="http://jabber.org/protocol/pubsub#collections" />
    <feature var="http://jabber.org/protocol/pubsub#retrieve-subscriptions" />
    <feature var="vcard-temp" />
    <feature var="http://jabber.org/protocol/pubsub#subscribe" />
    <feature var="http://jabber.org/protocol/pubsub#create-nodes" />
    <feature var="urn:xmpp:pep-vcard-conversion:0" />
    <feature var="http://jabber.org/protocol/pubsub#get-pending" />
    <feature var="urn:xmpp:blocking" />
    <feature var="http://jabber.org/protocol/pubsub#multi-subscribe" />
    <feature var="http://jabber.org/protocol/pubsub#presence-notifications" />
    <feature var="urn:xmpp:ping" />
    <feature var="urn:xmpp:archive:manage" />
    <feature var="http://jabber.org/protocol/pubsub#filtered-notifications" />
    <feature var="http://jabber.org/protocol/pubsub#item-ids" />
    <feature var="http://jabber.org/protocol/pubsub#meta-data" />
    <feature var="jabber:iq:roster" />
    <feature var="http://jabber.org/protocol/pubsub#instant-nodes" />
    <feature var="http://jabber.org/protocol/pubsub#modify-affiliations" />
    <feature var="http://jabber.org/protocol/pubsub" />
    <feature var="http://jabber.org/protocol/pubsub#publisher-affiliation" />
    <feature var="http://jabber.org/protocol/pubsub#access-open" />
    <feature var="jabber:iq:version" />
    <feature var="http://jabber.org/protocol/pubsub#retract-items" />
    <feature var="jabber:iq:privacy" />
    <feature var="jabber:iq:last" />
    <feature var="http://jabber.org/protocol/commands" />
    <feature var="http://jabber.org/protocol/pubsub#publish" />
    <feature var="urn:xmpp:archive:auto" />
    <feature var="http://jabber.org/protocol/disco#info" />
    <feature var="jabber:iq:private" />
    <feature var="http://jabber.org/protocol/rsm" />
    <x xmlns="jabber:x:data" type="result">
      <field var="FORM_TYPE" type="hidden">
        <value>http://jabber.org/network/serverinfo</value>
</field>
      <field var="admin-addresses" type="list-multi">
        <value>xmpp:admin@YOUR.DOMAIN</value>
        <value>mailto:admin@YOUR.DOMAIN</value>
</field>
</x>
    <x xmlns="jabber:x:data" type="result">
      <field var="FORM_TYPE" type="hidden">
        <value>urn:xmpp:dataforms:softwareinfo</value>
</field>
      <field type="text-single" var="os">
        <value>Linux</value>
</field>
      <field type="text-single" var="os_version">
        <value>5.10.63-v8+ aarch64 - Java 1.8.0_292</value>
</field>
      <field type="text-single" var="software">
        <value>Openfire</value>
</field>
      <field type="text-single" var="software_version">
        <value>4.6.5 Alpha</value>
</field>
</x>
</query>
</iq>

I have tested it with gajim and it works…

Interesting.does it work in Spark?

I dont use spark but a fork of jsxc and conversations…no problems there :slight_smile: