Страница 1 из 3
доступ на международную линию через пароль
Добавлено: 11 янв 2016, 17:00
bagrintsev
Вечер добрый, добрые гуру.
Хочу сделать доступ на междугороднюю линию не для всех, а только для избранных. Ибо нефиг.
Нарисовал такой вот тестовый эктеншен:
exten => 321,1,Answer()
exten => 321,n,Authenticate(1234)
exten => 321,n,Playback(privacy-prompt)
... здесь абонент уже проверенный
exten => 321,n,Hangup()
Набираешь 321, девочка просит набрать пароль, набираешь 1234# и собственно можно уже пускать дальше - набирать международные коды.
И тут затык, я не понимаю, что нужно написать, чтобы система стала ждать от абонента цифры, а потом произвела вызов.
Подскажите плз, если знаете куда копать.
Re: доступ на международную линию через пароль
Добавлено: 11 янв 2016, 17:06
ded
Не надо усложнять.
Если хотите дать доступ к международным кодам только абоненту 321, то
exten => _801ZX./321,1,Dial(SIP/operator/${EXTEN})
можно и с маской
exten => _801ZX./_32[12,4-79],1,Dial(SIP/operator/${EXTEN}) ; доступ только для абонентов 321, 322, 324-327, и 329
Re: доступ на международную линию через пароль
Добавлено: 11 янв 2016, 17:09
Glukinho
Не надо усложнять.
exten => +801ZX./_32[12,4-79],1,Dial(SIP/operator/${EXTEN}) ; доступ только для абонентов 321, 322, 324-327, и 329
Автору,
core show application Read
core show application DISA
Re: доступ на международную линию через пароль
Добавлено: 11 янв 2016, 17:49
Aven
Код: Выделить всё
same => n,Read(PIN_READ)
same => n,GotoIf(${PIN_READ} == 1234]?pin_ok:pin_bad)
Re: доступ на международную линию через пароль
Добавлено: 11 янв 2016, 18:36
ded
Доступ через пароль (пин) - это нажатие лишних кнопок + пароль в голове, это всё не нужно.
Re: доступ на международную линию через пароль
Добавлено: 11 янв 2016, 23:34
Glukinho
Все зависит от условий. Зато можно позвонить с любого телефона без перенастройки.
Re: доступ на международную линию через пароль
Добавлено: 11 янв 2016, 23:46
ded
Зато если Васечкин шепнёт PIN Петечкину, то пойдёт гулять по конторе секрет Полишинеля, эффективность = 0.
Re: доступ на международную линию через пароль
Добавлено: 12 янв 2016, 01:31
Samael28
Если уж хочется через пароль, то с DISA упражняться - лишнее. Просто по маске типа
Код: Выделить всё
exten => _00.,1,Answer
same => n,Authenticate(4321#)
same => n,Dial(SIP/LongDistanceOper/${EXTEN})
P.S. A какое тогда решение лучше? Если привязывать к номеру телефона, то тоже никто не гарантирует, что с телефона Пети Вася не позвонит любимой бабушке на Кубу.
Re: доступ на международную линию через пароль
Добавлено: 12 янв 2016, 02:56
whoim
Объединить оба решения - каждому юзеру свой пароль.
Данные держать в mysql или текстовом файле, скриптом генерить кусок диаплана в отдельном файле, который инклайдить в основной. Или один контекст на всех, с "доставанием" пароля из mysql в переменную, которую и проверять.
Есть и другие варианты.
Re: доступ на международную линию через пароль
Добавлено: 12 янв 2016, 03:07
ded
каждому юзеру свой генератор разовых pass codes, типа брелка Digipass.
При указании своего личного PIN система запрашивает разовый код доступа, который надо сгенерировать на своём Digipass.
А доступ в него защищён сертификатом RSA c обменом ключей по схеме Curve25519.
Для избранных. Ибо нефиг.
[sardonic smile]