Asterisk. Команда PrivacyManager.

PrivacyManager() - Требует от вызывающего абонента ввода номера телефона, если не получена информация Caller ID.

PrivacyManager([maxretries[,minlength[,опции]]])

Если Caller ID (ID звонящего) не получен, это приложение отвечает каналу и просит вызывающего абонента ввести его номер телефона. По умолчанию абоненту дается три попытки.

PrivacyManager() задает для переменной канала PRIVACYMGRSTATUS значение SUCCESS или FAILURE. Если Caller ID поступает по каналу, PrivacyManager() не выполняет никаких действий.
Если для параметра опции задано значение j и вызывающий абонент не смог ввести свой номер Caller ID, обработка вызова продолжится в приоритете n + 101 (где n – текущий приоритет).
Конфигурационный файл privacy.conf меняет функциональность приложения PrivacyManger(). Он содержит следующие две строки:

  • maxretries (максимум попыток) - Задает максимальное число попыток, которое может сделать вызывающий абонент для ввода номера Caller ID (по умолчанию 3).
  • minlength (минимальная длина) - Задает минимально допустимое количество символов во вводимом номере Caller ID (по умолчанию 10).

Настройки maxretries и minlength также могут быть переданы в приложение в качестве параметров. Параметры, передаваемые в приложение, переопределяют любые настройки в файле privacy.conf.

Пример:

exten => 123,1,Answer()
exten => 123,n,PrivacyManager()
exten => 123,n,GotoIf($["${PRIVACYMGRSTATUS}" = "FAILURE"]?bad)
exten => 123,n,Dial(Duhdi/1)
exten => 123,n,Hangup()
exten => 123,n(bad),Playback(im-sorry)
exten => 123,n,Playback(vm-goodbye)
exten => 123,n,Hangup()

См. также: Zapateller()