Re: meaning of tel URI in presence data model, was: Re: [Simple] Presence Data Model: Identifying services

Jonathan Rosenberg <jdrosen@dynamicsoft.com> Wed, 06 October 2004 05:34 UTC

Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id BAA21229; Wed, 6 Oct 2004 01:34:02 -0400 (EDT)
Received: from megatron.ietf.org ([132.151.6.71]) by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1CF4aa-0005mK-I6; Wed, 06 Oct 2004 01:43:48 -0400
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org) by megatron.ietf.org with esmtp (Exim 4.32) id 1CF4Nq-0004nD-DJ; Wed, 06 Oct 2004 01:30:38 -0400
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org) by megatron.ietf.org with esmtp (Exim 4.32) id 1CF4MX-0004fu-NV for simple@megatron.ietf.org; Wed, 06 Oct 2004 01:29:17 -0400
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id BAA21048 for <simple@ietf.org>; Wed, 6 Oct 2004 01:29:16 -0400 (EDT)
Received: from [63.113.44.69] (helo=mail3.dynamicsoft.com) by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1CF4Vy-0005cH-Kf for simple@ietf.org; Wed, 06 Oct 2004 01:39:03 -0400
Received: from dynamicsoft.com ([63.113.46.26]) by mail3.dynamicsoft.com (8.12.8/8.12.1) with ESMTP id i965T6pl018793; Wed, 6 Oct 2004 01:29:06 -0400 (EDT)
Message-ID: <41636579.6060207@dynamicsoft.com>
Date: Tue, 05 Oct 2004 23:24:41 -0400
From: Jonathan Rosenberg <jdrosen@dynamicsoft.com>
Organization: dynamicsoft
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.6) Gecko/20040113
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: Paul Kyzivat <pkyzivat@cisco.com>
Subject: Re: meaning of tel URI in presence data model, was: Re: [Simple] Presence Data Model: Identifying services
References: <B59E0E8912289946B0A43DDD21783CD80745B7@esebe052.ntc.nokia.com> <4152EFED.9030206@cisco.com> <1096029424.6605.18.camel@localhost.localdomain> <41542824.1010000@cisco.com> <41543F2A.9070708@dynamicsoft.com> <415474FC.6090809@cisco.com>
In-Reply-To: <415474FC.6090809@cisco.com>
Content-Type: text/plain; charset="us-ascii"; format="flowed"
Content-Transfer-Encoding: 7bit
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 1a1bf7677bfe77d8af1ebe0e91045c5b
Content-Transfer-Encoding: 7bit
Cc: Markus.Isomaki@nokia.com, Aki Niemi <aki.niemi@nokia.com>, SIMPLE WG <simple@ietf.org>
X-BeenThere: simple@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: SIP for Instant Messaging and Presence Leveraging Extensions <simple.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/simple>, <mailto:simple-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/simple>
List-Post: <mailto:simple@ietf.org>
List-Help: <mailto:simple-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/simple>, <mailto:simple-request@ietf.org?subject=subscribe>
Sender: simple-bounces@ietf.org
Errors-To: simple-bounces@ietf.org
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 944ecb6e61f753561f559a497458fb4f
Content-Transfer-Encoding: 7bit

inline.

Paul Kyzivat wrote:

> 
> 
> Jonathan Rosenberg wrote:
> 
>>
>>> Why? There is no particular reason why tel: should mean voice. We 
>>> don't restrict sip: that way, and http: doesn't say much about what 
>>> you can do either. (I can use http to exchange html, vxml, xcap, etc.)
>>>
>>> AFAIK, tel: is an addressing format and namespace. The following is 
>>> from  draft-ietf-iptel-rfc2806bis-09:
>>>
>>>    The "tel" URI telephone number is not restricted in the type of
>>>    termination point it refers to.  The termination point can be in the
>>>    public telephone network, a private telephone network or the
>>>    Internet. The termination point can be fixed or wireless and address
>>>    a fixed wired, mobile or nomadic terminal.  The terminal addressed
>>>    can support any electronic communication service (ECS) including
>>>    voice, data and fax.
>>
>>
>>
>> Sigh... here is another case where the tel URI's confusion about what 
>> it really is, is getting us into trouble.
>>
>> If you think about the tel URI as a urn scheme, whereby resolution to 
>> an actual set of communication resources is done using a resolution 
>> service (ala DDDS), then it becomes fairly obvious (to me at least) 
>> that you would simply never even put that URN into the <contact> of a 
>> presence document, since it doesnt represent a communications service 
>> at all. If anything, it's closer to a presentity identifier. Rather, 
>> you would put the individual service URIs that result from the DDDS 
>> lookups.
>>
>> However, the tel URI is somewhat schizophrenic. Its not a URN, even 
>> though it can use (but doesnt require) URN-like resolution services 
>> such as enum. It's like a URN in that it can refer to an abstract name 
>> and be resolved to a wealth of different URIs of many different 
>> schemes and services. Its unlike a URN in that it is also used to 
>> refer to telephone resources, and the implication of the tel URI is 
>> that "I can dial this from a PSTN phone or enterprise phone and reach 
>> something". In that aspect, its more like a protocol URI.
>>
>> What does this mean for presence? To be honest, in the discussion in 
>> the data model draft, I have assumed the protocol URI meaning. That 
>> is, it refers to a PSTN (or private network) circuit endpoint, period. 
>> That, of course, is a BIG assumption, and something we should discuss. 
>> I would propose that we keep this assumption and merely state it. In 
>> such a case, it would not make sense for the recipient of a presence 
>> document to look up  such a tel URI in enum. Rather, it knows its a 
>> telephony resource right away and can "dial it".
> 
> 
> This feels wrong to me.
> 
> I think it is better viewed as "this CAN be reached via the PSTN, and 
> MAY also be reachable other ways". At the very least, if I choose to use 
> this published address, and there are ENUM entries for it, I should be 
> free to use them (potentially making an e2e sip call).

The problem is that it could potentially be ANYTHING, since enum could 
have a SIP URI, HTTP URI, anything really. Putting the tel URI in the 
<contact> and interpreting it as name is really equivalent to putting 
the presentity URI into the <contact>. The presentity URI is already a 
layer of indirection  - subscribe to it, and it tells you how to reach 
the user, just like enum does. Why then, add another layer of indirection?

Indeed, how could one usefully put attributes into the tuple when the 
actual service could be anything?


> 
>  From a practical perspective, I think this means that if all I have is 
> a PSTN phone, then I can consider this contact as one to try. If I have 
> a sip device that supports tel uris and ENUM and has a pstn gateway, 
> then I can also consider trying this contact. The tuple with this 
> contact could show support for all sorts of media if it wants, and if my 
> device supports those media then it might try them as well.

I think this ambiguity is going to cause us problems. Unlike other URI, 
a tel URI based on this definition pretty much tells you NOTHING. What 
to do with it will be interpreted differently by different watchers.

Let me flip it around. I've got a cell phone. Its reachable via the 
PSTN. What should I put into my presence document to unambigously tell 
the world that I'm reachable at this service through this particular 
phone number?

-Jonathan R.

-- 
Jonathan D. Rosenberg, Ph.D.                600 Lanidex Plaza
Chief Technology Officer                    Parsippany, NJ 07054-2711
dynamicsoft
jdrosen@dynamicsoft.com                     FAX:   (973) 952-5050
http://www.jdrosen.net                      PHONE: (973) 952-5000
http://www.dynamicsoft.com


_______________________________________________
Simple mailing list
Simple@ietf.org
https://www1.ietf.org/mailman/listinfo/simple