355 500 произведений, 25 200 авторов.

Электронная библиотека книг » Джим Меггелен » Asterisk™: будущее телефонии Второе издание » Текст книги (страница 34)
Asterisk™: будущее телефонии Второе издание
  • Текст добавлен: 7 октября 2016, 17:17

Текст книги "Asterisk™: будущее телефонии Второе издание"


Автор книги: Джим Меггелен


Соавторы: Джаред Смит,Лейф Мадсен

Жанр:

   

ОС и Сети


сообщить о нарушении

Текущая страница: 34 (всего у книги 41 страниц)

exten => 123,1,Answer()

exten => 123,n,PrivacyManager()

exten => 123,n,GotoIf($["${PRIVACYMGRSTATUS}" = "FAILURE"]?bad)

exten => 123,n,Dial(Zap/1)

exten => 123,n,Hangup()

exten => 123,n(bad),Playback(im-sorry)

exten => 123,n,Playback(vm-goodbye)

exten => 123,n,Hangup()

Смотрите также

Zapateller()

Progress()

Служит индикатором хода выполнения вызова

Progress()

Указывает каналу на необходимость предоставить абоненту информацию о ходе выполнения. Каждый тип каналов в Asterisk имеет собственный способ обмена информацией о ходе обработки вызова.

; предоставляем информацию о ходе выполнения вызывающему ; каналу, ожидаем 5 с, а затем отвечаем на звонок exten => 123,1,Progress() exten => 123,n,Wait(5) exten => 123,n,Answer()

Смотрите также

Busy(),Congestion(), Ringing(), Playtones()

Queue()

Помещает текущий вызов в заданную очередь вызовов

Queue(имяочереди[, опции[, URL [, переопределитьприветствие[, времяожидания[, Лй!]]]]])

Помещает входящий вызов в очередь вызовов, заданную аргументом

имяочереди, соответствено описанию в файле queues.conf.

Аргумент опции может содержать нуль или более следующих символов:

d

Устанавливается вызов качества данных (модемный), то есть с минимальной задержкой.

h

Вызываемый абонент получает возможность разорвать соединение нажатием кнопки *.

H

Вызывающий абонент получает возможность разорвать соединение нажатием кнопки *.

i

Запросы на пересылку вызова, поступающие от участников очереди, игнорируются, при поступлении таких запросов никакие действия не выполняются.

n

Повторные попытки по истечении времени ожидания запрещены; происходит выход из этого приложения, и выполнение переходит к следующему шагу.

r

Вместо музыки во время ожидания вызывающий абонент будет слышать гудки.

t

Вызванный абонент получает возможность переадресовывать вызов.

T

Вызывающий абонент получает возможность переадресовывать вызов.

w

Вызванный абонент получает возможность записывать разговор на диск.

W

Вызывающий абонент получает возможность записывать разговор на диск.

Кроме переадресации, вызов может быть припаркован, а затем на него может ответить другой абонент.

Аргумент переопределитьприветствие переопределяет стандартное приветствие, воспроизводимое агентам обработки очереди перед тем, как они ответят на указанный вызов.

Необязательный URL будет отправлен вызываемой стороне, если канал поддерживает это.

Соответственно аргументу времяожидания вызов будет ожидать ответа в течение заданного промежутка времени, который проверяется между каждым циклом, заданным параметрами timeout и retry в файле queues.conf. Обработка вызова продолжится со следующего приоритета диалплана.

По завершении это приложение задает переменную канала QUEUESTATUS. Ей может быть задано одно из следующих значений: TIMEOUT (время ожидания)

Вызов находился в очереди слишком долго, и время ожидания истекло. См. параметр времяожидания.

FULL (полная)

Очередь была уже заполнена. См. настройку очереди maxlen в файле queues.conf.

JOINEMPTY (присоединился к пустой)

Вызывающий абонент не мог быть поставлен в очередь, поскольку не было участников, которые могли бы ответить на звонок. См. настройку очереди joinempty в файле queues.conf.

LEAVEEMPTY (покинул пустую)

Вызывающий абонент был поставлен в очередь, но затем все участники обработки очереди покинули ее. См. настройку очереди leavewhenempty в файле queues.conf.

JOINUNAVAIL (присоединился к недоступной)

Вызывающий абонент был поставлен в очередь, но затем все участники обработки очереди стали недоступными. См. настройку очереди leavewhenempty в файле queues.conf.

; помещаем вызывающего абонента в очередь techsupport

exten => 123,1,Answer()

exten => 123,2,Queue(techsupport,t)

Смотрите также

AddQueueMember(), RemoveQueueMember(), PauseQueueMember(), UnpauseQueueMember(), AgentLogin(), queues.conf, QUEUE_MEMBER_COUNT, QUEUE_MEMBER_LIST, QUEUE_WAITING_COUNT

QueueLog()

Записывает произвольные события очереди в журнал регистрации очереди

QueueLog( имяочереди, уникaльныйid, участник, событие[, дополнительнаяинформация])

Записывает произвольное событие очереди в журнал регистрации очереди. Параметр имяочереди определяет имя очереди вызовов. Параметр уникaльныйid определяет уникальный идентификатор для канала. Параметр участник определяет, к какому участнику обработки очереди относится событие. Для параметров событие и дополнительнаяинформация произвольно могут быть заданы необходимые данные.

; Записываем произвольное событие ; в журнал регистрации очереди

exten => 123,1,QueueLog(myqueue,${UNIQUEID},Agent/123,MyTestEvent)

Смотрите также

Queue()

Random()

Выполняет условный переход на основании вероятности

Ra.пdom([вероятность]:[[к.онтек.ст ) ]добaвочныйномер ) ]приоритет)

Это приложение признано устаревшим и заменено приложением

GotoIf($[${RAND(1,100)} > номер]?метка).

Выполняет условный переход в заданный приоритет (и необязательные добавочныйномер и контекст) на основании вероятности. В качестве вероятности должно использоваться целое число в диапазоне от 1 до 100. Приложение перейдет в заданный приоритет с заданной вероятностью.

; снова и снова выбираем случайный номер exten => 123,1,SayNumber(${RAND(110)}) exten => 123,n,Goto(1)

Смотрите также

RAND

Read()

Читает DTMF -коды, набираемые вызывающим абонентом, и сохраняет результат в переменной

Read(переменная[, имяфайла[, мак.симумцифр[, опция[, попытк.и[, времяожидания]]]]])

Читает вводимую пользователем строку цифр, оканчивающуюся символом #, в заданную переменную.

Другие аргументы:

имяфайла

Определяет файл, воспроизводимый перед чтением цифр.

максимумцифр

