[SIPForum-discussion] E.164
Paul Kyzivat
pkyzivat at alum.mit.edu
Mon Aug 17 15:38:30 UTC 2015
This is considerable mis-information in this thread.
Brian is correct.
In sip there are a few ways to identify a target by "phone number", and
there are a couple of dimensions to it.
First, you can identify the target using either a "tel:" URI or a "sip:"
or "sips:" URI. For sip or sips URIs there are a few options:
* the "phone number" will be in the user part of the URI.
The way that part is formatted and understood depends on
the value of the "user=" uri-parameter.
* for "user=phone", the user part is interpreted the same as
the body of a tel URI. (See below for more on this.)
* for "user=ip", the user part is interpreted in some domain
specific way. (This is often considered to be like an "email-style"
URI format.) It *could* be treated as a phone number, but whether
it is or not is a policy decision for the domain of the URI.
This is the default if there is no user= parameter.
* for "user=dialstring", the user part contains a "dial string".
Namely the string of "digits" dialed, along with some context
to help disambiguate the dial string. This format is defined
by RFC4967. (Authored by Brian.)
For a tel: URI (defined by RFC3966):
* The number can be a "global-number" or a "local-number".
* global-numbers is in E.164 format. *All* global-numbers
start with "+".
* local-numbers do not start with "+".
* both global and local numbers may have parameters following
the number. Local numbers *must* have a "phone-context"
parameter. This provides a globally unique context in which
the "number" can be understood unambiguously.
The following are some implications/examples of the above:
1) sip:+12125551234 at example.com;user=phone
This is a well formed E.164 phone number URI.
2) tel:+12125551234
This identifies the same phone number as (1), but doesn't say
what domain should be used to reach it.
3) sip:2125551234;phone-context=+1 at example.com;user=phone
This is a local-number in the context "+1".
4) sip:2125551234;phone-context=example.org at example.com;user=phone
This is an alternative way to represent phone context.
5) sip:711;phone-context=+1 at example.com;user=phone
This is one potential way to represent non-E.164 numbers.
6) sip:1234;phone-context=foo.com at example.com;user=phone
This is a potential way for a company to represent a local
extension on their pbx that has no E.164 number. In this form
it *can*, in principle, be used outside the foo.com network
and still remain unambiguous.
7) sip:912125551234;phone-context=foo.com at example.com;user=dialstring
This is a way to transform a dialed string of digits into a URI
without having to interpret it in any way. Note that, as with
local numbers, the phone-context is *required*. It provides the
context within which to understand the dial plan.
8) sip:8888 at example.com;user=ip
This might be meaningful in a domain that uses numeric user ids.
(I don't know if there are any of those left, but there might be.)
There is no a priori assumption that the 1234 is a "phone number".
9) sip:8888 at example.com
This has *exactly* the same meaning as (8).
10) sip:2125551234 at user.com
This should be understood the same way as (9). You can't assume
that this is a phone number unless you have some implicit contextual
information that user.com treats it that way.
11) sip:+12125551234 at user.com
Same as (10).
12) sip:2125551234 at example.com;user=phone
This is an invalid URI!
Because of the "user=phone", the user part is to be parsed according
to the tel uri format. Since it doesn't begin with "+", it is
required to have a phone-context parameter.
13) sip:912125551234 at example.com;user=dialstring
This is also an invalid URI!
Again, a phone-context is required here. A dial string can only
be understood in a context that defines the dial plan.
None of this says anything about "domestic" vs. "international" calling.
I guess domestic calling is when both the caller and the callee are
identified by phone numbers in the same country code. But note that the
URI formats require all the URIs to be globally unambiguous. That can be
by having the country code as the prefix of the global number, or
idenfified in some way by the phone-context of a local number.
The place where this becomes a meaningful concern is if you are using
URIs like (10). That URI can't be understood unambiguously as a phone
number unless you *know* that example.com intends it to be understood
that way and also understand what country code is to be used.
Such usage is *allowed* by the specs, but the meaning is not defined by
the specs. IMO this is an unwise usage. If you intend to use it, then
you must carefully define your conventions and ensure that everyone that
sees such a URI follows those conventions.
Thanks,
Paul
On 8/16/15 9:50 AM, Shah Hussain Khattak wrote:
> Adding a few comments in below answers. The +1 is usually added to
> originated calling numbers in case the call is going to some destination
> outside of US, it's a well know feature ( in Sonus SBCs its called
> Number globalisation feature at trunk groups level), and this could be
> replicated for different countries. It's only for international call
> termination, the calling number is appended with originating country
> code....
>
> Sent from my iPhone
>
> On 16-Aug-2015, at 12:29 am, Stoller, Jeff
> <Jeff_Stoller at cable.comcast.com <mailto:Jeff_Stoller at cable.comcast.com>>
> wrote:
>
>> +1 is domestic E.164 format. + and then the number is for
>> international. To convert a US phone number like 415 555 2671 to
>> E.164 format, you need to add the '+' prefix and the country code
>> (which is 1) in front of the number so it will look like +14155552671.
>>
>> *From:*discussion-bounces at sipforum.org
>> <mailto:discussion-bounces at sipforum.org>
>> [mailto:discussion-bounces at sipforum.org] *On Behalf Of *Anthony Orlando
>> *Sent:* Wednesday, July 29, 2015 12:37 PM
>> *To:* SIP Forum
>> *Subject:* [SIPForum-discussion] E.164
>>
>> Looking for some clarification. I have a vendor that claims +1
>> indicates an internationally originated call. I disagree and feel
>> that it is merely an indication that it is in E.164 format. Anyone
>> want to chime in?
>>
>> _______________________________________________
>> This is the SIP Forum discussion mailing list
>> TO UNSUBSCRIBE, or edit your delivery options, please visit
>> http://sipforum.org/mailman/listinfo/discussion
>> Post to the list at discussion at sipforum.org
>> <mailto:discussion at sipforum.org>
>
>
> _______________________________________________
> This is the SIP Forum discussion mailing list
> TO UNSUBSCRIBE, or edit your delivery options, please visit http://sipforum.org/mailman/listinfo/discussion
> Post to the list at discussion at sipforum.org
>
More information about the discussion
mailing list