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

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

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


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


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

Жанр:

   

ОС и Сети


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

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

vpb.conf

Этот файл используется для конфигурации плат Voicetronix в Asterisk. Больше информации можно найти в файле-шаблоне vpb.conf.

zapata.conf

Файл zapata.conf используется для описания отношений между Asterisk и драйвером Zaptel. Поскольку файл zapata.conf используется только Asterisk, он располагается вместе с остальными конфигурационными файлами Asterisk в папке /etc/asterisk/. Как и zaptel.conf, файл zapata.conf содержит массу вариантов выбора, отражающих огромное количество разнообразного оборудования, которое он поддерживает, и мы даже не будем пытаться перечислить здесь все эти опции. В данной книге (в главе 3) рассматривались только аналоговые интерфейсы для драйвера Zaptel.

zaptel.conf

Файл zaptel.conf располагается отдельно от всех остальных CONF-фай– лов Asterisk; драйвер Zaptel доступен любому приложению, которое может использовать его, поэтому имеет смысл хранить его в другой папке, не в той, которая используется только Asterisk (/etc/). Программа ztcfg проводит синтаксический разбор для конфигурации аппаратных элементов TDM в вашей системе. Вы настраиваете в файле zaptel. conf три основных элемента:

• Способ идентификации интерфейсов платы в плане набора.

• Тип необходимой интерфейсу системы обмена сигналами.

• Тоновый язык, связанный с конкретным интерфейсом, как задано в zonedata.c.

Будьте очень осторожны и случайно не включите свой модуль FXS в телефонную линию. Напряжение телефонной линии, особенно при поступлении вызова, слишком велико для модуля и может нанести ему непоправимый вред, сделав его абсолютно бесполезным!

которая будет использоваться для конфигурации каналов с помощью команды ztcfg. В файле zaptel.conf предлагается так много параметров, потому что механизм телефонии Zaptel используется множеством разнообразнейших интерфейсов PSTN. Также, поскольку данная технология быстро эволюционирует, все, что мы пишем сейчас, может измениться к тому моменту, когда вы это читаете. Поэтому мы не пытаемся перечислить здесь все эти опции.

В данной книге мы сосредоточились на аналоговых интерфейсах Zaptel, предоставляемых платой TDM400P производства компании Digium (см. главу 3).

E

Функции диалплана Asterisk

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

AGENT

Возвращает информацию об агенте

AGENT( idareHTa[: элемент])

Эта функция позволяет извлекать информацию, касающуюся агентов, и может только возвращать значение, не принимать. Действительные значения поля элемент: status (значение по умолчанию)

Статус агента (LOGGEDIN | LOGGEDOUT). password

Пароль агента. name

Имя агента. mohclass

Класс музыки во время ожидания.

exten

Добавочный номер обратного вызова для агента (AgentCallbackLogin).

channel

Имя активного канала для агента (AgentLogin).

ARRAY

Позволяет задавать несколько переменных за один раз

ARRAY(переменнaя1[|переменнaя2[...][|переменнaяN]])

Список значений, разделенных запятыми, соответствующий этой функции, будет интерпретирован как набор значений, которые должны быть присвоены переменным, чьи имена заданы аргументами этой функции. Функция может только принимать значение, не возвращать. ; Задаем var1 значение 1 и var2 значение 2. exten => 123,1,Set(ARRAY(var1,var2)=1,2)

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

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

Set()

BASE64_DECODE

Декодирует строку, кодированную в BASE64

BASE64_DECODE(base64_строка)

Декодирует BASE64-строку. Эта функция только возвращает значение, не принимает.

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

BASE64_ENCODE()

BASE64_ENCODE

Кодирует строку в формат BASE64

BASE64_ENCODE(строка)

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

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

BLACKLIST

Проверяет наличие CallerID в черном списке

BLACKLIST() проверяет семейство blacklist базы данных AstDB на наличие в нем указанного идентификатора вызывающего абонента. Возвращает значение 1 или 0.

Эта функция только возвращает значение, не принимает.

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

DB()

CALLERID

Возвращает или устанавливает данные Caller ID для канала

CALLERID(типданных[,необязательный-CID])

