Asterisk™: будущее телефонии Второе издание - Меггелен Джим Ван
; трижды пытаемся дозвониться на номер через IAX, ; повторяя попытку каждые пять секунд
exten => 123,1,RetryDial(priv-trying,5,3,IAX.2/VOIP/8885551212,3CJ) ; если вызывающий абонент в процессе ожидания нажимает 9, ; звоним по этому номеру по каналу Zap/4 exten => 9,1,RetryDial(priv-trying,5,3,Zap/4/8885551212,30)
Смотрите также
Dial()
Return()
Возвращает выполнение из Gosub() или GosubIf()
Return()
Возвращает выполнение из ранее вызванных приложений Gosub() или GosubIf(). Если Gosub() или GosubIf() не вызывались до этого, Return() завершается аварийно.
Смотрите также
Gosub(),StackPop()
Ringing()
Сигнализирует о наличии тонального сигнала вызова
Ringing()
Указывает каналу передать тональный сигнал вызова абоненту. То, как именно обозначается сигнал вызов, определяет драйвер канала. Заметьте, что данное приложение не предоставляет фактический звук звонка абоненту. Для этого используется приложение Playtones().
; показываем, что телефон звонит,
; даже несмотря на то, что это не так
exten => 123,1,Ringing()
exten => 123,2,Wait(5)
exten => 123,3,Playback(tt-somethingwrong)
Смотрите также
Busy(), Congestion(), Progress(), Playtones()
SayAlpha()
Проговаривает строку
SayAlpha(строкa)
Проговаривает заданную строку, используя текущую настройку языка для канала. Подробнее о том, как изменить язык текущего канала, рассказывается в описании функции CHANNEL.
exten => 123,1,SayAlpha(ABC123XYZ)
Смотрите также
SayDigits(), SayNumber(), SayPhonetic(), CHANNEL
SayDigits()
Проговаривает заданные цифры
SayDigits(цифры)
Проговаривает заданные цифры, используя текущую настройку языка для канала. Подробнее о том, как изменить язык текущего канала, рассказывается в описании функции CHANNEL.
exten => 123,1,SayDigits(1234)
Смотрите также
SayAlpha(), SayNumber(), SayPhonetic(), CHANNEL
SayNumber()
Проговаривает заданный номер
SayNumber(цифры[, род])
Проговаривает заданный номер, используя текущую настройку языка для канала. Подробнее о том, как изменить язык текущего канала, рассказывается в описании функции CHANNEL.
Если в текущем языке есть категория рода, для изменения рода проговариваемого номера можно передать аргумент род. Могут использоваться следующие значения аргумента род:
• f для женского рода, m для мужского рода и n для среднего рода в таких европейских языках, как португальский, французский, испанский и немецкий.
• c для общего и n для среднего родов в скандинавских языках, таких как датский, шведский и норвежский.
• p для многозначных числительных в немецком языке.
; проговорим номер по-английски exten => 123,1,Set(CHANNEL(language)=en) exten => 123,2,SayNumber(1234)
Чтобы это приложение работало не только с английским языком, необходимы соответствующие звуковые файлы для языков, которые вы желаете использовать.
Смотрите также
SayAlpha(), SayDigits(), SayPhonetic(), CHANNEL
SayPhonetic()
Проговаривает заданную строку , используя фонетический алфавит
SayPhonetic(строка)
Проговаривает заданную строку, используя фонетический алфавит, принятый в НАТО.
exten => 123,1,SayPhonetic(asterisk)
Смотрите также
SayAlpha(), SayDigits(), SayNumber()
SayUnixTime()
Проговаривает указанное время в определенном формате
SayUnixTime([unixtime][,[часовойпояс][,формат]])
Проговаривает указанное время соответственно часовому поясу и формату. Используются аргументы:
unixtime
Время, в секундах, прошедшее с 1 января 1970 года. Может быть отрицательным. По умолчанию равно текущему времени.
часовойпояс
Часовой пояс. Перечень часовых поясов можно найти по адресу /usr/share/zoneinfo/. По умолчанию используется часовой пояс компьютера.
формат
Формат, в котором проговаривается время. Список форматов представлен в файле voicemail.conf. Значение по умолчанию - ABdY 'digits/at' IMp.
exten => 123,1,SayUnixTime(,,IMp)
Смотрите также
STRFTIME, STRPTIME, IFTIME
SendDTMF()
Посылает произвольную DTMF-последовательность в канал
SendDTMF(цифры[,времяожидания_мс])
Передает заданные DTMF-коды в канал. В DTMF-коде допустимы символы 0-9, *, # и A-D. Также может использоваться буква w, которая означает ожидание 500 мс. Аргумент времяожидания_мс - это пауза между кодами в миллисекундах. Если не задан, по умолчанию принимается равным 250 мс.
exten => 123,1,SendDTMF(3212333w222w366w3212333322321,250)
Смотрите также
Read()
SendImage()
Отправляет файл с изображением
SendImage(имяфaйлa,опции)
Отправляет изображение в канал, если поддерживается передача изображений. Это приложение по завершении выполнения задает для переменной канала SENDIMAGESTATUS значение OK или NOSUPPORT (не поддерживается).
Если для параметра опции задано значение j, канал не поддерживает передачу изображений и существует приоритет n + 101 (где n - текущий приоритет), выполнение продолжится в нем.
exten => 123,1,SendImage(logo.jpg)
Смотрите также
SendText(), SendURL()
SendText()
Отправляет текст в канал
SendText(текст, опции)
Передает текст в канал, если поддерживается передача текста. По завершении выполнения для переменной канала SENDTEXTSTATUS будет задано одно из следующих значений:
SUCCESS (успех)
Передача текста была успешной.
FAILURE (сбой)
Передать текст не удалось.
NOSUPPORT (не поддерживается)
Базовый канал не поддерживает передачу текста.
Если для параметра опции задано значение j, канал не поддерживает передачу текста и существует приоритет n + 101 (где n - текущий приоритет), выполнение продолжится в этом приоритете.
exten => 123,1,SendText(Welcome to Asterisk)
Смотрите также
SendImage(), SendURL()
SendURL()
Передает заданный URL в канал (если поддерживается)
SendURL(URL[,опции])
Предлагает клиенту перейти по заданному URL. Приложение также по завершении задает для переменной SENDURLSTATUS одно из следующих значений:
SUCCESS
Передача URL была успешной.
FAILURE
Передать URL не удалось.
NOLOAD
Базовый канал поддерживает Сеть, но не смог загрузить URL.
NOSUPPORT
Базовый канал не поддерживает передачу URL.
Если параметр опции содержит значение wait (ожидать), выполнение будет приостановлено до получения подтверждения того, что URL был загружен.
Если для параметра опции задано значение j , клиент не поддерживает транспортный протокол HTML и существует приоритет n + 101 (где n - номер текущего приоритета), выполнение продолжится в этом приоритете.
exten => 123,1,SendURL(www.asterisk.org,wait)
Смотрите также
SendImage(), SendText()
Set()
Присваивает переменной заданное значение
Set(n=знaчение,[n2=знaчение2...[, опции]])
Присваивает переменной n заданное значение. Также задает для переменной n2 значение значение2. Если имя переменной начинается с символа _, предполагается одиночное наследование. Если имя переменной начинается с , предполагается множественное наследование. Наследование используется, когда требуется, чтобы каналы, производные от текущего канала, наследовали переменную текущего канала. Если для параметра опции задано значение g, переменные будут задаваться как глобальные, а не как переменные канала.