Kniga-Online.club
» » » » Asterisk™: будущее телефонии Второе издание - Меггелен Джим Ван

Asterisk™: будущее телефонии Второе издание - Меггелен Джим Ван

Читать бесплатно Asterisk™: будущее телефонии Второе издание - Меггелен Джим Ван. Жанр: Интернет год 2004. Так же читаем полные версии (весь текст) онлайн без регистрации и SMS на сайте kniga-online.club или прочесть краткое содержание, предисловие (аннотацию), описание и ознакомиться с отзывами (комментариями) о произведении.
Перейти на страницу:

Эта функция проверяет, является ли заданный в аргументе домен локальным 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(CHANNEL,-,1)})

имяпеременной - это имя обрабатываемой переменной. Обратите внимание, что функция 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-канале

Перейти на страницу:

Меггелен Джим Ван читать все книги автора по порядку

Меггелен Джим Ван - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки kniga-online.club.


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

Отзывы читателей о книге Asterisk™: будущее телефонии Второе издание, автор: Меггелен Джим Ван. Читайте комментарии и мнения людей о произведении.


Уважаемые читатели и просто посетители нашей библиотеки! Просим Вас придерживаться определенных правил при комментировании литературных произведений.

  • 1. Просьба отказаться от дискриминационных высказываний. Мы защищаем право наших читателей свободно выражать свою точку зрения. Вместе с тем мы не терпим агрессии. На сайте запрещено оставлять комментарий, который содержит унизительные высказывания или призывы к насилию по отношению к отдельным лицам или группам людей на основании их расы, этнического происхождения, вероисповедания, недееспособности, пола, возраста, статуса ветерана, касты или сексуальной ориентации.
  • 2. Просьба отказаться от оскорблений, угроз и запугиваний.
  • 3. Просьба отказаться от нецензурной лексики.
  • 4. Просьба вести себя максимально корректно как по отношению к авторам, так и по отношению к другим читателям и их комментариям.

Надеемся на Ваше понимание и благоразумие. С уважением, администратор kniga-online.


Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*