CALLERID() проводит синтаксический разбор строки Caller ID текущего канала и возвращает ее всю или часть, как задано параметром типданных. Допустимые типы данных: all, name, num, ani, dnid или rdnis. Может быть задан (необязательно) альтернативный Caller ID, если вы желаете проводить синтаксический разбор этой строки, а не заданного для канала Caller ID.

Функция может как возвращать, так и принимать значение.

CDR

Возвращает или устанавливает информацию CDR для данного вызова (которая будет записана в журнал CDR)

CDR(имяполя[,опции])

Вот список имен доступных полей CDR:

clid

Доступно только для чтения. Это значение задается функцией

CALLERID(all).

lastapp

Доступно только для чтения. Показывает приложение, которое было выполнено последним.

lastdata

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

src

Доступно только для чтения. Это значение задается функцией

CALLERID(ani).

dcontext

Доступно только для чтения. Соответствует последнему контексту диалплана.

channel

Доступно только для чтения. Имя канала, от которого поступил звонок.

dstchannel

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

disposition (состояние)

Доступно только для чтения. Максимальное состояние канала. Если задана опция u, это значение будет возвращено как целое число, а не строка: 1 = NO ANSWER, 2 = BUSY, 3 = FAILED, 4 = ANSWERED.

amaflags

Доступно для чтения/записи. Флаги, используемые для учета вызовов и времени разговора абонента. Если задана опция u, это значение будет возвращено как целое число, а не строка: 1 = OMIT, 2 = BILLING, 3 = DOCUMENTATION.

accountcode

Доступно для чтения/записи. Расчетный счет (максимум 19 символов).

userfield

Доступно для чтения/записи. Определяемое пользователем поле.

start

Доступно только для чтения. Время начала звонка. Если задана опция u, это значение будет возвращено как целое число (количество секунд с начала отсчета времени), а не форматированная строка дата/время.

answer

Доступно только для чтения. Время установления соединения (поле может быть пустым, если на вызов еще не поступил ответ). Если задана опция u, это значение будет возвращено как целое число (количество секунд с начала отсчета времени), а не форматированная строка дата/время.

end

Доступно только для чтения. Время завершения звонка (поле может быть пустым, если звонок еще не завершен). Если задана опция u, это значение будет возвращено как целое число (количество секунд с начала отсчета времени), а не форматированная строка дата/ время.

duration

Доступно только для чтения. Разность между временем начала и окончания, в секундах. Может быть равным 0, если звонок еще не завершен.

billsec

Доступно только для чтения. Разность между временем установления соединения и окончания звонка, в секундах. Может быть равным 0, если звонок еще не завершен.

uniqueid

Доступно только для чтения. Строка, которая будет уникальна для каждого звонка в рамках этого экземпляра Asterisk.

Могут быть заданы следующие опции:

l

В случае если используется множество CDR посредством ForkCDR(), все результаты для вызова будут извлечены из последней записи параметров вызова.

r

Специальные переменные CDR будут извлечены из последней записи параметров вызова, но стандартные поля будут получены из первой записи.

u

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

Также можно задать значение имяполя, не представленное в приведенном выше списке, и создать собственную переменную, значение которой можно изменять с помощью этой функции. И эта переменная будет храниться в CDR.

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

CHANNEL()

CHANNEL

Получение или задание различных параметров канала

CHANNEL(элемент)

Стандартные элементы (для всех типов каналов):

audioreadformat

Доступно только для чтения. Формат, используемый для приема аудиоданных в настоящий момент.

audionativeformat

Доступно только для чтения. Формат, обычно используемый для аудиоданных.

videonativeformat

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

audiowriteformat

Доступно только для чтения. Формат, используемый для передачи данных в настоящий момент.

callgroup

Чтение/запись. Группы вызовов для перехвата входящих вызовов.

channeltype

Доступно только для чтения. Технология, используемая для канала.

language

Чтение/запись. Язык, на котором записываются и воспроизводятся звуковые файлы.

musicclass

Чтение/запись. Класс (из файла musiconhold.conf) музыки во время ожидания.

rxgain

Чтение/запись. Уровень принимаемого сигнала (в децибелах) для драйверов каналов, которые это поддерживают.