Задает максимально допустимое количество цифр. Если этот аргумент задан, приложение прекращает чтение после того, как было введено максимально допустимое количество цифр (не требуя от пользователя нажатия кнопки #). Значение по умолчанию – 0 (ограничений нет, ожидает нажатия кнопки #). Любое значение меньше 0 означает то же самое. Максимально допустимое значение – 255.

опция

Нуль или более следующих опций:

s

Немедленно возвращается, если линия не отвечает.

i

Трактует имя файла как настройку тона из файла indications.conf.

n

Читает последовательность цифр, даже если нет ответа на вызов.

попытки

Если больше 1, то означает количество попыток чтения при условии, что данные не были введены.

времяожидания

Если больше 0, это значение переопределит время ожидания по умолчанию.

; читаем двузначный номер и воспроизводим ; его вызывающему абоненту exten => 123,1,Read(NUMBER,,2) exten => 123,2,SayNumber(${NUMBER}) exten => 123,3,Goto(1)

Смотрите также

SendDTMF()

ReadFile()

Читает содержимое файла в переменную

ReadFile(переменная=имяфайла,длина)

Приложение ReadFile фиксирует содержимое файла, определенного аргументом имяфайла. Максимальный размер считываемого содержимого определяется аргументом длина.

; читаем в переменную первые 80 символов файла

exten => 123,1,Answer()

exten => 123,n,ReadFile(TEST=/tmp/test.txt,80)

exten => 123,n,SayAlpha(${TEST})

Смотрите также

System(), Read()

RealTime()

Выполняет поиск информации в обработчике конфигурации RealTime

RealTime(семейство,соответствующийстолбец, значение[, префикс])

Использует систему обработки конфигурации RealTime для чтения данных в переменные канала. Все уникальные имена столбцов (из указанного семейства) будут заданы как переменные канала с добавлением необязательного префикса к имени (например, префикс var_ превратит имя столбца name в переменную ${var_Mi«m}).

; извлекаем все столбцы из таблицы sipfriends, где столбец ; name содержит значение John, и используем для всех ; переменных префикс John_

exten => 123,1,RealTime(sipfriends,name,John,John_) ; теперь прочитаем значение столбца port exten => 123,n,SayNumber(${John_port})

Смотрите также

RealTimeUpdate()

RealTimeUpdate()

Обновляет значение посредством обработчика конфигурации RealTime

RealTimeUpdate(семейство, соответствующийстолбец, .значение, новыйстолбец, новоезначение) Использует систему обработки конфигурации RealTime для обновления значения. В столбце новыйстолбец в семействе, соответствующем столбцу соответствующийстолбец = значение, будет обновлено значение новоезначение.

В переменной канала REALTIMECOUNT будет сохранено количество обновленных строк или -1 в случае возникновения ошибки.

; зададим для столбца port таблицы sipfriends

; со значением John новое значение, 5061

exten => 123,1,RealTimeUpdate(sipfriends,name,John,port,5061)

Смотрите также

RealTime

Record()

Записывает в файл аудиосигнал, передаваемый по каналу

Record(имяфайла. формат[, пауза[,максимальнаяпродолжительность[, опции]]])

Записывает аудиосигнал из канала в файл с заданным параметром имя– файла. Если файл уже существует, он будет перезаписан.

К необязательным аргументам относятся:

формат

Определяет формат, в котором будет записываться файл.

пауза

Определяет допустимую паузу (в секундах), после которой запись будет закончена и выполнение перейдет к следующему приоритету диалплана.

максимальнаяпродолжительность

Устанавливает максимальную продолжительность записи, в секундах. Если не задана или равна 0, ограничений по продолжительности нет.

опции

Может содержать любой из следующих символов:

a

Дописываем в конец файла, а не перезаписываем его.

n

Не отвечаем на звонок, но все равно выполняем запись.

q

Скрытый режим; не воспроизводим звуковой сигнал в начале записи.

s

Не выполняем запись, пока не установлено соединение.

t

Используем альтернативную кнопку завершения * вместо применяемой по умолчанию #.

x

Игнорируем все кнопки завершения и продолжаем запись до разрыва соединения.

Если имяфайла содержит %d, эти символы будут замещены номером, увеличивающимся на 1 при каждой записи файла.

Пользователь может нажать кнопку #, чтобы завершить запись и продолжить выполнение со следующего приоритета диалплана.

; записываем имя вызывающего абонента exten => 123,1,Playback(pls-rcrd-name-at-tone) exten => 123,n,Record(/tmp/name.gsm,3,30) exten => 123,n,Playback(/tmp/name)

RemoveQueueMember()

Динамически удаляет участников очереди

RemoveQueueMember(имяочереди[, интерфейс[,опции]])

Динамически удаляет заданный интерфейс из очереди обработки вызовов, заданной аргументом имяочереди. Если интерфейс не задан, это приложение удаляет текущий канал из очереди.

Если параметр опции имеет значение j, интерфейса нет в очереди и существует приоритет n + 101 (где n – текущий приоритет), приложение перейдет в этот приоритет.

; удалим SIP/3000 из очереди techsupport

exten => 123,1,RemoveQueueMember(techsupport,SIP/3000)

Смотрите также

Queue(), AddQueueMember(), PauseQueueMember(), UnpauseQueueMember()

ResetCDR()

Сбрасывает запись параметров вызова

ResetCDR([опции])

Сбрасывает все поля в записи параметров вызовов для текущего канала. Параметр опции может содержать нуль или более следующих опций:

a

Сохраняем все записи, помещенные в стек.

w

Сохраняем текущую запись CDR, прежде чем выполнить ее сброс.

v

Сохраняем переменные CDR.

; делаем копию текущей записи CDR и сбрасываем ее

exten => 123,1,Answer()

exten => 123,2,Playback(tt-monkeys)

exten => 123,3,ResetCDR(wv)

exten => 123,4,Playback(tt-monkeys)

Смотрите также

ForkCDR(), NoCDR()

RetryDial()

Делает попытку позвонить и повторяет ее в случае неудачи

RetгyDial(объявление, ожидание, циклы,технология/ресурс[&технология2/ресурс2...] [,времяожидания][, опции][,URL])

Делает попытку совершить звонок. Если нет доступного канала, воспроизводится файл, определенный аргументом объявление, а затем приложение ожидает заданное аргументом ожидание количество секунд и повторяет вызов. Если количество выполненных попыток равно значению, заданному аргументом циклы, обработка вызова продолжится в следующем приоритете диалплана. Если аргументу циклы задано значение 0, попытки дозвониться будут выполняться бесконечно. В ходе ожидания может быть введен одноразрядный добавочный номер. Если этот номер существует в любом из контекстов, определенных в переменной ${EXITCONTEXT} (если определена), или в текущем, вызов немедленно будет переадресован на этот добавочный номер. Все аргументы после аргумента циклы передаются непосредственно в приложение Dial().

; трижды пытаемся дозвониться на номер через 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, переменные будут задаваться как глобальные, а не как переменные канала.

; задаем значение для переменной DIALTIME, а затем используем ее

exten => 123,1,Set(DIALTIME=20)

exten => 123,1,Dial(Zap/4/5551212,,${DIALTIME})

Задание множества переменных и использование опции g признано устаревшим. Пожалуйста, используйте вместо этого несколько вызовов Set() и функцию диалплана GLOBAL().

Смотрите также

GLOBAL, SET, ENV, channelvariables.txt

SetAMAFlags()

Задает AMA -флаги в записи параметров вызовов

SetAMAFlags^ar)

