Джим Меггелен - Asterisk™: будущее телефонии Второе издание
PauseQueueMember()
UserEvent()
Передает произвольное событие в интерфейс Manager
UserEvent(имясобытия[, тело])
Отправляет произвольное событие в интерфейс Manager. В качестве необязательного тела могут быть представлены дополнительные аргументы. Формат события такой:
Event: UserEvent UserEvent: имясобытия тело
Если параметр тело не задан, в событии Manager будут пристутствовать только поля Event и UserEvent.
exten => 123,1,UserEvent(BossCalled,${CALLERID(name)} has called the boss!) exten => 123,2,Dial(${BOSS})
Смотрите также
manager.conf, интерфейс Asterisk Manager
Verbose()
Передает произвольный текст в детальный вывод
Verbose([уровень,]сообщение)
Посылает заданное сообщение в детальный вывод. В качестве параметра уровень должно быть задано целое значение. Если уровень не задан, используется значение по умолчанию, 0.
exten => 123,1,Verbose(Somebody called extension 123) exten => 123,2,Playback(extension) exten => 123,3,SayDigits(${EXTEN})
Необязательный аргумент уровень вовсе не является необязательным, если в вызов Verbose() включен разделитель Если присутствует разделитель, Ve rbose() предполагает, что вы собирались задать уровень (и отбрасывает все до первого символа |). Поэтому, наверное, лучше выработать привычку всегда задавать параметр уровень.
Смотрите также
NoOp(), Log()
VMAuthenticate()
Аутентификация вызывающего абонента по паролям голосовой почты
VMAuthenticate([почтовыйящик][@контекст[,опции]])
Ведет себя аналогично приложению Authenticate(), за исключением того что используются пароли из файла voicemail.conf. Если задан параметр почтовыйящик, действительными будут считаться только пароли этого почтового ящика. Если параметр почтовыйящик не задан, переменной канала AUTH_MAILBOX будет присвоено значение, соответствующее имени почтового ящика, для которого подошел пароль. Если для параметра опции задано значение s, Asterisk пропустит начальные сообщения.
; принимает любой пароль почтового ящика из контекста
; голосовой почты default и сообщает нам соответствующий
; номер почтового ящика
exten => 123,1,VMAuthenticate(@default)
exten => 123,2,SayDigits(${AUTH_MAILBOX})
Смотрите также
Authenticate(), voicemail.conf
VoiceMail()
Оставляет сообщение голосовой почты в указанном почтовом ящике
VolceMall(почтовыйящик[@контекст][&почтовыйящик[@контекст]][...]|опции)
Оставляет голосовую почту для почтового ящика, заданного параметром почтовыйящик (должен быть сконфигурирован в файле voicemail.conf). Если задано более одного почтового ящика, будут использоваться сообщения почтового ящика, заданного первым. Опции: s
Пропускается воспроизведение инструкций.
u
Воспроизводится сообщение о недоступности абонента.
b
Воспроизводится сообщение о занятости абонента.
д(число)
Увеличивает громкость записи на заданное число децибел (дБ).
J
Если запрашиваемый почтовый ящик не существует и имеется приоритет n + 101 (где n - текущий приоритет), этот приоритет будет выполнен следующим.
Если вызывающий абонент во время воспроизведения сообщения нажимает кнопку 0 (нуль), вызов переходит в добавочный номер o (строчная буква o) текущего контекста, если в файле voicemail.conf было задано operator=yes.
Если вызывающий абонент во время воспроизведения сообщения нажимает кнопку *, вызов переходит в добавочный номер a текущего контекста. Это часто используется для направления абонента к личному секретарю.
По завершении это приложение задает переменную канала VMSTATUS. Она будет содержать одно из следующих значений:
SUCCESS
Вызов был успешно отправлен в систему голосовой почты.
USEREXIT
Вызывающий абонент вышел из системы голосовой почты.
FAILED
Система не смогла направить вызов в систему голосовой почты.
; отправляем вызывающего абонента в папку голосовой почты, используемую ; в случае недоступности почтового ящика 123 exten => 123,1,VoiceMail( [email protected],u)
Смотрите также
VoiceMailMain(), voicemail.conf
VoiceMailMain()
Выполняет вход в систему голосовой почты
VoiceMailMain([почтовыйящик][@контекст][, опции)
Выполняет вход в основную систему голосовой почты для проверки голосовой почты. Передача аргумента почтовыйящик избавит пользователя от необходимости вводить номер почтового ящика. Также необходимо задать аргумент контекст для голосовой почты.
Строка опции может содержать нуль или более следующих опций:
s
Не проводится проверка пароля.
p
Эта опция указывает Asterisk трактовать значение почтовыйящик как номер, который должен быть добавлен в начало имени почтового ящика, введенного абонентом. Чаще всего это используется, когда на одном сервере Asterisk располагается много ящиков голосовой почты для разных компаний.
g( прирост)
При записи сообщений голосовой почты увеличивает их громкость на величину прирост. Эта опция должна быть задана как целое число, обозначающее количество децибел.
a( папка)
Сообщение папки пропускается, и выполняется переход непосредственно к папке, заданной параметром папка. Значение по умолчанию для этой опции - INBOX.
; переходим к меню голосовой почты для почтового ; ящика 123 в контексте голосовой почты default exten => 123,1,VoiceMailMain( [email protected])
Смотрите также
VoiceMail(), voicemail.conf
Wait()
Ожидает заданное количество секунд
Wait(количествосекунд)
Ожидает в течение времени, заданного параметром количествосекунд. Можно передавать доли секунд. Например, значение количествосекунд, равное 1,5, заставит диалплан подождать 1,5 с перед переходом к следующему приоритету.
; ожидаем 1,5 с перед воспроизведением сообщения exten => s,1,Answer() exten => s,2,Wait(1.5)
exten => s,3,Background(enter-ext-of-person)
WaitExten()
Ожидает ввода добавочного номера
WaitExten([количествосекунд][, опции])
Ожидает ввода нового добавочного номера пользователем заданное количество секунд. Можно задавать доли секунд (например, 1,5 = 1,5 с). Если параметр количествосекунд не задан, используется время ожидания ввода добавочного номера по умолчанию. Чаще всего это приложение используется без задания опций количествосекунд. Для параметра опции может быть задано такое значение: m[(клaсс)[
В процессе ожидания ввода добавочного номера воспроизводится музыка во время ожидания. Можно (необязательно) задать класс музыки во время ожидания в круглых скобках.
; ожидаем ввода добавочного номера пользователем ; в течение 15 с exten => s,1,Answer()
exten => s,2,Playback(enter-ext-of-person) exten => s,3,WaitExten(15)
Смотрите также
Background(), TIMEOUT
WaitForRing()
Ожидает звонка заданное количество секунд
WaitForRing(времяожидания)
Ожидает по крайней мере заданное параметром вермяожидания количество секунд после завершения следующего звонка.
; ожидаем звонка пять секунд, а затем передаем
; некоторую DTMF-последовательность
exten => 123,1,Answer()
exten => 123,2,WaitForRing(5)
exten => 123,3,SendDTMF(1234)
Смотрите также
WaitForSilence()
WaitForSilence()
Ожидает заданное количество пауз
WaitForSilence(необходимаяпауза[, повтор[, времяожидания]])
Ожидает заданного параметром повтор количества пауз длительностью, в миллисекундах, определенной параметром необходимаяпауза. Если параметр повтор не задан, приложение ожидает заданного параметром необходимаяпауза количества миллисекунд тишины.
Если задана опция времяожидания, это приложение возвратится к следующему приоритету диалплана по истечении заданного количества секунд, даже если пауза не была выявлена.
Пожалуйста, используйте опцию времяожидания с осторожностью, поскольку она может аннулировать цель применения этого приложения, состоящую в том, чтобы неопределенно долго ожидать тишины в линии. Вероятно, желательно задать очень большое время ожидания, только чтобы избежать бесконечного цикла в случаях, когда тишина не устанавливается никогда.
Это приложение задает для переменной канала WAITSTATUS значение SILENCE или TIMEOUT.
; ожидаем трех пауз по 300 мс exten => 123,WaitForSilence(300,3)
Смотрите также
WaitForRing()
WaitMusicOnHold()