txgain

Чтение/запись. Уровень передаваемого сигнала (в децибелах) для драйверов каналов, которые это поддерживают.

tonezone

Чтение/запись. Часовой пояс, соответственно которому генерируются различные сигналы.

state

Доступно только для чтения. Текущее состояние канала. transfercapability

Чтение/запись. Что может передаваться по сети ISDN. Текущие действительные значения:

DIGITAL

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

RESTRICTED_DIGITAL

Ограниченная цифровая информация.

3K1AUDIO

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

DIGITAL_W_TONES

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

VIDEO

Видео.

Могут быть доступны дополнительные значения параметра элемент в зависимости от драйвера канала; более детальная информация представлена в его документации. В результате любого запроса на элемент, недоступный для текущего канала, будет возвращена пустая строка.

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

CDR()

CHECK_MD5

Проверяет хеш MD5

CHECK_MD5(хеш,данные)

В случае успешной проверки возвращает 1, иначе 0.

Эта функция признана устаревшей и была заменена функцией MD5() со

встроенным синтаксическим анализатором выражений.

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

MD5()

CHECKSIPDOMAIN

Проверяет, является ли домен локальным

CHECKSIPDOMAIN(домен|IP)

Эта функция проверяет, является ли заданный в аргументе домен локальным SIP-доменом, для обработки которого сконфигурирован данный сервер Asterisk. Возвращает имя домена, если он обрабатывается локально, в противном случае возвращается пустая строка. Обратите внимание на конфигурационную опцию domain в файле sip.conf.

CURL

Возвращает данные, полученные в результате операции GET или POST по заданному URL

CURl(url[|отпрaвляемые-дaнные])

По умолчанию CURL() будет выполнять операцию HTTP GET для получения значения url. Однако, если задан параметр отправляемые-данные, будет выполняться HTTP POST.

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

SendURL()

CUT

Вырезает строку на основании заданного разделителя

CUT(имяпеременной, символ-разделитель,диапазон)

Функция CUT() аналогична инструменту командной строки UNIX cut(1) и, кстати, разработана на базе этого инструмента.

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

Самый распространенный вариант – имя канала, которое состоит из двух частей: базового имени и уникального идентификатора (например, SIP/tom-abcd1234 или SIP/bert-1a2b3c4d). Функция CUT() может использоваться для обрезки уникального идентификатора независимо от длины базового имени:

; Вырезаем уникальный идентификатор

; из имени текущего канала

