Asterisk Dial – Subscribers Communication via Different Channels – Setting Guide

Asterisk Dial – Subscribers Communication via Different Channels – Setting Guide

One of the most valuable features of Asterisk is its ability to connect different subscribers with each other. This is especially useful when subscribers use different communication channels. For example, subscriber A can communicate through a traditional analog telephone network, while user B can sit in a cafe halfway around the world and talk through the IP-phone. Fortunately, Asterisk company does a lot of hard work, to connect and interconnect between heterogeneous networks. All we need to do is to learn how to use the Dial application.

The  IP PBX Asterisk Dial application calls to one or more of the specified channels. Once one of the requested channels has responded, the original channel is connected and answered, if the original channel has not been answered previously to other channels. These two channels will be active in a parallel call, and all other channels that have been requested will be rejected.

If no timeout is specified, the Dial application will not wait indefinitely until one of the channels answers if all of the called channels are busy or inaccessible. The dial plan will continue to run if the requested channels do not respond, or if the waiting time expires. Dial will end the call if one of the channels initiates the end of the session (hang up).

If the OUTBOUND_GROUP variable is set, all channels created by the peers by this application will be added to this group (as Set (GROUP () = …). From the OUTBOUND_GROUP_ONCE variable set, all the peer channels are created. This application is put in this group (like Set ( GROUP () = …). Unlike OUTBOUND_GROUP, however, the variable will be deleted after use.

Asterisk Dial application sets the following channel variables:

  • DIALEDTIME – the time period from the beginning of dialing the channel before it is disabled.
  • ANSWEREDTIME – the time of the actual channel call.
  • DIALSTATUS – call status
  • BUSY

DONTCALL – a mode for private usage and screening. It will be set if the called subscriber selects the script to send the caller from the “Go Away” script.

TORTURE – a mode of confidentiality and screening. It will be set if the called subscriber selects a script to send the caller to a “torture”.



Technology / Resource

  • Technology / Resource, where “Technology” is a specific channel driver and “Resource” is a resource available to that particular channel driver.
  • Technology2 / Resource2 – optional, additional devices for parallel dialing, if you need to dial more devices, then enter them as: Technology2 / Resource2 & Technology3 / Resourse3 & …..
  • Timeout – the number of seconds we are trying to dial the specified devices, if the parameter is not a decimal, by default this is 136 years.

Options of the Asterisk Dial

A – plays a greeting for the subscriber, where X – is a fast playback

X – playing the file to the called party

A – Immediately answer the calling channel when the channels are called in all cases. Normally, the calling channel is answered when the channels are answered, but when options such as A and M are used, the calling channel is not answered until all actions on the called channel (such as playing an announcement) are completed. This option can be used to answer the calling channel. You will rarely need to use this option; the default behavior is acceptable in most cases.

C – reset the call record (CDR) for this call.

C – if the Dial application cancels the call, a flag is always set to tell the channel driver that the call was answered elsewhere.

D – allows the caller to dial a 1-digit extension, waiting for a call for the answered channels. The output to this extension, if it exists in the current context or context, is defined in the EXITCONTEXT variable, if it exists.

D – sends specified DTMF lines after the caller’s response, but before launching bridged. A string called DTMF is sent to the called party, and calling DTMF is sent to the calling party. Both arguments can be used alone. If progress is specified, then its DTMF is sent immediately after receiving the PROGRESS message.

E – performs H extension after the call is completed

F – if x is not provided, for Caller ID sent to call-forward or deviation with the dial plan extension of this Dial (), uses the dial plan prompt. For example, some PSTNs do not allow CallerID and a different number must be set. If provided, x will force send a CallerID.

F – when the subscriber hangs up, transfer the called subscriber to the specified destination and start execution from this place.

F – when the caller hangs up, transfer the caller to the next priority of the current expansion and start running at this point.

g – continues the dial plan on the following priorities in the current expansion, if the destination channel hangs up.

G – If answered the call, put the caller with an indication

H – allow the called subscriber to hang up by sending a sequence of DTMFs defined for disabling in features.conf.

H – allow the called subscriber to hang up by sending a sequence of DTMFs defined for disabling in features.conf.

I – Asterisk will ignore any redirect requests and may receive dialing attempts.

Using the Dial the command for the chan_pjsip channel driver:

Dial scans the AOR command with the same name as the endpoint and starts typing the first associated contact.

To dial all contacts associated with the endpoint, use the PJSIP_DIAL_CONTACTS function.

In the case of a SIP URI, user and domain, using the endpoint (in this case, the trunk number is dialed), but not using its associated AOR / contact objects.

This uses the contact (and its domain) set by the AOR associated with the trunk mytrunk, but it is still explicitly specified by the user as part of the URI in the dial string. For AOR’s contact, you must specify its name in the configuration without the AOR.

You Might Also Like