Приоритеты
Каждый добавочный номер может включать множество шагов, называемых приоритетами. Каждый приоритет пронумерован последовательно, начиная с 1, и выполняет одно определённое приложение. Например, следующий добавочный номер овечает на звонок (в приоритете под номером 1) и затем выполняет разъединение (в приоритете под номером 2):
Для отдельного добавочного номера Asterisk выполняет приоритеты по порядку.
Ненумерованные приоритеты
В более старых версиях Asterisk нумерация приоритетов вызывала множество проблем. Представьте, что в добавочном номере 15 приоритетов и требуется добавить что-то в шаге 2. Номера всех последующих приоритетов пришлось бы менять вручную. Asterisk не обрабатывает пропущенные шаги или неправильно пронумерованные приоритеты, и отладка ошибок такого типа превращалась в бесцельную и досадную трату времени.
Начиная с версии 1.2 Asterisk решила эту проблему. Был введён приоритет n, что означает "следующий". Каждый раз, когда Asterisk встречает приоритет n, она берёт номер предыдущего приоритета и добавляет 1. Это упрощает внесение изменений в диалплан, поскольку теперь не надо изменять номера всех шагов. Например, диалплан может быть таким:
Asterisk будет самостоятельно вычислять номер следующего приоритета при каждой встрече с приоритетом n. Однако следует отметить, что приоритет под номером 1 должен быть задан ОБЯЗАТЕЛЬНО. Если случайно для идущего первым приоритета задать n вместо 1, добавочный номер будет недоступен.
Asterisk допускает выполнение простых арифметических операций с приоритетами (зачем?), таких как n + 200, или использование приоритета s (от английского same - такой же), но для их применения вам нужно быть профессионалом. Обратите внимание, что добавочный номер s и приоритет s - это две разные вещи.
Метки приоритетов
Начиная с версии 1.2 в Astersik стало общепринятой практикой присваивать приоритетам текстовые метки. Это обеспечивает возможность ссылаться на приоритет не по номеру, который может быть неизвестен, потому что теперь в диалпланах, как правило, используются ненумерованные приоритеты. Чтобы присвоить приоритету текстовую метку, просто добавляем её в круглых скобках после приоритета:
Очень распространённой ошибкой является использование запятой между символами n и (, как в данном примере:
Это приведёт к нарушению данной части диалплана, будет выдано сообщение об ошибке из-за того что приложение не найдено.