exten => 123,1,Set(chan=$

имяпеременной – это имя обрабатываемой переменной. Обратите внимание, что функция CUT() работает с именем переменной, а не ее значением. CUT() уникальна с этой точки зрения.

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

диапазон позволяет определить, какие поля будут возвращены. В качестве параметра диапазон с помощью символа – может быть задан диапазон (например, 1-3), а с помощью символа & – группа диапазонов и номеров полей (например, 1&3-4). Заметьте, что, если задано несколько номеров полей, поля результирующего значения будут иметь те же разделители.

Параметр диапазон использует смещение, начиная с 1. То есть первое поле – это поле номер 1 (в противоположность смещению с 0, при котором первое поле шло бы под номером 0).

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

FIELDQTY()

DB

Выполняет чтение или запись в AstDB

DB(семейство/ключ)

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

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

DBdel(), DB_DELETE(), DBdeltree(), DB_EXISTS()

DB DELETE

Удаляет ключ или семейство ключей из базы данных AstDB

DB_DELETE(семейство/ключ)

Возвращает значение из базы данных и удаляет его.

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

DBdel(), DB(), DBdeltree()

DB EXISTS

Проверяет, существует ли в AstDB указанный ключ

DB_EXISTS(семейство/ключ)

Проверяет, существует ли ключ в базе данных Asterisk.

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

DB()

DUNDILOOKUP

Запрашивает у равноправных участников системы DUNDi определенный номер

DUNDILOOKUP(номер[|контекст[|опция)

ENUMLOOKUP

Запрашивает в базе данных ENUM определенный номер

ENUMiOOKUP(номер[|Тип-методa[|опции[|зaпись#[|суффик.с-зоны]]]])

Позволяет получать основные или специальные NAPTR-записи или счетчики типов NAPTR для ENUM или ENUM-подобных DNS-указателей.

ENV

Работает с переменными окружения

ENV(имяпеременнойокружения)

Возвращает или устанавливает значение переменной окружения, заданной параметром имяпеременнойокружения.

EVAL

Вычисляет хранящиеся переменные

EVAL(переменная)

EVAL() – одна из наиболее мощных функций диалплана. Она позволяет сохранять переменные выражения не только в файле extensions.conf, а, например, и в базе данных и при этом вычислять их в диалплане так же, как если бы они были просто включены в него. Можно смело утверждать, что EVAL() – основной элемент в обеспечении истинной динамичности диалплана.

; Мы можем сохранить в записи базы данных для ; extension/123, например, следующее: ; "SIP/${DB(ext2chan/123)}". Это направит нас к другой ; записи базы данных.

exten => _XXX,1,Set(dialline=${DB(extension/${EXTEN})}) exten => _XXX,n,Dial(${EVAL(${dialline})})

; Реальный пример (взят из кода, используемого ; в производственной эксплуатации)

exten => _1NXXNXXXXXX,n(generic),Set(provider=${DB(rt2provider/${route})}-nanp) exten => _ 1NXXNXXXXXX, n(provider), Dial(${EVAL(${DB(provider/${provider})})})

exten => _1NXXNXXXXXX,n,Goto(nextroute)

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

Exec()

EXISTS

Проводит проверку, является ли значение не пустым

EXISTS(данные)

Тест на существование значения: возвращает 1, если оно не пустое; 0 в противном случае.

FIELDQTY

Выполняет подсчет полей

FIELDQTY(имяпеременной|разделитель)

Подсчитывает поля с использованием произвольно заданного разделителя.

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

CUT()

FILTER

Удаляет из строки запрещенные символы

FILTER(разрешеные-символы|строка)

Выполняет фильтрацию содержимого параметра строка и включает в результат только значение разрешенные-символы:

; Гарантируем, что номер Caller*ID содержит только цифры

exten => Set(CALLERID(num)=${FILTER(0123456789,${CALLERID(num)})})

Эта функция только возвращает значение, не принимает.

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

QUOTE()

GLOBAL

Указывает глобальное пространство имен

GLOBAL(имяпеременной)

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

GROUP

Включает канал в заданную группу

GROUP([категория])

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

; Разрешаем одновременно выполнять доступ к системе ; оповещения только одному пользователю. exten => 8000,1,Set(GROUP()=pager)

exten => 8000,n,GotoIf($[${GROUP_COUNT(pager)} > 1]?hangup) exten => 8000,n,Page(SIP/101&SIP/102&SIP/103&SIP/104) exten => 8000,n(hangup),Hangup

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

GROUP_COUNT

Подсчитывает количество каналов в заданной группе

GROUP_COUNT([имягруппы][@кaтегория])

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

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

GROUP(), GROUP_LIST(), GROUP_MATCH_COUNT()

GROUP_LIST

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

GROUP_LIST()([имягруппы][@кaтегория])

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

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

GROUP(), GROUP_COUNT(), GROUP_MATCH_COUNT()

GROUP_MATCH_COUNT

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

GROUP_MATCH_COUNT(шaблонименигруппы [@категория ])

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

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

GROUP(),GROUP_COUNT(), GROUP_LIST()

IAXPEER

Получает информацию о IAX -канале

IAXPEER(имярaвнопрaвногоучaстникa[| элемент]) IAXPEER(CURRENTCHANNEL[|элемент])

Получает информацию о равноправном участнике IAX. Если имя равноправного участника задано, действительными значениями параметра элемент являются:

ip

IP-адрес этого равноправного участника. Если параметр элемент не задан, IP-адрес будет предоставлен.

mailbox

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

context

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

expire

Время следующего истечения регистрации этого равноправного участника.

dynamic

Этот равноправный участник зарегистрирован в Asterisk? (yes/no)

callerid_name

Заданное для этого равноправного участника имя Caller ID.

callerid_num

Заданный для этого равноправного участника номер Caller ID.

codecs

Заданные для этого равноправного участника кодеки.

codec[x]

Индекс x предпочтительного кодека (начиная с нуля).

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

SIPPEER()

IF

Выбор значения по условию

^(выражение?[Ггие][: false])

Условный оператор: возвращает данные, следующие за символом ?, в случае истинности условия, в противном случае возвращает данные, следующие за символом :.

; Возвращается foo

exten => 123,1,Set(something=${IF($[2 > 1]?foo:bar)}) ; Возвращается bar

exten => 123,n,Set(something=${IF($[2 < 1]?foo:bar)})

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

GotoIf()

IFTIME

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

IFTIME(время,дни_недели, дни_месяца,месяцы?[true][: false])

Условный оператор: возвращает данные, следующие за символом ?, в случае истинности условия, в противном случае возвращает данные, следующие за символом : .

время

Диапазоны времени в 24-часовом формате.

дни_недели

Дни недели (mon, tue, wed, thu, fri, sat, sun). дни_месяца

Дни месяца (1-31).

месяцы

Месяцы (jan, feb, mar, apr и т. д.).

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

GotoIfTime()

ISNULL

Проверяет, является ли значение пустым

ISNULL(дaнные)

Возвращает 1, если значение данные пустое, или 0 в противном случае.

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

LEN(), EXISTS()

KEYPADHASH

Выполняет преобразование букв в числа

KEYPADHASH(строка)

Преобразует буквы в параметре строка в эквивалентные цифры номеронабирателя.

; Вычислим хеши фамилий авторов. Итак, ; соответствующими значениями будут ; 623736, 76484 и 82663443536.

exten => 123,1,Set(lastname1=${KEYPADHASH(Madsen)}) exten => 123,n,Set(lastname2=${KEYPADHASH(Smith)}) exten => 123,n,Set(lastname3=${KEYPADHASH(VanMeggelen)})

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

Directory()

LANGUAGE

Определяет язык канала

LANGUAGE()

Возвращает или устанавливает язык канала.

Эта функция признана устаревшей и была заменена функцией

CHANNEL(язык).

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

CHANNEL()

LEN

Вычисляет длину строки

LEN( строка)

Возвращает длину значения строка.

MATH

Выполняет математические вычисления

MATH(число1 операция число2[,тип_результата])

Выполняет математические функции. exten => 123,1,Set(value1=${MATH(1+2)})

MD5

Вычисляет хеш MD5

MD5(данные)

Вычисляет хеш MD5 параметра данные.

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

SHA1()

MUSICCLASS

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

MUSICCLASS()

Эта функция была признана устаревшей и заменена функцией

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

Возвращает или устанавливает класс музыки во время ожидания.

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

CHANNEL()

QUEUE_MEMBER_COUNT

Подсчитывает количество участников обработки очереди вызовов

QUEUE_MEMBER_COUNT(имяочереди)

Подсчитывает количество участников, отвечающих на вызовы очереди.

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

QUEUE_MEMBER_LIST()

QUEUE_MEMBER_LIST

Возвращает список участников обработки очереди вызовов

QUEUE_MEMBER_LIST(имяочереди)

Возвращает список интерфейсов в очереди.

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

QUEUE_MEMBER_COUNT()

QUEUE_WAITING_COUNT

Подсчитывает количество вызовов, ожидающих ответа

QUEUE_WAITING_COUNT(имяочереди)

Подсчитывает количество вызовов, стоящих в очереди и ожидающих ответа.

QUEUEAGENTCOUNT(имяочереди)

QUEUEAGENTCOUNT

Эта функция была признана устаревшей и заменена функцией

QUEUE_MEMBER_COUNT().

Подсчитывает количество агентов, отвечающих на вызовы очереди.

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

QUEUE_MEMBER_COUNT(), QUEUE_MEMBER_LIST()

QUOTE

Экранирует строку

QUOTE( строка)

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

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

RAND

Возвращает случайное число

RAND([минимум][|максимум])

Выбирает случайное число из заданного диапазона. Функция RAND() случайным образом выбирает целое число, находящееся в диапазоне между значениями минимум и максимум, включая и их самих, и возвращает его. Если значение минимум не задано, по умолчанию оно принимается равным 0. Если значение максимум не задано, по умолчанию оно принимается равным константе INT_MAX, которая равна 2147 483 647 на 32-разрядных платформах. Обратите внимание, что на 64-разрядных платформах значение INT_MAX немного больше.

REALTIME

Извлекает данные реального времени

REALJIME(семействошaблонполя[|знaчение[\рaзделитель1[рaзделитель2]]])

Функции для чтения/записи в режиме реального времени. Приведенный выше синтаксис используется для чтения, приведенный ниже – для записи:

REALTIME(семейство|шаблонполя|значение|поле)

REGEX

Проводит сравнение на основании регулярного выражения

REGEX(«регулярное выражение» данные)

Выполняет сопоставления на основании регулярного выражения.

SET

Задает значение переменной

SET(имяпеременной=[значение])

Функция SET присваивает значение переменной канала. Часто применяется для задания значений, содержащих символ |, поскольку этот символ обычно является разделителем при использовании с приложением Set().

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

Set()

SHA1

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

MD5()

SIP_HEADER

Извлекает заголовок SIP

SIP_HEADER(имя[,номер])

Возвращает SIP-заголовок.

SIPCHANINFO

Извлекает информацию о SIP -канале

SIPCHANINFO(элемент)

Возвращает заданный SIP-параметр текущего канала. Действительные значения параметра элемент: peerip

IP-адрес данного равноправного участника SIP.

recvip

IP-адрес источника сообщений данного равноправного участника SIP.

from

URI SIP из заголовка From:.

uri

URI SIP из заголовка Contact:.

useragent

Имя SIP-агента пользователя.

peername

Имя равноправного участника SIP.

t38passthrough

1, если T38 предлагается или активирован в данном канале, в противном случае 0.

SIPPEER

Извлекает информацию о равноправном участнике SIP

SIPPEEPl(имярaвнопрaвногоучaстник.a[| элемент])

Возвращает информацию о равноправном участнике SIP. Действительные значения параметра элемент: ip

mailbox

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

context

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

expire

Время следующего истечения регистрации.

dynamic

Это устройство зарегистрировано в Asterisk? (yes/no)

callerid_name

Заданное для этого равноправного участника имя Caller ID.

callerid_number

Заданный для этого равноправного участника номер Caller ID.

status

Статус данного равноправного участника (если qualify=yes).

regexten

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

limit

Ограничение на число одновременных вызовов для данного равноправного участника.

curcalls

Текущее количество вызовов. Доступно, только если для данного равноправного участника установлен предел на число одновременных вызовов.

language

Язык по умолчанию для данного равноправного участника.

accountcode

Код учетной записи данного равноправного участника.

useragent

Имя SIP-агента пользователя.

codecs

Заданные для этого равноправного участника кодеки.

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

IAXPEER()

SORT

Выполняет сортировку списка

SORT(ключ1:знaчение1[...][, к.лючИ:значениеИ])

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

SPEECH

Возвращает информацию о результатах работы по распознаванию речи

SPEECH(aргумент)

Возвращает информацию о результатах работы по распознаванию речи.

SPEECH_ENGINE

Изменяет свойство механизма обработки речи

SPEECH_ENGINE(имя)=значение)

Меняет конкретный атрибут механизма обработки речи.

SPEECH_GRAMMAR

Возвращает информацию о грамматике речи

SPEECH_GRAMMAR(результат номер)

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

SPEECH_SCORE

Возвращает параметр достоверности результата распознавания речи

SPEECH_SCORE( результат номер)

Возвращает параметр достоверности результата.

SPEECH_TEXT

Возвращает текст, распознанный системой распознавания речи

SPEECH_TEXT(результaт номер)

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

SPRINTF

Выполняет форматирование строки

SPRINJF(формaт|aргумент1[|...aргументN])

Форматирует переменную или ряд переменных соответственно формату строки.

Чаще всего функция SPRINTF используется для дополнения числа нулями до определенной длины:

; Возвращает 00123

exten => 123,1,Set(padfive=${SPRINTF(%05d,${EXTEN})}) Большинство опций форматирования, приведенных на странице руководства по sprintf(3), также реализованы в данной функции диалплана.

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

STRFTIME()

STAT

Возвращает атрибуты файловой системы

STAT( флаг, имяфайла)

Выполняет проверку заданного файла.

Параметр флаг может принимать одно из следующих значений:

e

Возвращает 1, если файл существует; 0 в противном случае.

s

Возвращает размер файла в байтах.

f

Возвращает 1, если по указанному пути находится обычный файл (не папка, символическая ссылка, сокет или устройство), или 0 в противном случае.

d

Возвращает 1, если по указанному пути находится папка (не обычный файл, символическая ссылка, сокет или устройство), или 0 в противном случае.

M

Возвращает время последнего изменения содержимого файла в секундах с начала отсчета времени.

C

Возвращает время последнего изменения индексного дескриптора (inode) файла в секундах с начала отсчета времени.

m

Возвращает режим доступа к файлу (как восьмеричное число).

STRFTIME

Форматирует дату и время

STRFTIME([нaчaлоотсчетaвремени][|[чaсовойпояс][|формaт]])

Возвращает текущую дату/время в заданном формате.

STRFTIME передает аргументы началоотсчетавремени и формат прямо в базовый вызов библиотеки strftime(3) языка С, поэтому для получения дополнительной информации обращайтесь к странице руководства. В качестве параметра часовойпояс должно использоваться имя папки/ файла из папки /usr/share/zoneinfo (например, America/Chicago или America/New_York).

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

STRPTIME()

STRPTIME

Преобразует строку в дату и время

STRPTIME(дaтaвремя|часовойпояс|формат)

Возвращает время в секундах с начала отсчета времени для произвольной строки даты/времени, структурированной в заданном формате. Назначение этой функции – преобразовать отформатированные дату/ время обратно в секунды с начала отсчета времени (с полночи по Гринвичу 1 января 1970 года), чтобы можно было производить с ними какие-то вычисления, или просто преобразовать их в какой-то другой формат даты/времени.

STRPTIME передает строку и формат непосредственно в базовый вызов библиотеки функции strptime(3) языка С, поэтому для получения дополнительной информации обращайтесь к странице руководства. В качестве параметра часовойпояс должно использоваться имя папки/файла из папки / usr/share/zoneinfo (например, America/ Chicago или America/ New_York).

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

STRFTIME()

TIMEOUT

Работает со значениями времени ожидания канала

TIMEOUT(типвремениожидания)

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

absolute

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

digit

вершен, и начинается обработка добавочного номера. Заметьте, что, если введен действительный добавочный номер, для начала его обработки нет необходимости дожидаться истечения времени ожидания, поэтому обычно по истечении указанного времени ожидания добавочный номер считается недействительным (и управление передается добавочному номеру i, или, если его не существует, вызов завершается). Время ожидания по умолчанию – 5 с.

response

Максимально допустимый промежуток времени после выполнения ряда приоритетов для канала, в течение которого пользователь может начать набор добавочного номера. Если пользователь не вводит добавочный номер в течение этого промежутка времени, управление передается добавочному номеру t, если он существует, в противном случае вызов завершается. Время ожидания по умолчанию – 10 с.

TXTCIDNAME

Выполняет DNS -поиск

TXTCIDNAME(номер)

Выполняет поиск вызывающего абонента с помощью DNS.

URIDECODE

Декодирует URI

URIDECODE(дaнные)

Декодирует строку из формата, предназначенного для безопасного использования в URI, согласно стандарту RFC 2396.

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

URIENCODE()

URIENCODE

Кодирует URI

URIENCODE(дaнные)

Кодирует строку для ее безопасного использования в URI согласно стандарту RFC 2396.

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

URIDECODE()

VMCOUNT

Подсчитывает количество сообщений голосовой почты

VMCOUNT(почтовыйящик[@контекст][|пaпкa])

Подсчитывает количество сообщений голосовой почты в заданном почтовом ящике.

F

Команды интерфейса Asterisk Manager

В данном приложении представлен список команд, которые можно выполнить с помощью интерфейса Asterisk Manager (AMI). Больше информации об AMI можно найти в главе 14.


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

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