Subject: Re: [Stox] Comments on draft-ietf-stox-presence-00

From: Peter Saint-Andre <[email-masked]>
Date: Thu, 01 Aug 2013 09:01:18 +0200

On 8/1/13 3:17 AM, Michael Lundberg wrote:
>  Peter,
> 
> The suggest text below makes sense to me.  In my opinion, this helps
> more clearly defining the presence mapping from XMPP to SIP for values
> such as 'away'.
> 
> I think there needs to be similar text for the second table (currently
> labeled Table 6), which states that the gateway SHOULD map the <show
> xmlns='jabber:client'> element in the PIDF XML to the <show/> element
> in the XMPP presence stanza.  This would only be for SIP clients that
> support that particular namespace, but it at least provides a
> recommended mapping in the opposite direction for clients that do
> support that namespace.

Yes, I think I already expressed agreement with that intent, so you'll
definitely see text about it in the next version of the spec (if no one
objects on the list, of course).

Peter

---

From: Peter Saint-Andre <[email-masked]>
Date: Mon, 19 Aug 2013 11:18:55 -0600

On 7/29/13 4:49 AM, Peter Saint-Andre wrote:
> On 7/26/13 5:55 PM, Peter Saint-Andre wrote:
>> On 7/26/13 4:50 PM, Michael Lundberg wrote:
>>
>>> One clarifying question: when you say "if the SIP implementation
>>> supports the namespace", do you mean the XMPP-to-SIP gateway or the
>>> SIP user agent?
>>>
>>>> Good question.  It would be benificial if both supported the
>>>> namespace, but only the gateway is probably required to.  If the
>>>> client supports the namespace, then the gateway would just need to map
>>>> between the elements described in this document.
>>>
>>>> If the client doesn't support the namespace, the gateway would most
>>>> likely need to do an additional translation into a namespace the
>>>> client does understand.  In this case, the values might not be the
>>>> same between the two namespaces, and therefore things are 'lost' in
>>>> translation. This is one of the big issues with presence mapping today
>>>> as many implementations have thier own implementation specific
>>>> namespace, which makes it hard to map between different
>>>> implementations.  Both the implementation specific and common
>>>> namespaces could coexist, where the implementation specific namespace
>>>> is used for internal communication and a common, standard namespace
>>>> (e.g., 'jabber:client' ) is used when communicating between different
>>>> implementations.
>>
>> Yes, I think that makes sense. I'm not sure exactly how to translate
>> that into text (especially the part about proprietary / non-standard
>> namespaces), but I'll work something up for consideration by the list.
> 
> Here is some proposed text:
> 
> OLD
>    5.  Some implementations support custom extensions to encapsulate
>        this information; however, there is no need to standardize a PIDF
>        extension for this purpose, since PIDF is already extensible and
>        thus the <show/> element can be included directly, qualified by
>        the 'jabber:client' namespace in the PIDF XML.  The examples in
>        this document illustrate this usage, which is RECOMMENDED.  The
>        most useful values are likely "away" and "dnd", although note
>        that the latter value merely means "busy" and does not imply that
>        a server or client ought to block incoming traffic while the user
>        is in that state.
> 
> NEW
>    5.  Some implementations support custom extensions to encapsulate
>        detailed information about availability; however, there is no
>        need to standardize a PIDF extension for this purpose, since
>        PIDF is already extensible and thus the <show/> element
>        (qualified by the 'jabber:client' namespace) can be included
>        directly in the PIDF XML.  The examples in this document
>        illustrate this usage, which is RECOMMENDED.  The most useful
>        values are likely "away" and "dnd", although note that the
>        latter value merely means "busy" and does not imply that a
>        server or client ought to block incoming traffic while the user
>        is in that state.  Naturally, a gateway can choose to translate
>        a custom extension into an established value of the <show/>
>        element [RFC6121], or translate a <show/> element into a custom
>        extension that the gateway knows is supported by the user agent
>        of the intended recipient.  Unfortunately, this behavior does
>        not guarantee that information will not be lost; to help prevent
>        information loss, a gateway ought to include both the <show/>
>        element and the custom extension if the gateway cannot suitably
>        translate the custom value into a <show/> value.
> 
> Mike, does that text address your concern? Do we need to say more (or
> less) than that?

It seems that I neglected to include this text in the latest version.
I'll submit another revision.

My apologies.

Peter

-- 
Peter Saint-Andre
https://stpeter.im/