Projects tigase _server server-core Issues #1574
Implement XEP-0402: PEP Native Bookmarks (#1574)
lissine opened 3 days ago

This is the modern way to store bookmarks https://xmpp.org/extensions/xep-0402.html

The Tigase Server should also support unifying the old bookmarks storage with the modern pep one, as outlined in https://xmpp.org/extensions/xep-0402.html#compatibility

  • Andrzej Wójcik (Tigase) commented 2 days ago

    Why Tigase XMPP Server should support unifying old bookmarks storage with PEP one? In the mentioned fragment we have following statemnt:

    A server MAY choose to unify the bookmarks from both Private XML Storage (XEP-0049) [2] based and the current Bookmark Storage (XEP-0048) [1].

    so it is an option for the server to unify bookmarks, but there is no suggesting to do so nor requirement.

    Moreover, later in the same point:

    A server that supports unifying bookmarks from Private XML Storage (XEP-0049) [2] and PEP Native Bookmarks (XEP-0402) [12] SHOULD announce the "urn:xmpp:bookmarks:1#compat" feature on the account.

    As Tigase XMPP Server doesn't support unification, it doesn't advertise this feature.

    I may understand that you would like to push bookmark storage unification on the server, however, I do not see a lot of benefit from that. If the client wants to support bookmarks it should support the new format and if it wants to be backward compatible it should support and sync with the old storage.

  • Andrzej Wójcik (Tigase) changed fields 2 days ago
    Name Previous Value Current Value
    Assignee
    hantu85
    andrzej.wojcik
  • lissine commented 2 days ago

    I may understand that you would like to push bookmark storage unification on the server, however, I do not see a lot of benefit from that.

    Yes exactly, so clients that support only XEP-0402 can access the bookmarks that were created before XEP-0402 support was added to Tigase Server

  • Andrzej Wójcik (Tigase) commented 2 days ago

    There is no need to add support for XEP-0402 in Tigase XMPP Server as XEP-0402 relies solely on PubSub (PEP) that is available for a long time in Tigase XMPP Server. Due to that I do not understand following part of the comment:

    that were created before XEP-0402 support was added to Tigase Server

    Support for XEP-0402 was never added to Tigase XMPP Server as (without the compatibility part) that is client-only side XEP and requires on support for PEP from the server that is already in Tigase XMPP Server for a long time.

  • lissine commented 2 days ago

    XEP-0402 says:

    publish-options (as defined in XEP-0060) MUST be supported by the server

    It also says:

    This implies that server support for the "delete-items" pubsub feature is REQUIRED.

    I just sent a disco query to sure.im, and the two features (http://jabber.org/protocol/pubsub#delete-items and http://jabber.org/protocol/pubsub#publish-options) weren't returned in the response.

  • Andrzej Wójcik (Tigase) commented 2 days ago

    Both features you mentioned are support and I see them in my disco query of sure.im (account at sure.im). Could you tell us to what entity you send disco#info that was missing those features? To the server "domain" or to the bare user jid which has account at sure.im from this account?

  • lissine commented 2 days ago

    I sent the disco query from a @sure.im account to sure.im

    <!-- Outgoing -->
    <iq type="get" to="sure.im" id="info1" xmlns="jabber:client">
      <query xmlns="http://jabber.org/protocol/disco#info" />
    </iq>
    
    
    <!-- Incoming -->
    <iq id="info1" type="result" from="sure.im" xmlns="jabber:client" to="redacted@sure.im/redacted">
      <query xmlns="http://jabber.org/protocol/disco#info">
        <identity category="component" type="router" name="Tigase ver. 8.5.0-SNAPSHOT-b13031/1e633824" />
        <identity category="server" type="im" name="Tigase ver. 8.5.0-SNAPSHOT-b13031/1e633824" />
        <feature var="http://jabber.org/protocol/commands" />
        <x type="result" xmlns="jabber:x:data">
          <field type="hidden" var="FORM_TYPE">
            <value>http://jabber.org/network/serverinfo</value>
    </field>
          <field type="list-multi" var="abuse-addresses">
            <value>mailto:support@tigase.net</value>
            <value>xmpp:tigase@mix.tigase.im</value>
            <value>xmpp:tigase@muc.tigase.org</value>
            <value>https://tigase.net/technical-support</value>
    </field>
          <field type="list-multi" var="support-addresses">
            <value>mailto:support@tigase.net</value>
            <value>xmpp:tigase@mix.tigase.im?join</value>
            <value>xmpp:tigase@muc.tigase.org?join</value>
            <value>https://tigase.net/technical-support</value>
    </field>
    </x>
        <feature var="urn:xmpp:mix:pam:2" />
        <feature var="urn:xmpp:carbons:2" />
        <feature var="urn:xmpp:carbons:rules:0" />
        <feature var="http://jabber.org/protocol/amp" />
        <feature var="msgoffline" />
        <feature var="jabber:iq:auth" />
        <feature var="vcard-temp" />
        <feature var="http://jabber.org/protocol/disco#info" />
        <feature var="http://jabber.org/protocol/disco#items" />
        <feature var="urn:xmpp:blocking" />
        <feature var="urn:xmpp:reporting:0" />
        <feature var="urn:xmpp:reporting:abuse:0" />
        <feature var="urn:xmpp:reporting:spam:0" />
        <feature var="urn:xmpp:reporting:1" />
        <feature var="urn:xmpp:ping" />
        <feature var="urn:ietf:params:xml:ns:xmpp-sasl" />
        <feature var="http://jabber.org/protocol/pubsub" />
        <feature var="http://jabber.org/protocol/pubsub#owner" />
        <feature var="http://jabber.org/protocol/pubsub#publish" />
        <identity category="pubsub" type="pep" />
        <feature var="urn:xmpp:pep-vcard-conversion:0" />
        <feature var="urn:xmpp:bookmarks-conversion:0" />
        <feature var="urn:xmpp:archive:auto" />
        <feature var="urn:xmpp:archive:manage" />
        <feature var="urn:xmpp:push:0" />
        <feature var="tigase:push:away:0" />
        <feature var="tigase:push:encrypt:0" />
        <feature var="tigase:push:encrypt:aes-128-gcm" />
        <feature var="tigase:push:filter:ignore-unknown:0" />
        <feature var="tigase:push:filter:groupchat:0" />
        <feature var="tigase:push:filter:muted:0" />
        <feature var="tigase:push:priority:0" />
        <feature var="tigase:push:jingle:0" />
        <feature var="jabber:iq:roster" />
        <feature var="jabber:iq:roster-dynamic" />
        <feature var="urn:xmpp:mam:1" />
        <feature var="urn:xmpp:mam:2" />
        <feature var="urn:xmpp:mam:2#extended" />
        <feature var="urn:xmpp:mix:pam:2#archive" />
        <feature var="jabber:iq:version" />
        <feature var="urn:xmpp:time" />
        <feature var="jabber:iq:privacy" />
        <feature var="urn:xmpp:extdisco:2" />
        <feature var="urn:ietf:params:xml:ns:xmpp-bind" />
        <feature var="http://jabber.org/protocol/commands" />
        <feature var="urn:ietf:params:xml:ns:vcard-4.0" />
        <feature var="urn:xmpp:serverinfo:0" />
        <feature var="urn:ietf:params:xml:ns:xmpp-session" />
        <feature var="jabber:iq:private" />
    </query>
    </iq>
    
  • Andrzej Wójcik (Tigase) commented 2 days ago

    And why to sure.im? PEP service is not hosted there.

    PEP is hosted on the account JID (in this case redacted@sure.im), so disco should be sent to redacted@sure.im, as it will provide you with features available at redacted@sure.im. Server domain (component responsible for processing requests sent to server domain) may not have the account specific features (ie. may not support PEP at all) so it doesn't advertise PEP as PEP is not available at sure.im but it is available at redacted@sure.im.

issue 1 of 1
Type
New Feature
Priority
Normal
Assignee
Version
none
Sprints
n/a
Customer
n/a
Issue Votes (0)
Watchers (5)
Reference
tigase/_server/server-core#1574
Please wait...
Page is in error, reload to recover