Chapter 6. More Dialplan Concepts
For a list of all the ways technology has failed to improve the quality of life, please press three.
Alrighty. You’ve got the basics of dialplans down, but you know there’s more to come. If you don’t have the last chapter sorted out yet, please go back and give it another read. We’re about to get into more advanced topics.
Expressions and Variable Manipulation
As we begin our dive into the deeper aspects of dialplans, it is time to introduce you to a few tools that will greatly add to the power you can exercise in your dialplan. These constructs add incredible intelligence to your dialplan by enabling it to make decisions based on different criteria you want to define. Put on your thinking cap, and let’s get started.
Basic Expressions
Expressions are combinations of variables, operators, and values that you string
together to produce a result. An expression can test values, alter
strings, or perform mathematical calculations. Let’s say we have a
variable called COUNT. In plain
English, two expressions using that variable might be “COUNT plus 1” and “COUNT divided by 2.” Each of these
expressions has a particular result or value, depending on the value
of the given variable.
In Asterisk, expressions always begin with a dollar sign and an opening square bracket and end with a closing square bracket, as shown here:
$[expression]Thus, we would write the above two examples like this:
$[${COUNT} + 1]
$[${COUNT} / 2]When Asterisk encounters an expression ...