Subject: RE: [Sipping] Do Phones Have Dial Plans, or do Proxies map? was RE: [Sipping] Re: draft-schulzrinne-sipping-sos-04.txt

From: "Rosen, Brian" <[email-masked]>
Date: Thu, 9 Jan 2003 10:42:03 -0500

The systems I'm aware of use regexps in one form or another
to mangle a string into a dialed number.  I don't have
a problem making this a UA function, but if we do, I want
to standardize the regexp and "Publish" it to the UA.

A lot of enterprise gateways have dial string to dialed number mapping.
Some sipphones do.

Brian

> -----Original Message-----
> From: Henning Schulzrinne [mailto:[email-masked]]
> Sent: Thursday, January 09, 2003 10:32 AM
> To: Rosen, Brian
> Cc: 'Paul Kyzivat'; [email-masked]'
> Subject: Re: [Sipping] Do Phones Have Dial Plans, or do 
> Proxies map? was
> RE: [Sipping] Re: draft-schulzrinne-sipping-sos-04.txt
> 
> 
> I would find it instructive how non-SIP systems have solved similar 
> problems. In web browsers and email, we have auto-completion 
> functions 
> and nick names, for examples.
> 
> There's also the analogy with 'real names' (not the defunct 
> company, the 
> concept) which translates strings-nice-for-humans into URLs. 
> See the CRN 
> work, including the go: URL. (I'm not aware of implemenentations, but 
> the concept may be relevant, in particular keeping the identifier and 
> various 'nicknames' clearly distinct.)
> 
> There are probably two sub-problems here:
> 
> - Recognizing patterns so that one can keep the old 
> "no-need-to-hit-dial" user interface.
> 
> - Translating abbreviations such as extensions and local-area 
> numbers to 
> fully-expanded, globally unique identifiers.
> 
> The former will always require downloading a pattern to an 
> end system, 
> the latter is a (local) translation service. The only question then 
> becomes if the translation is done in one or two steps, i.e., before 
> issuing a SIP request or as part of a SIP request.
> 
> Aside: There are clearly examles of widely-deployed systems where the 
> phone has a dial-plan, downloaded via tftp.
> 
> Rosen, Brian wrote:
> > This comes up a lot.  I think we should decide.
> > 
> > Who translates a dial string into a tel uri?
> > 
> > tel uris, as of now, explicitly don't handle dialing strings,
> > only dialed numbers.  In essentially all existing systems,
> > phones don't have dialing plans in them; central elements
> > map dialing strings to dialed numbers.  What's our story?
> > Does every UA that has a dial pad have to have a dialing plan 
> > loaded in it that maps dialing strings to dialed numbers, 
> > or does a proxy server do it?
> > 
> > If it's the former, then how do we standardize the mapping?
> > If it's the latter, then how does a UA send a dialing string?
> > 
> > Brian
> > 
> > 
> >>-----Original Message-----
> >>From: Paul Kyzivat [mailto:[email-masked]]
> >>Sent: Thursday, January 09, 2003 9:53 AM
> >>To: [email-masked]'
> >>Subject: [Sipping] Re: draft-schulzrinne-sipping-sos-04.txt
> >>
> >>
> >>I have a few comments about draft-schulzrinne-sipping-sos-04.txt.
> >>(I haven't been following this work very closely, so 
> perhaps some of 
> >>these pertain to things that were in earlier drafts.)
> >>
> >>I must say, these are really messy problems, so I am glad you are 
> >>working on them.
> >>
> >>Section 3.2 says:
> >>
> >>    ... a UAC MAY use a "tel" URI [3,4] without 
> phone-context, such as
> >>
> >>    tel:911
> >>    tel:112
> >>
> >>The latest and greatest definition of the tel: uri that I 
> can find is 
> >>draft-antti-rfc2806bis-07.txt. According to that, the above 
> tel: uris 
> >>are syntactically incorrect. Either the number must be global 
> >>or else it 
> >>must contain a phone-context parameter.
> >>
> >>Are there plans to change the definition of the tel uri, or is this 
> >>language going to change?
> >>
> >>In the case of a UAC that is using a local outbound proxy, is it 
> >>required that the UAC specifically recognize these strings 
> >>and deliver 
> >>them to the proxy, or is it sufficient for it to deliver 
> any and all 
> >>dialed digit strings to the proxy as tel uris without attempting to 
> >>recognize them itself? Is it sufficient to determine that 
> the dialed 
> >>number is complete by timeout on the input rather than by 
> recognition?
> >>
> >>Section 5 specifies that the UAC should insert location 
> >>information into 
> >>emergency calls. However, presumably location information should in 
> >>general not be placed in non-emergency calls, so it is 
> important that 
> >>the UAC realize it is making an emergency call. In the case 
> of dialed 
> >>digit strings, it may only be the outbound proxy that can 
> >>determine if 
> >>the call is an emergency call. One way to handle this would 
> >>be for the 
> >>local outbound proxy to redirect requests to tel: emergency 
> >>numbers to 
> >>the corresponding sip:sos number. Then the UAC would be able to 
> >>positively determine this is an emergency call and include 
> >>the location 
> >>information.
> >>
> >>Section 9 says:
> >>
> >>    We propose a new DHCP option that enumerates the valid local
> >>    emergency identifiers, as a list of "tel", "sip" or "sips" URIs.
> >>
> >>This doesn't seem sufficient. Most phone-like devices have 
> >>provision for 
> >>entering primarily sequences of digits, not tel: uris. It is 
> >>up to the 
> >>phone to translate a digit sequence into a valid uri. In 
> general this 
> >>requires some sort of dial plan. Without the dial plan, the 
> phone may 
> >>well not be able to generate anything that matches one of the 
> >>specified 
> >>tel uris.
> >>
> >>	Paul
> >>
> >>_______________________________________________
> >>Sipping mailing list  https://www1.ietf.org/mailman/listinfo/sipping
> >>This list is for NEW development of the application of SIP
> >>Use [email-masked] for questions on current sip
> >>Use [email-masked] for new developments of core SIP
> >>
> > 
> > _______________________________________________
> > Sipping mailing list  https://www1.ietf.org/mailman/listinfo/sipping
> > This list is for NEW development of the application of SIP
> > Use [email-masked] for questions on current sip
> > Use [email-masked] for new developments of core SIP
> 
_______________________________________________
Sipping mailing list  https://www1.ietf.org/mailman/listinfo/sipping
This list is for NEW development of the application of SIP
Use [email-masked] for questions on current sip
Use [email-masked] for new developments of core SIP