Задает AMA-флаги в записи параметров вызовов в целях учета вызовов и времени разговора абонента, переопределяя любые настройки AMA конфигурационных файлов канала. Действительными значениями являются default (по умолчанию), omit (не включать), billing (оплачивать) и documentation (документация). exten => 123,1,SetAMAFlags(billing)

Смотрите также

SetCDRUserField(), AppendCDRUserField()

SetCallerID()

Задает идентификатор вызывающего абонента для канала

SetCallerID(clid[,a])

Это приложение признано устаревшим и заменено приложением

Set(CALLERID(all)=Яекоторое Имя <1234>).

Задает идентификатор вызывающего абонента для канала. Если передается аргумент a, параметру ANI также присваивается заданное значение.

; переопределяем Caller ID для этого вызова

exten => 123,1,Set(CALLERID(all)="John Q. Public <8885551212>")

Смотрите также

CALLERID

SetCallerPres()

Задает флаги публикации Caller ID

SetCallerPres(публикация)

Задает флаги представления Caller ID для соединения Q.931 PRI. Действительными представлениями являются: allowed_not_screened

Публикация разрешена, не экранируется. allowed_passed_screen

Публикация разрешена, экранирование разрешено. allowed_failed_screen

Публикация разрешена, экранирование запрещено. allowed

Публикация разрешена, сетевой номер.

prohib_not_screened

Публикация запрещена, не экранируется. prohib_passed_screen

Публикация запрещена, экранирование разрешено. prohib_failed_screen

Публикация запрещена, экранирование запрещено. prohib

Публикация запрещена, сетевой номер.

unavailable

Номер недоступен.

exten => 123,1,SetCallerPres(allowed_not_screened) exten => 123,2,Dial(Zap/g1/8885551212)

Смотрите также

CALLERID()

SetCDRUserField()

Задает поле пользователя в записи параметров вызова

SetCDRUserField(значение)

Сохраняет в поле пользователя CDR заданное значение. Поле пользователя CDR – это дополнительное поле, используемое для записи данных, которые не могут быть сохранены в любом другом поле. Записи CDR могут использоваться для целей учета вызовов и времени разговора абонента или для хранения других произвольных данных о конкретном вызове.

exten => 123,1,SetCDRUserField(testing) exten => 123,2,Playback(tt-monkeys)

Это приложение признано устаревшим и заменено функцией

CDR().exten => 123,1,Set(CDR(userfield)=54321)

Смотрите также

AppendCDRUserField(), SetAMAFlags()

SetGlobalVar()

Присваивает глобальной переменной заданное значение

SetGlobalVar( г=значение)

Это приложение признано устаревшим и заменено приложением

Set(GLOBAL(переменнaя)=...).

Присваивает глобальной переменной n заданное значение. Глобальные переменные доступны всем каналам.

; задаем для глобальной переменной NUMRINGS значение 3 exten => 123,1,SetGlobalVar(NUMRINGS=3)

Смотрите также

Set()

SetMusicOnHold()

Устанавливает класс музыки во время ожидания по умолчанию для текущего канала

Это приложение признано устаревшим и заменено приложением

Set(CHANNEL(классмузыки)=...).

SetMusicOnHold(класс)

Задает класс по умолчанию музыки во время ожидания для текущего канала. При активации музыки во время ожидания этот класс будет использоваться для выбора воспроизводимой музыки. Классы описаны в конфигурационном файле musiconhold.conf.

