Direct Inbound Dialing (DID) refers to a configuration in which public PSTN numbers are assigned to individual users. This means that a user is directly reachable without first calling the company operator (or an auto-attendant) that then transfers the call to a local extension; the external number is called and rings directly at the phones of one or more sipXecs users.
DID handling depends on the connection to the carrier and is different between using a T1 or fractional T1 connection vs. analog lines. With T1 and fractional T1 connections the carrier delivers DNIS (Dialed Number Identification Service) information, which the gateway uses to route an incoming call directly to the respective user with that DID number assigned. Analog lines do not offer that feature.
There is (as if often the case) more than one way to configure how your DID is routed to the correct user(s):
Directing the call by configuration in the gateway
This method is not recommended, since it means that there are multiple components in your system transforming the address; this makes debugging and modifying dial plans more difficult.
Most gateways provide facilities to configure how the incoming DNIS information is translated into a SIP URI of a phone. It is possible to configure the gateway to translate the incoming number so that the number is transformed to the User ID or an alias assigned to a user (typically the last N digits of the PSTN number, but more complex rules can be defined).
Directing the call using sipXecs configuration
The facilities of sipXecs can be used to do any address manipulation needed to direct inbound calls with no transformation in the gateway. The simplest possible gateway configuration is to set the gateway to send all inbound calls to the sipXecs system. The specifics of this vary depending on the gateway, but essentially what you're looking for is to just use the inbound number in whatever form you get from the provider as the user part of the SIP URL, and the sipXecs domain name as the domain part (for example, for the inbound number 19785551212
construct the address sip:19785551212@example.com
).
- If you have a small number of DIDs, the easiest thing to do is to direct the call by #Assigning aliases to destinations.
- If you have larger numbers of DIDs, they will normally be assigned in contiguous blocks, so it is possible to transform the inbound number by #Defining a DID prefix Dialing Rule.
Assigning aliases to destinations
Most kinds of call destinations in sipXecs (including users) can be assigned any number of aliases. To direct calls for a specific DID to some destination, assign the DID value (in whatever form it is sent by the gateway) to the destinations you want as an alias.
For example, if you want the number 19785551212
to ring at Alices phone, and Alice is extension (user) 207
, then assign the alias 19785551212
to user 207
.
AutoAttendants
You can create any number of autoattendants that present callers with whatever choices you select, including transfer to internal extensions. Like other destinations, an autoattendant can be assigned any number of aliases - so to direct a DID to an autoattendant, just add the DID (in the form sent by your provider/gateway) to the autoattendant.
Defining a DID prefix Dialing Rule
When you have blocks of DID numbers, you can usually transform them into internal numbers using a Custom Dialing Plan.
First, identify the DID prefix by determining the constant digits that become the prefix to an internal station number to produce a full DID number. For example, if the format of your DID numbers is 781-854-3
nnn, the DID prefix is 7818543
. The dialing plan can be used to strip the fixed prefix, and possibly change it to a new internal prefix.
Go to the System>Dial Plans
screen.
- Select the Add New Rule pulldown
- Choose Custom
- Choose a name for your rule ("DID" might be a good name)
- Select Enabled checkbox
- In the Dialed Number setting, enter the DID prefix (7818543) that you want to remove in the Prefix box, and the number of digits from your inbound calls that you want to keep in the pulldown
- Do not check any permissions
- In the Resulting Call setting, you can either leave the prefix box empty or insert an internal prefix
- Append "Matched Suffix" from the drop down
- Do not add any gateways (leaving off the gateway causes sipXecs to tranform the address and then re-evaluate how to route it).
Press OK and then Activate your dialing plans.
Direct Inbound Dialing with a T1 or Fractional T1
From a carrier you get a T1 line with 24 channels and a pool of DIDs, say a 100 numbers from 1-781-970-0100 to 1-781-970-0199. When someone dials one of these numbers in your group (other additional numbers can also be associated with the T1, like 800/900 numbers) the phone company will send a call to the gateway on one of the 24 channels of the T1. They will supply DNIS information so that the gateway knows what number was dialed.
Example: Someone dials 1-781-970-0137. The phone company sends a call on some channel of the T1 with DNIS=0137. The gateway generates a SIP INVITE to 'sip:0137@sipx.example.com' and the sipXecs routes that as described in #Directing the call using sipXecs configuration.
Direct Inbound Dialing with Analog Lines
Analog lines have no DNIS, so that the only way the phone company can let us know what number was dialed is to ring a certain line. If you have 4 people, you'd buy 4 lines with 4 PSTN numbers (DIDs). When someone calls one of these numbers, that line rings and the gateway has to be programmed to send the call from that line to the respective extension. Because the extensions are mapped to lines on the gateway, they don't necessarily have to be related to the PSTN number. However. for simplicity and user friendliness reasons it is a good practice to have an extension that is related to the PSTN number.
If you have other internal extensions that do not need direct (DID) numbers, you can aggregate those in a pool of external lines. For example if you have 6 other extensions, you will buy 3 more lines. Incoming calls on these 3 lines will be serviced by an operator or auto-attendant. These 3 lines will also be used for outbound calls from the 6 extensions and if one of the DID extensions needs to make more than one call at the same time.
There still is a problem with outbound calls: The sipXecs server is able to route outbound calls to a particular gateway, but you cannot specify a certain line to be used on that gateway dependent on who (i.e. a line on a device) originated that call. Therefore, an in process outgoing call could cause an incoming call for a different internal extension to get a busy signal even though the phone for which the DID number was dialed is not in use. This problem could only be resolved by using two gateways: One used for incoming calls, the other used for outgoing calls. Therefore, it is recommended to use T1 or fractional T1 services when planning to use DIDs.