---

From: Paul Kyzivat <[email-masked]>
Date: Thu, 09 Jan 2003 13:13:20 -0500

Unless we are going to require users to enter full URIs into the phone 
(including "tel:"), the phone MUST have some sort of dial plan. We only 
need to discuss how complex it is.

At one extreme it could simply be to prefix the entered digits with 
"tel:" and let a proxy do the rest.

At the other extreme it could do all sorts of complex transformations to 
turn short sequences into global tel: uris, or even sip uris, possibly 
even chosing different gateways based on dialed number.

As I mentioned in an earlier reply, simply slapping "tel:" on the 
entered digits doesn't create syntactically correct tel: uris according 
to the latest definition. To go that way, the tel: syntax needs to be 
altered. Also, the tel: definition currently says that a tel: address 
SHOULD always use global syntax unless there is no valid global address. 
Encoding dialed digits as a local tel: uri and defering conversion to a 
global address to a proxy would violate that rule.

One possibility is to define the minimal dial plan for a phone as: 
prefix the dialed digits with "tel:" and suffix the dialed digits with 
";phone-context=XXX", where XXX needs to be learned or provisioned 
somewhere. The XXX is then effectively a name for the dial plan to be 
used to expand the number. This gets around the syntax problem with 
using the tel: uri, though it still violates the semantic rule.

	Paul