Informizely customer feedback surveys
By using the Aculab site, you agree with our use of cookies.

Outbound Calls

Placing an Outbound Call

An outbound call can be placed on Aculab Cloud by calling service_start which takes the name of one of your Outbound Services and a telephone number or SIP address for the call destination. If the Outbound Service has been written as a UAS application, the service starts an instance of the UAS application which then controls when to make the outbound call. For REST, the service makes the outbound call and starts the REST application once the call is answered.

If the call destination is a telephone number the call uses an outbound telephony provider to route the call. If it is a SIP address then the call can be made directly to the SIP endpoint.

For telephone numbers you must specify a valid Caller ID (you can set this in the Cloud Console's Settings / Caller IDs page).

You can use Live Speaker Detection to establish how the call has been answered. There are also some best practices that can be followed.

Note that, due to the way in which the telephone network works, if the called party of an outbound call hangs up, the Aculab Cloud may not generally be informed of this immediately and, therefore, cannot guarantee to inform your application in a timely manner. So, we strongly recommend that you write your application to interact with the called party and, in the event of repeated no response, hang up the call.

Call Destination

When an outbound call is placed outbound_parameters are used to pass information to the application. You are free to pass any required information, such as call destinations in this field. The format of the data is determined by the application type (UAS or REST):

  • For UAS applications the outbound_parameters are expected to be a string of data to be interpreted by the application. In this example the two call destinations are separated by a comma. When invoking multiple applications the delimiter must be specified, each instance will receive one string from the delimited list as it's outbound_parameters.

    Prefix Description Example
    tel place a call to the supplied telephone or cell (mobile) number tel:441908273800
    sip place a call to the supplied SIP username@address sip:contact@example.com
    loc place a local call to an inbound service hosted on the cloud loc:my_inbound_service

    For Example:

    service_start?outbound_parameters=tel:441908123456,sip:bod@acompany.com&delimiter=,
  • For REST applications the outbound_paramaters are expected to be a JSON string. In this example we have used the 'from' and 'to' properties to pass the outbound number and caller id data. When invoking multiple outbound applications an array of JSON objects should be sent, each instance will receive one object from the array as it's outbound parameters.

    Prefix Description Example
    tel place a call to the supplied telephone or cell (mobile) number tel:441908273800
    sip place a call to the supplied SIP username@address sip:contact@example.com
    loc place a local call to an inbound service hosted on the cloud loc:my_inbound_service

    For Example:

    service_start?outbound_parameters=[{ "to" : "tel:441908283800", "from" : "tel:441908283801"}, { "to" : "sip:bob@acompany.com" }]
When using the tel prefix to specify a telephone number to as the destination, the full international number must be supplied. This must not contain any leading '0'. The leading '+' is optional. The call will be placed with Aculab's default providers. Aculab Cloud does not support calling premium rate numbers via our outbound provider.

If a prefix is not supplied then anything containing only digits, or only digits separated with a single '-' will be treated as a PSTN number. All other values will be treated as a SIP address.

Outbound telephony providers

Outbound telephone calls placed via Aculab's provider will be charged to your account. In addition to using Aculab's default outbound telephony providers, it is possible to add your own. If you'd like to add an outbound provider to the list and manage their billing yourself, you'll need to contact us in order to supply the connection details. There may be a charge for this facility.

When signed in, the current list of available providers will be listed here. Each entry in the list has a selector number associated with it.

In this example two providers have been added to the list in addition to the default Aculab provider.

Selector Provider Name
0 aculab
1 providerA
2 providerB

The selector number is a zero-based digit, used as a prefix that determines the provider that should be used. The default provider is aculab and unless the destination address is modified calls will be routed to Aculab's default provider. So a destination address of tel:12225551234 will go via aculab.

Prefixing the destination number with 0 as the selector number will also use aculab as the provider, eg tel:0-12225551234.

To change the provider to providerA the selector number 1 must be used, tel:1-12225551234. Other providers in the list can be selected in the same way.