Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
tree: e07500b976
Fetching contributors…

Cannot retrieve contributors at this time

147 lines (112 sloc) 5.466 kb
Internally-generated URI user-parts (also called "identities", when
"@[domain]" is appended) are allocated according to this scheme:
~~xx~arbitrary
where "xx" is a two-letter code specifying the sipX facility that is
responsible for allocating the user-part, and "arbitrary" is an
arbitrary string allocated by the facility (within the valid syntax
for SIP URI user-parts).
External and user-driven URI allocation methods are forbidden to
allocate URIs (within the domains that sipX is authoritative for) that
begin with "~~". This prevents collision with internally-generated
user-parts.
The assigned facility codes are:
(Please keep this list in alphabetical order.)
*** gr => GRUUs and similar URIs.
~~gr~xxxxxxxxxxxxxxxx
Where "xxxxxxxxxxxxxxxx" is a 64-bit hex number
generated by GRUU assignment.
Translated internally by sipregistrar to the destination
contact.
*** id => Service Identities
There are times when a sipXecs service needs to authenticate itself
with an identity that will be accepted by other components. For
example, when the TransferControl AuthPlugin is being used, any
REFER for a blind transfer must be authenticated so that the
identity of the transfering party can be used for authorization
decisions when the resulting INVITE is evaluated. Any sipXecs
service that needs an identity gets one in this prefix group.
Allocated so far are:
~~id~acd -> the ACD
~~id~park -> the park server
~~id~media -> the media server
~~id~sipXrls -> the RLS
~~id~bridge -> sipXbridge
~~id~registrar -> sipXregistry (for use by redirectors that need to
send SUBSCRIBEs)
~~id~sipXsaa -> the Shared Appearance Agent
*** in => URIs to identify specific line appearances, or the group
of all line appearances, on a particular instrument (user agent).
~~in~[token]
The group of line appearances on the instrument identified by
the token "token". For hard phones, "token" is usually the MAC
address. Note "token" is case-sensitive. (Some registrations will
not have instrument identification; they are not accessible via
this mechanism, as "token" must be non-empty.) "token" must conform
to the BNF "token" in RFC 3261, except that it may not contain "%",
in order to avoid escaping problems.
~~in~[user name]&[token]
The line appearance of [user name] on the instrument identified
by "token". Or really, the set of such appearances of [user name]
on the instrument. "user name" must not be an alias.
~~in~ URIs are supported for 'reg' events as well as for forking.
*** mh => The music-on-hold source.
~~mh~
The default music-on-hold source. In the standard
configuration, it is sip:moh@[domain]:5120.
~~mh~[user name]
The music-on-hold source configured for a particular user.
Translated by mappingrules.xml to a contact at sipxpark.
The mappingrules entry is generated by Config Server when the
dial plan is activated.
*** pi => Peer Identity.
~~pi~xxx
Used when a caller is authenticated by a border element
(sipXbridge or sipXproxy) and is then passed to another component
inside sipX, to apply appropriate permissions to the call.
*** rl => Resource-list URIs. (See RFC 4662.)
~~rl~xxx
Translated by mappingrules.xml into a contact at sipxrls.
The mappingrules entry is generated by Config Server when the
dial plan is activated.
The current assignments are:
~~rl~F~[user name] -> full RFC 4662 resource list
~~rl~C~[user name] -> Broadworks-format resource list
~~rl~D~[something] -> for debugging requests
In the debugging group, there is currently one assignment:
~~rl~D~dumpstate
When sipxrls receives a MESSAGE with this user-part, it
writes its state into its log (at INFO level).
*** sa ==> Shared Appearance Agent
There is currently one identity assignment for debugging:
~~sa~D~dumpstate
When sipxsaa receives a MESSAGE with this user-part, it
writes its state into its log (at INFO level).
*** sp => Special-purpose URIs
~~sp~xxx
Where "xxx" is a string assigned to a specific purpose.
Used for creating individual URIs for various purposes.
Currently defined URIs:
~~sp~allcredentials
Forks to all users which have credentials.
(Formerly, "*allcredentials" was used for this purpose.)
*** vm => Voice Mailbox Deposit URI
~~vm~[user name]
Where [user name] is the user part of the AOR of the user (for
any user who has a Voice Mailbox). This provides an
abstract way to refer to 'the voice mailbox of user [user name]'.
Translated to the actual voicemail URI by mappingrules.xml in a
clause inserted whenever the installation has a voicemail server.
In theory, there may be more than one translation if different
users have mailboxes at different servers.
For the default voicemail application, this translation is:
<userMatch>
<description>Default voicemail dialing plan</description>
<callTag>VM</callTag>
<userPattern>~~vm~.</userPattern>
<permissionMatch>
<permission>FreeswitchVoicemailServer</permission>
<transform>
<url>&lt;sip:IVR@[address:port];mailbox={vdigits};action=deposit;locale=en&gt;;q=0.1</url>
</transform>
</permissionMatch>
</userMatch>
Jump to Line
Something went wrong with that request. Please try again.