Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

DISA проверка CallerID

0

Здравствуйте, меня интересует такой вопрос.

Есть DISA, есть список callerid с passcode. Возможно ли в DISA, проверять входящий звонок по callerid, и автоматически подставлять passcode?

exten => _000000,1,Answer
exten => _000000,2,Authenticate(pin)
exten => _000000,3,DISA(passcode,context)

Или оно так не умеет и необходимо каждый раз набирать этот passcode на тел. аппарате?

удалить закрыть спам изменить тег редактировать

спросил 2013-12-11 15:53:38 +0400

Vlvoi Gravatar Vlvoi
11 5 3

обновил 2013-12-11 16:07:55 +0400

Comments

Проверку CallerID, как я понял, можно сделать при помощи GotoIf(), а вот как потом автоматически сравнить в файле этот CallerID с passcode ему принадлежащем и подставить этот passcode, пока что непонятно.

Vlvoi ( 2013-12-11 16:47:44 +0400 )редактировать

использовать базу. если вы против базы - использовать через odbc базы в файлах. или AGI

meral ( 2013-12-11 19:54:14 +0400 )редактировать

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

Vlvoi ( 2013-12-12 15:54:44 +0400 )редактировать

3 Ответа

1

вообщето если в чемто несилен,надо нанимать консультанта. но вообещ както так.

extconfig.conf

disa_cids=>mysql,general

resconfigmysql.conf - вписать доступ к базе.

в базу выложить табличку

CREATE TABLE disa_cids 
( id serial,
 cid varchar(20) not null unique,
 accountcode varchar(20),
 context varchar(20) default 'disaout'
);

extensions.conf

[disa_cid_base]

exten =>s,1,Noop(disa cid check CID=${CALLERID(num)})
;REALTIME_FIELD(family,fieldmatch,matchvalue,fieldname)
exten =>s,n,Set(account=${REALTIME_FIELD(disa_cids,cid,${CALLERID(num)},accountcode)
exten =>s,n,GotoIF($[ "${account}" == "" ]?disa_simple,1)
exten =>s,n,Set(context=${REALTIME_FIELD(disa_cids,cid,${CALLERID(num)},context)
exten =>s,n,Set(CDR(accountcode)=${account}); записываем аккаунт для биллинга
exten =>s,n,Disa(no-password,${context});запрашиваем номер(можно через Read/dial)

exten => disa_simple,1,Noop; тут пишите что делать если не сошлось по cid
ссылка удалить спам редактировать

ответил 2013-12-13 01:52:16 +0400

meral Gravatar meral flag of Ukraine
23347 24 20 177
http://pro-sip.net/

обновил 2013-12-13 01:53:34 +0400

0

А еще есть старая добрая пауза при наборе (P).

Работает со всеми сервисами где необходимо проходить аутентификацию.

ссылка удалить спам редактировать

ответил 2013-12-13 05:13:52 +0400

bolshoy_plohish Gravatar bolshoy_plohish
1388 25 20 38

Comments

А вообще к дизе доступ лучше давать через Callback.

В ffreepbx уже все готовое для этого есть.

bolshoy_plohish ( 2013-12-13 05:19:55 +0400 )редактировать
0

приложение DISA вообще не имеет смысла, хз зачем его вообще сделали. Его функции легко реализуются диалпланом:

[first]
;эти без пароля
exten => 000000/9177514345,1,goto(second,s,1)
;эти с паролем
exten => 000000,1,Answer
exten => 000000,n,BackGround(exterPin)
exten => 000000,n,WaitExten(10)
;тут пароли
exten => 123,1,goto(second,s,1)
exten => 334,1,goto(second,s,1)
exten => 219,1,goto(second,s,1)

[second]
exten => s,1,BackGround(ExterNumber)
exten => s,n,WaitExten(10)
exten => _XXX,1,GoTo(From-internal,${EXTEN},1)
ссылка удалить спам редактировать

ответил 2013-12-11 16:22:24 +0400

switch Gravatar switch
8334 11 7 92
http://lynks.ru/

Ваш ответ

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[скрыть предварительный просмотр]

Закладки и информация

Добавить закладку

подписаться на rss ленту новостей

Статистика

Задан: 2013-12-11 15:53:38 +0400

Просмотрен: 519 раз

Обновлен: Dec 13 '13

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.