From e0f8251c75077351893d6df310e1e593e532e506 Mon Sep 17 00:00:00 2001 From: Steve Kille Date: Mon, 5 Sep 2016 10:05:42 +0100 Subject: [PATCH] Changes around presence resulting from discussion with Sam Whited about "Presence Session" --- xep-0369.xml | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/xep-0369.xml b/xep-0369.xml index cb89a2ac..80cbb35a 100644 --- a/xep-0369.xml +++ b/xep-0369.xml @@ -131,7 +131,9 @@
  • &xep0313; (MAM) is used for all history access, with each node being individually addressable for MAM queries. This simplifies implementation compared to MUC (which had a specialized and rather limited history retrieval mechanism).
  • A client can achieve a 'quick resync' of a node by requesting just those changes it has not yet received, using standard MAM protocol. This solves the old MUC issue of either receiving duplicate messages when rejoining a room or potentially missing messages.
  • Because MAM is used for history, only those nodes that have a 'current value' need to store any items in them — e.g., 'urn:xmpp:mix:nodes:presence' and 'urn:xmpp:mix:nodes:subject' would store their current values (with older values being queryable through MAM), while 'urn:xmpp:mix:nodes:messages' would store no items.
  • -
  • A user's participation in a channel outlives their session. A user who is offline will not share presence within the channel, but will still be listed as an participant. This too is a significant departure from MUC.
  • +
  • A user's participation in a channel outlives their client sessions. A client which is offline will not share presence within the channel, but the associatd user will still be listed as an participant.
  • +
  • Presence is sent to all participants using bare JID, whether or not the user has an online client.
  • +
  • Online clients MAY register presence, which is then shared with participants who have subscribed to presence.
  • MIX decouples addressing of occupants from their nicknames, so that nickname changes do not affect addressing.
  • Each participant is addressable by a single bare JID, which is a proxy JID (not the user's real JID) to make it straightforward to hide the user's real JID from other channel participants. Full JIDs comprised of this bare JID plus a resource are then constructed, allowing visibility into the number of online resources participating in a channel.
  • MIX requires client support and server support from the server providing the MIX service. Although some protocol is shared with MUC, MUC clients are not interoperable with MIX servers. This means that where a user chooses to use MIX, all of the users clients need to support MIX.
  • @@ -159,7 +161,7 @@

    - It may be desirable in some situtations to provide different service to different clients. For example, a mobile client may participate in a smaller set of MIX channels than a desktop client. This needs support from the server to which the client connects, so that MIX client and the connected server can negotiate which channels to send. This is not supported by the core MIX specification, but it is anticipated that this will be supported by another specification. + It may be desirable in some situations to provide different service to different clients. For example, a mobile client may participate in a smaller set of MIX channels than a desktop client. This needs support from the server to which the client connects, so that MIX client and the connected server can negotiate which channels to send. This is not supported by the core MIX specification, but it is anticipated that this will be supported by another specification. This may be &xep0376; (PAM) or a new specification similar to PAM developed specifically in support of MIX.

    @@ -402,7 +404,7 @@ ]]>

    The result is returned in an extended disco results in a form whose type value is 'urn:xmpp:mix:0#serviceinfo'.

    -

    A MIX service MUST NOT advertise support for &xep0313;, as MAM is supported by the channels and not by the service. A MIX service MUST NOT adverstize support for generic &xep0060;, as although MIX makes use of PubSub it is not a generic PubSub service.

    +

    A MIX service MUST NOT advertise support for &xep0313;, as MAM is supported by the channels and not by the service. A MIX service MUST NOT advertise support for generic &xep0060;, as although MIX makes use of PubSub it is not a generic PubSub service.

    @@ -1075,7 +1077,7 @@ ]]> -

    The result is returned in an extended disco results in a form whose type value is 'urn:xmpp:mix:0#serviceinfo'. THe field with var='muc-mirror' is the value of which is the mirrored MUC domain's JID.

    +

    The result is returned in an extended disco results in a form whose type value is 'urn:xmpp:mix:0#serviceinfo'. The field with var='muc-mirror' is the value of which is the mirrored MUC domain's JID.

    Where a client supporting both MIX and MUC is given a reference to a MUC room, it is desirable that the client can determine the MIX channel and join using MIX. This is achieved by an equivalent extension to MUC service discover.

    @@ -1104,7 +1106,7 @@ ]]> -

    The result is returned in an extended disco results in a form whose type value is 'urn:xmpp:mix:0#serviceinfo'. THe field with var='mix-mirror' is the value of which is the mirrored MIX domain's JID.

    +

    The result is returned in an extended disco results in a form whose type value is 'urn:xmpp:mix:0#serviceinfo'. The field with var='mix-mirror' is the value of which is the mirrored MIX domain's JID.