Asterisk™: будущее телефонии Второе издание - Меггелен Джим Ван
Возвращаемые значения:
-1
Ошибка или разрыв соединения.
0
Воспроизведение завершено без прерывания кодом выхода.
значение
ASCII-значение цифры (если введена), в десятичной форме.
SEND IMAGE
SEND IMAGE изображение
Передает заданное изображение по текущему каналу. Большинство каналов не поддерживают передачу изображений. Имена файлов изображений не должны включать расширения.
Возвращаемые значения:
-1
Ошибка или разрыв соединения.
0
Изображение отправлено или канал не поддерживает отправку изображения.
SEND TEXT
SEND TEXT "текст_для_отправки"
Передает указанный текст по текущему каналу. Большинство каналов не поддерживают передачу текста. Текст, содержащий более одного слова, должен быть заключен в кавычки, поскольку команда принимает только один аргумент.
Возвращаемые значения:
-1
Ошибка или разрыв соединения.
Текст отправлен или канал не поддерживает отправку текста.
SET AUTOHANGUP
SET AUTOHANGUP время
Обусловливает автоматическое разъединение связи по каналу по истечении количества секунд, заданного параметром время. Конечно, разрыв может произойти и раньше. Задавая для параметра время значение 0, можно отключить возможность autohangup (автоматическое разъединение) для данного канала. Возвращаемое значение: 0
Возможность автоматического разъединения установлена.
SET CALLERID
SET CALLERID номер
Меняет идентификатор вызывающего абонента текущего канала. Возвращаемое значение:
1
Идентификатор вызывающего абонента задан.
SET CONTEXT
SET CONTEXT контекст
Задает контекст, в котором будет продолжаться выполнение после выхода из приложения AGI. Возвращаемое значение:
0
Контекст задан.
SET EXTENSION
SET EXTENSION добавочныйномер
Меняет добавочныйномер, в который перейдет выполнение после выхода из приложения AGI. Возвращаемое значение:
0
Добавочный номер задан.
SET MUSIC ON
SET MUSIC ON [on|off] [класс]
Активирует/деактивирует генератор музыки во время ожидания. Если класс не задан, будет использоваться класс музыки во время ожидания по умолчанию.
Возвращаемое значение:
0
Всегда возвращает 0.
SET PRIORITY
SET PRIORITY приоритет
Меняет приоритет для продолжения выполнения после выхода из приложения AGI. Значение аргумента приоритет должен быть действительным приоритетом или меткой.
Возвращаемое значение:
0
Приоритет задан.
SET VARIABLE
SET VARIABLE имяпеременной значение
Задает или обновляет значение переменной, заданной параметром имя- переменной. Если переменной не существует, она создается.
Возвращаемое значение:
1
Переменная задана.
STREAM FILE
STREAM FILE имяфайла коды_выхода [фрагмент_смещения]
Воспроизводит аудиофайл, определенный параметром имяфайла. При этом допускается прерывание воспроизведения путем введения кодов, определенных параметром коды_выхода, если таковые заданы. Если вы желаете запретить любые коды выхода, введите вместо параметра ко- ды_выхода двойные кавычки. Если предоставлен параметр фрагмент_сме- щения, воспроизведение начнется с фрагмента, заданного этим параметром. Помните, не надо включать расширение файла в параметр имяфайла.
Возвращаемые значения:
0
Воспроизведение завершено, коды введены не были.
-1
Ошибка или разрыв соединения.
значение
ASCII-значение цифры (если введена), в десятичной форме.
TDD MODE
Активирует и отключает возможность взаимодействия со слуховыми аппаратами (Telecommunications Devices for the Deaf, TDD) для этого канала.
Возвращаемые значения:
0
Канал не поддерживает TDD.
1
Успешное выполнение.
VERBOSE
VERBOSE сообщение уровень
Отправляет сообщение, определенное аргументом сообщение, в консоль через систему детальных сообщений. Аргумент уровень - это минимальный уровень детальности, при котором сообщение появится в интерфейсе командной строки Asterisk. Возвращаемое значение: 0
Всегда возвращает 0.
WAIT FOR DIGIT
WAIT FOR DIGIT времяожидания
Ожидает введения DTMF-кода в течение количества секунд, заданного для канала параметром времяожидания. Используйте -1 в качестве значения параметра времяожидания, если вы хотите блокировать вызов неопределенно долго. Возвращаемые значения: -1
Ошибка или сбой канала.
0
Время ожидания истекло.
значение
ASCII-значение цифры (если введена), в десятичной форме.
D
Конфигурационные файлы
Данное приложение является справочником по конфигурационным файлам, которые не были рассмотрены в предыдущих приложениях. Настройки VoIP-канала можно найти в приложении А. Справочные данные по диалплану приведены в приложении В.
Для каждого модуля Asterisk, который предполагается использовать, необходим конфигурационный файл. Эти файлы, .conf, содержат определения каналов, описывают внутренние сервисы, определяют местоположения других модулей или устанавливают связь с диалпланом. Для получения функциональной системы необязательно настраивать их все, а только те, которые необходимы для вашей конфигурации. Asterisk поставляется с образцами всех конфигурационных файлов, но Asterisk можно запустить, не имея ни одного из них. В этом случае система работать не будет, но это наглядно демонстрирует модульный принцип платформы.
Не найдя ни одного файла .conf, Asterisk примет некоторые решения относительно модулей. Например, всегда выполняются следующие шаги:
• Загружается журнал регистрации событий Asterisk, и события протоколируются в файле /var/log/asterisk/event_log.
• Регистрируются команды интерфейса Manager.
• Запускается ядро офисной АТС.
• Выделяется ряд RTP-портов от 5000 до 31000.
• Загружается несколько встроенных приложений, таких как
Answer(), Background^, GotoIf(), NoOp() и Set().
• Запускается динамический загрузчик, то есть механизм, ответственный за загрузку модулей, описанных в файле modules.conf.
Это приложение начинается с детального обсуждения конфигурационного файла modules.conf. Затем кратко рассматриваются другие файлы, которые, возможно, вам придется сконфигурировать для своей системы Asterisk.
modules.conf
Файл modules.conf управляет тем, какие модули загружаются или не загружаются при запуске Asterisk. Описывается это с помощью структур load => или noload =>.
Этот файл является ключевым компонентом для построения безопасной системы Asterisk: лучшей практикой считается загружать только необходимые модули.
Файл modules.conf всегда начинается с заголовка [modules] (модули). Asterisk может автоматически загружать все модули, содержащиеся в папке модулей, используя выражение autoload (автозагрузка), или загружать только те модули, которые указаны выражениями load =>. Мы рекомендуем вручную загружать только необходимые модули, но многие считают, что проще позволить Asterisk автоматически загрузить все, что она найдет в папке /usr/lib/asterisk/modules. После этого определенные модули можно исключить1 из загрузки с помощью выражений noload =>. Вот пример файла modules.conf:
[modules][modules] autoload=no задайте значение yes - и Asterisk будет загружать все модули, которые найдет в папке /usr/lib/asterisk/modules