exten=s,1,Answer()

exten=s,2,SetMusicOnHold(default)

exten=s,3,WaitMusicOnHold()

Смотрите также

WaitMusicOnHold(), musiconhold.conf, MusicOnHold()

SetTransferCapability()

Устанавливает пропускную способность ISDN для канала

SetTransferCapability(пропускнаяспособность)

Это приложение задает новое значение пропускной способности ISDN для текущего канала. Действительными значениями аргумента пропускнаяспособность являются: SPEECH

0x00, речь (по умолчанию, голосовые звонки).

DIGITAL

0x08, неограниченная цифровая информация (вызовы для передачи данных).

RESTRICTED_DIGITAL

0x09, ограниченная цифровая информация.

3K1AUDIO

0x10, аудиосигнал частотой 3,1кГц (вызовы для передачи факсов).

DIGITAL_W_TONES

0x11, неограниченная цифровая информация с тонами/приветствиями.

VIDEO

0x18, видео.

Это приложение является устаревшим, и его функциональность реализована синтаксисом Set (CHANNEL (t ransfe rcapability ) = у пропускнэяспособность).

exten => 123,1,Set(CHANNEL(transfercapability)=SPEECH)

SIPAddHeader()

Добавляет SIP -заголовок в исходящий вызов

SIPAddHeader(Заголовок: Содержимое)

Добавляет заголовок в SIP-вызов, выполняемый с помощью приложения Dial(). Нестандартный SIP-заголовок должен начинаться с символов X-, например X-Asterisk-Accountcode:. Приложение необходимо использовать с осторожностью, добавление неверных заголовков может стать причиной многих проблем.

Чтобы узнать возможности обеспечения большей гибкости, рассмотрите функцию диалплана SIP_HEADER().

exten => 123,1,SIPAddHeader(X-Asterisk-Testing: Just testing!) exten => 123,2,Dial(SIP/123)

Смотрите также

SIP_HEADER

SIPDtmfMode()

Меняет режим передачи DTMF -сигналов для вызова по каналу SIP

SIPDtmfMode( режим)

Меняет режим передачи DTMF-сигналов для вызова по каналу SIP. Допустимые значения аргумента режим: inband, info или rfc2833.

exten => 123,1,SIPDtmfMode(rfc2833) exten => 123,2,Dial(SIP/123)

Смотрите также

Приложение A

SLAStation()

Станция с поддержкой спаренных линий

SLAStation(станция)

Это приложение должно выполняться SLA-станцией. Формат параметра станция зависит от того, как был сформирован вызов. Если просто была снята трубка телефона, параметр станция должен содержать только имя станции. Если вызов был инициирован нажатием кнопки линии, имя станции должно сопровождаться символом подчеркивания и именем магистрального канала, связанного с кнопкой этой линии (station1_line2, например).

Более подробную информацию о поддержке спаренных линий можно найти в файле doc/sla.pdf в папке исходного кода Asterisk.

exten => 123,1,SLAStation(station1)

exten => 124,1,SLAStation(station1_line2)

Смотрите также

SLATrunk(), sla.conf

SLATrunk()

Магистральный канал с поддержкой спаренных линий

SLATrunk( магистральныйканал)

Это приложение должно выполняться магистральным каналом SLA для входящего вызова. Канал, вызывающий это приложение, должен соответствовать магистральному каналу SLA, заданному параметром

магистральныйканал.

Более подробную информацию о поддержке спаренных линий можно найти в файле doc/sla.pdf в папке исходного кода Asterisk.

exten => 123,1,SLATrunk(line2)

Смотрите также

SLAStation(), sla.conf

SoftHangup()

Осуществляет программный разрыв связи по запрашиваемому каналу

SoftHangup(технология/ресурс, опции)

Выполняет разъединение заданного канала. Если в качестве аргумента опции задана буква a, приложение пытается разъединить все каналы заданного устройства (в настоящее время аргумент опции может иметь только это значение).

; разъединяем все звонки по Zap/4, ; чтобы мы могли его использовать exten => 123,1,SoftHangup(Zap/4,a) exten => 123,2,Wait(2) exten => 123,3,Dial(Zap/4/5551212)

Смотрите также

Hangup()

StackPop()

Удаляет последний адрес из стека Gosub()

StackPop()

Удаляет последний адрес из стека Gosub(). Часто используется при обработке ошибок в рамках подпрограмм Gosub(), когда больше нет необходимости возвращать управление в точку диалплана, из которой была вызвана подпрограмма Gosub().

