Функция TIMEOUT()


Назначение:

Получить или установить значение таймаутов для канала.

Описание:

TIMEOUT(timeouttype)

Получить или установить значения некоторых таймаутов для канала. Типы таймаутов, с которыми можно производить действия, следующие:

  • absolute: Установка абсолютно максимального промежутка времени
отведенного для вызова. Установка этого значения в
0 - выключает эту возможность.
Обратите внимание, что таймаут отсчитывается с момента его установки,
уже прошедшее время с начала текущего вызова не учитывается
при подсчете таймаута.
Каждый раз, когда Вы устанавливаете новое значение,
предыдущее будет утеряно и отсчет таймаута начнется заново.

При возникновении этого таймаута, вызов будет переброшен
на стандартный екстеншен T, текущего контекста, где Вы, например,
можете звонящему абоненту проиграть объясняющее сообщение
(при этом вызываемый абонент не услышит это сообщение) .

  • digit: Максимальный промежуток времени между цифрами,
когда пользователь набирает номер екстеншена.
Когда истекает время, заданное в этом значении,
после того как пользователь начал набирать номер
екстеншена, этот номер считается полностью набранным
и начинается его обработка.
Обратите внимание, что если набран правильный екстеншен,
не будет производиться проверки истечения этого таймаута,
однако, обычно по истечении времени, заданного в этом таймауте,
набранный номер екстеншена будет считаться неправильным
(и управление будет передано к стандартному екстеншену 'i',
или если его не существует, то вызов будет завершен).
Значение этого таймаута, по умолчанию, равно 5 секундам.

  • response: Максимальный промежуток времени, предназначенный
для тех команд плана набора, которые ожидают какого-либо
ввода от пользователя. Если пользователь не ввел номер екстеншена
в течение этого времени, управление будет передано на екстеншен 't'?,
а если этот екстеншен не определен, то вызов будет завершен.
Значение этого таймаута, по умолчанию, равно 10 секундам.


Замечания

  • Эта функция может использоваться как для получения значений таймаутов, так и для их установки.
  • *CLI> show function TIMEOUT

Возвращаемые значения

Возвращает строку с результатом.

Примеры

exten => s,1,Set(foo=${TIMEOUT(digit)})

exten => s,1,Set(TIMEOUT(absolute)=5)

Ссылки по теме: