Чтение онлайн

ЖАНРЫ

Asterisk™: будущее телефонии Второе издание
Шрифт:

опция

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

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

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

Поделиться с друзьями: