Playback()

Проигрывает указанный файл

Приложение Playback() загружает звуковое приветствие с диска и проигрывает его вызывающему.

Любой ввод со стороны вызывающего игнорируется.

Синтаксис

Playback(имяфайла[&имяфайла2...][,опции])
имяфайла (один обязательно)
имя файла, который необходимо воспроизвести вызывающему абоненту. Значение имени файла не должно включать расширения файла, поскольку Asterisk автоматически выберет аудиофайл, преобразование которого пройдёт с минимальными затратами.
опции (опционально)
  • skip (пропустить) - воспроизводить сообщение только для канала, находящегося в состоянии "отвечено" (то есть если установлено соединение). При заданной опции skip приложение немедленно возвращается, если канал не соединён. В противном случае, если не задана опция noanswer, канал будет переведён в состояние "отвечено" и после этого будет воспроизведён аудиофайл.
  • noanswer (не отвечать) - указывает на то, что не нужно переводить звонок в состояние "отвечено" и в случае канал в другом состоянии, то приложение пропускается.
  • j (jump, перейти, перепрыгнуть) - если указанного файла не существует, то приложение переходит в приоритет n + 101 (???), где n - текущий приоритет.

С Asterisk поставляется множество профессионально записанных звуковых файлов, которые должны находится в папке, используемой для хранения звуков по умлчанию (обычно это /var/lib/asterisk/sounds). При компиляции Asterisk можно выбрать для установки различные наборы образцов звуков, записаных на разных языках и в разных форматах файлов. Во многих примерах будут использоваться эти файлы, а также несколько файлов из Exstra Sound Package, поэтому, пожалуйста, потратьте немного времени и установите этот пакет. Также, посетив сайт http://thevoice.digium.com/, можно создать собственные голосовые сообщения, записанные тем же голосом, что и представленные стандартные сообщения.

Чтобы использовать Playback(), задайте в качестве аргумента имя файла (БЕЗ расширения). Например Playback(filename) обеспечит воспроизведение звукового файла filename.gsm, предполагая, что он размещён в стандартной папке для звуковых файлов. Обратите внимание, что по желанию можно указать полный путь к файлу, как это сделано в данном примере:

exten => 123, 1, Playback(/absolute_path/to/filename)

Этот пример обеспечит воспроизведение файла filename.gsm из папки /absolute_path/to/. Также можно использовать относительные пути из папки для звуковых файлов Asterisk:

exten => 123, 1, Playback(custom/filename)

Этот пример обеспечит воспроизведение файла filename.gsm из подпапки custom стандартной папки для звуковых файлов (вероятно, это будет /var/lib/asterisk/sounds/custom/filename.gsm). Заметьте, что, если в указанной папке содержится несколько файлов под одним именем, но с разными расширениями файлов, Asterisk автоматически воспроизводит лучший из них.

Asterisk выбирает лучший файл исходя из затрат на преобразование, то есть тот файл, для которого преобразование в собственный аудиоформат обусловит наименьшую нагрузку на ЦП. При запуске Asterisk вычисляет затраты на преобразования между разными аудиоформатами (часто в разных системах они различны). Величины этих затрат можно увидеть, введя команду core show translation в интерфейсе командной строки. Представленные числа соответствуют времени в миллисекундах, которое потребуется Asterisk для преобразования одной секунды звука.