exten => s,1,Read(input,get-input) exten => s,n,Gosub(validate,1) exten => s,n,Dial(SIP/${input})

; Гарантируем ввод номеров в диапазоне от 400 до 499 exten => validate,1,GotoIf($[ ${input} > 499 ]?error,1)

exten => validate,n,GotoIf($[ ${input} < 400 ]?error,1) exten => validate,n,Return exten => error,1,StackPop() exten => error,2,Goto(s,1)

Смотрите также

Return(), Gosub()

StartMusicOnHold()

Начинает воспроизведение музыки во время ожидания

StartMusicOnHold([класс])

Воспроизводит музыку во время ожидания, заданную аргументом класс, соответственно настройкам в файле musiconhold.conf. Если аргумент опущен, используется класс музыки по умолчанию для канала. Задать класс музыки по умолчанию для канала можно с помощью функции CHANNEL(классмузыки). Возвращается немедленно.

; переадресовываем вызовы от систем продаж по телефону

; на этот добавочный номер, чтобы занять их

exten => 123,1,Answer()

exten => 123,2,Playback(tt-allbusy)

exten => 123,3,StartMusicOnHold(default)

exten => 123,4,Wait(600)

exten => 123,5,StopMusicOnHold()

Смотрите также

WaitMusicOnHold(), StopMusicOnHold()

StopMixMonitor()

Прекращает запись разговора по каналу

StopMixMonitor()

Прекращает отслеживание (запись) канала. Это приложение не оказывает никакого воздействия, если запись канала в настоящее время не ведется.

exten => 123,1,Answer() exten => 123,2,MixMonitor(monitor_test.wav) exten => 123,3,SayDigits(12345678901234567890) exten => 123,4,StopMixMonitor()

Смотрите также

MixMonitor()

StopMonitor()

Прекращает запись разговора по каналу

StopMonitor()

Прекращает отслеживание (запись) канала. Это приложение не оказывает никакого воздействия, если запись канала в настоящее время не ведется.

exten => 123,1,Answer() exten => 123,2,Monitor(wav,monitor_test,mb) exten => 123,3,SayDigits(12345678901234567890) exten => 123,4,StopMonitor()

Смотрите также

ChangeMonitor()

StopPlaytones()

Прекращает воспроизведение набора тонов

StopPlaytones()

Прекращает воспроизведение текущего набора тонов.

exten => 123,1,Playtones(busy)

exten => 123,2,Wait(2)

exten => 123,3,StopPlaytones()

exten => 123,4,Playtones(congestion)

exten => 123,5,Wait(2)

exten => 123,6,StopPlaytones()

exten => 123,7,Goto(1)

Смотрите также

Playtones(), indications.conf

StopMusicOnHold()

Прекращает воспроизведение музыки во время ожидания

StopMusicOnHold()

Прекращает воспроизведение музыки во время ожидания по каналу. Если музыка во время ожидания не проигрывалась, не оказывает никакого воздействия.

; переадресовываем вызовы от систем продаж по телефону

; на этот добавочный номер, чтобы занять их

exten => 123,1,Answer()

exten => 123,2,Playback(tt-allbusy)

exten => 123,3,StartMusicOnHold(default)

exten => 123,4,Wait(600)

exten => 123,5,StopMusicOnHold()

Смотрите также

WaitMusicOnHold(), StartMusicOnHold()

System()

Выполняет команду операционной системы

System(команда)

Выполняет команду в базовой операционной системе. Это приложение задает для переменной канала SYSTEMSTATUS значение FAILURE или SUCCESS в зависимости от того, успешно ли Asterisk выполнила команду. Это приложение очень похоже на TrySystem(), за исключением того что оно возвратит -1, если не сможет выполнить команду системы, тогда как приложение TrySystem() всегда возвращает 0. exten => 123,1,System(echo hello > /tmp/hello.txt)

Смотрите также

TrySystem()

Transfer()

Перенаправляет вызывающего абонента на удаленный добавочный номер

Traпsfer([Технология/]вызывaемыйномер[, опции)

Указывает, что удаленный вызывающий абонент должен быть переадресован на номер, заданный параметром вызываемыйномер (и опционально Технология). Если для параметра Технология задано значение IAX2, SIP, Zap и т. д., переадресация произойдет, только если входящий вызов поступил по каналу того же типа.


    Ваша оценка произведения:

Популярные книги за неделю