Feb 21, 2020

Integrate your own SIP trunks into Dialfire

SIP trunks from any provider can easily be integrated
SIP trunks from any provider can easily be integrated

You have a great deal with a reliable phone provider and would like to use it for Dialfire? Congratulations! While Dialfire works with a large number of phone providers, we cannot guarantee the best voice quality at the lowest per-minute price and with reliable number transfer everywhere in the world.

That's why we like to give our customers the opportunity to use their own SIP trunks with Dialfire. This way, rather than paying a voice termination fee, only a small switching fee is charged. If you would like to try it out yourselves, you can simply configure your SIP trunk in the Preferences module under Dialer and it becomes active right away.

In the following we explain briefly which options exist and what you should consider.

SIP server and authentication

Most providers support securing the SIP trunk using Digest Authentication, in which case it is sufficient to specify only the username and password in addition to the SIP server.

Other providers require additionally the IP address of the sender. Since Dialfire as a cloud-native solution works with dynamic server instances of well-known cloud providers, the IP addresses of the dialer servers are not known in advance. To nonetheless allow you to use such providers we provide public SIP proxies with fixed IP addresses, which simply have to be entered into the corresponding configuration field. You then inform your SIP provider about the address of this proxy. The voice data (RTP) continues to run directly between the SIP provider and the dialer server, so that the geographical location of the SIP proxy is not important.

In rare cases, there are providers who rely on the originating IP address as access protection. If you still decide to use such a provider, you will have to operate your own proxy server with your own private IP address. In principle, you can use any SIP proxy server for this purpose, but we provide a special SIP proxy as open source, which also carries out automatic authorization against Dialfire and is therefore not easily misused by attackers.

If your provider requires a SIP registration, then it is probably not a real SIP trunk but only a SIP account for use with a single phone. This is not supported in Dialfire. Ask your provider for a real SIP trunk instead.

Transmission of caller identification (caller ID)

Most SIP trunks support the transmission of a caller ID. You have to clarify with your provider which number you are allowed to transmit in principle. Incurred call costs may also depend on the caller ID, especially the country code. With many providers, problems may occur with the transmission of numbers. This is partly because there are incompatibilities when the number is forwarded to another telephone network. Calls are sometimes forwarded via mobile phone cards or private flat-rate connections, which reduces the provider's costs considerably but makes it almost impossible to transmit the number. Sometimes providers just want to save the costs of an international call and prefer to transmit a wrong domestic number. So don't be surprised if the called party sees a completely different number or the caller ID suppression described below does not work.

Technically, there are different ways of transmitting the caller ID. These are difficult to distinguish and sometimes violate valid standards. That's why we simply numbered them as four different modes. Start testing with mode 1 and then the following modes in their order. The first mode already covers most cases, while the second one is practically only used if your SIP provider uses an Asterisk server. The last two modes are hardly ever needed.

If you have not configured a caller ID for the call task of your campaign within Dialfire, you can also specify any default caller ID in the SIP trunk configuration. This will then be used. Only in this case you can additionally specify via the option CLIR that this number should be suppressed (not displayed). Nevertheless the caller ID is transmitted to the telephone provider of the called party and only not displayed to the called party. Without a stored caller ID, calls are not possible and are blocked by Dialfire.

Phone number prefix

For both the called number and the transmitted caller ID, you can prefix the number with any prefix you wish. By default, the numbers are in international format (E.164) without a leading plus sign. Your provider will tell you which prefix you have to enter in each case. The following variants are often available for you to test:

However, sometimes phone number prefixes are also used to select a specific call quality within a SIP trunk or to break down calls to different billing accounts.

Protect from overload

If your SIP trunk only supports a limited number of channels, you can also specify the maximum overdial factor. A factor of 3 means that for each agent currently working in a campaign with predictive dialing, a maximum of 3 channels of the SIP trunk may be occupied. By default this factor is 25, but even with a factor of 3 you can still achieve very good results.

Supported Codecs

The following codecs are supported for SIP trunks:

Dynamic SIP trunks

A single SIP trunk is not enough for you? You can divide your calls across different SIP trunks, e.g. routing them by:

For this purpose there is a script field in the SIP trunk configuration, where you can use Javascript to define complex routing rules for each call. Basically you can dynamically define all fields of the SIP configuration.

Happy trunking!