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

на главную

Жанры

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

NOTSURE (не уверен)

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

HANGUP (разрыв)

В процессе определения произошел разрыв соединения. Приложение AMD также указывает в переменной канала AMDCAUSE причину, на основании которой делается заключение, обозначенное в переменной AMDSTATUS. Для переменной AMDCAUSE будет задано одно из следующих значений: TOOLONG-общее_время

INITIALSILENCE-продолжительность_паузы-начальная_пауза HUMAN-продолжительность_паузы-пауза_после_приветствия MAXWORDS-количество_слов-максимальное_число_слов LONGGREETING-продолжительность_разговора-приветствие Все

параметры данного приложения помогают настроить его так, чтобы оно могло более эффективно оценивать разницу между человеком и автоответчиком. Если параметры не переданы в это приложение, Asterisk прочитает значения по умолчанию, описанные в amd.conf. К этим параметрам относятся:

initialSilence (начальная пауза)

Максимальная продолжительность паузы перед приветствием. Если это значение превышено, для переменной AMDSTATUS будет задано значение MACHINE.

greeting (приветствие)

Максимальная продолжительность приветствия. Если превышена, для переменной AMDSTATUS будет задано значение MACHINE.

afterGreetingSilence (пауза после приветствия)

Максимальная пауза после обнаружения приветствия. Если превышена, для переменной AMDSTATUS будет задано значение MACHINE.

totalAnalysisTime (общее время анализа)

Максимальное время, предоставляемое алгоритму для принятия решения о том, является ли вызываемая сторона человеком или автоответчиком. minimumWordLength (минимальная длина слова)

Если продолжительность разговора короче, чем minimumWordLength, это не будет считаться речью человека. betweenWordsSilence (пауза между словами)

Минимальная пауза после слова, чтобы считать следующий аудиосигнал новым словом.

maximumNumberOfWords (максимальное число слов)

Максимальное число слов в приветствии. Если это значение превышено, для переменной AMDSTATUS будет задано значение MACHINE.

silenceThreshold (пороговая продолжительность паузы) Чувствительность алгоритма при выявлении паузы.

; Используем алгоритм выявления автоответчика. Если ; вызываемая сторона является человеком, устанавливаем ; соединение с Бобом. В противном случае воспроизводим ; сообщение и разрываем соединение exten => 123,1,Answer exten => 123,n,AMD

exten => 123,n,GotoIf($["${AMDSTATUS}" = "HUMAN"]?human:machine) exten => 123,n(machine),WaitForSilence(2000) exten => 123,n,Playback(asterisk-friend) exten => 123,n,Hangup

exten => 123,n(human),Verbose(3, We've got a human on the line!)

exten => 123,n,Playback(transfer)

exten => 123,n,Dial(SIP/bob)

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

exten => 123,n,Hangup

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

WaitForSilence

Answer

Устанавливает соединение, если по каналу поступает вызов

Answer([задержка])

Обусловливает установление соединения Asterisk с каналом, если по нему в настоящий

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

Если нет веских оснований не делать этого, Answer рекомендуется использовать для канала перед вызовом всех остальных приложений. Существует несколько ключевых приложений, которые требуют, чтобы перед их выполнением было выполнено приложение Answer. В противном случае они могут работать некорректно: exten => 123,1,Answer(750) exten => 123,n,Playback(tt-weasels)

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

Hangup

AppendCDRUserField

Добавляет значение в поле пользователя записи Call Detail Record

AppendCDRUserField( .значение)

Добавляет значение в поле пользователя записи Call Detail Record (CDR). Поле пользователя часто используется для хранения произвольных данных о вызове, которые не подходят для всех остальных полей:

; задаем в поле пользователя значение 'abcde' exten => 123,1,SetCDRUserField(abcde) ; теперь добавлям в конец 'xyz' exten => 123,1,AppendCDRUserField(xyz)

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

exten => 123,1,Set(CDR(userfield)=${CDR(userfield)}12345)

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

SetCDRUserField, ForkCDR, NoCDR, ResetCDR, CDR

Authenticate

Требует от вызывающего абонента введения правильного пароля для продолжения выполнения

Authenticate(пaроль[,опции[, максимумсимволов]])

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

Если пароль начинается с символа /, он трактуется как файл, содержащий список действительных паролей (по одному в строке). Пароли также могут храниться в базе данных Asterisk (AstDB); см. опцию d ниже. Параметр максимумсимволов задает максимальное число символов, которое может ввести вызывающий абонент. Если этот параметр не задан, приложение будет принимать неограниченное число символов и станет ожидать от вызывающего абонента нажатия кнопки # после введения кода аутентификации.

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

a

Присваивает CDR-полю accountcode, а переменной канала ACCOUNTCODE - значение введенного пароля.

d

Трактует путь не как файл, а как ключ базы данных Asterisk, в которой следует искать пароль. При использовании ключа базы данных значением, ассоциированным с ключом, может быть все что угодно.

j

Поддерживает переход к приоритету n + 101 в случае неудачной аутентификации.

Поделиться:
Популярные книги

Корсар

Русич Антон
Вселенная EVE Online
Фантастика:
боевая фантастика
космическая фантастика
6.29
рейтинг книги
Корсар

Девяностые приближаются

Иванов Дмитрий
3. Девяностые
Фантастика:
попаданцы
альтернативная история
7.33
рейтинг книги
Девяностые приближаются

Жена фаворита королевы. Посмешище двора

Семина Дия
Фантастика:
фэнтези
5.00
рейтинг книги
Жена фаворита королевы. Посмешище двора

(не)Бальмануг. Дочь 2

Лашина Полина
8. Мир Десяти
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
(не)Бальмануг. Дочь 2

Буря империи

Сай Ярослав
6. Медорфенов
Фантастика:
аниме
фэнтези
фантастика: прочее
эпическая фантастика
5.00
рейтинг книги
Буря империи

Идеальный мир для Лекаря 13

Сапфир Олег
13. Лекарь
Фантастика:
фэнтези
юмористическое фэнтези
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 13

Книга пятая: Древний

Злобин Михаил
5. О чем молчат могилы
Фантастика:
фэнтези
городское фэнтези
мистика
7.68
рейтинг книги
Книга пятая: Древний

Зеркало силы

Кас Маркус
3. Артефактор
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Зеркало силы

Имя нам Легион. Том 5

Дорничев Дмитрий
5. Меж двух миров
Фантастика:
боевая фантастика
рпг
аниме
5.00
рейтинг книги
Имя нам Легион. Том 5

Аномальный наследник. Том 3

Тарс Элиан
2. Аномальный наследник
Фантастика:
фэнтези
7.74
рейтинг книги
Аномальный наследник. Том 3

Архил...? 4

Кожевников Павел
4. Архил...?
Фантастика:
фэнтези
попаданцы
альтернативная история
5.50
рейтинг книги
Архил...? 4

Хозяйка лавандовой долины

Скор Элен
2. Хозяйка своей судьбы
Любовные романы:
любовно-фантастические романы
6.25
рейтинг книги
Хозяйка лавандовой долины

Отмороженный 10.0

Гарцевич Евгений Александрович
10. Отмороженный
Фантастика:
боевая фантастика
рпг
5.00
рейтинг книги
Отмороженный 10.0

Ваше Сиятельство 2

Моури Эрли
2. Ваше Сиятельство
Фантастика:
фэнтези
альтернативная история
аниме
5.00
рейтинг книги
Ваше Сиятельство 2