Задать вопрос
@ADarkin

Asterisk — как писать звонки одного абонента на один номер?

Поставлена задача - писать исходящие звонки одного абонента на один конкретный номер - все остальные не интересуют (вопрос "политический", фиксация докладов). Технически вроде понятно - вынести его из общего [internal], где разруливание всех исходящих, в отдельный контекст , сделать
[dispetcer]
;exten => _123,1,Set(fname=${STRFTIME(${EPOCH},,%Y%m%d%H%M)}-${CALLERID(number)}-${EXTEN})
;exten => _123,n,MixMonitor(/var/spool/asterisk/monitor/${fname}.wav)
;exten => _123,n,,Dial(SIP/${EXTEN},

Но вот как ему задать, чтобы записывался исходящий только на один номер, а остальные исходящие уходили в общий, как все?
  • Вопрос задан
  • 93 просмотра
Подписаться 2 Средний Комментировать
Решения вопроса 1
@ADarkin Автор вопроса
Итак, с помощью коллективного разума и гугла разобрался, может, кому еще пригодится:
стоит задача избирательно записывать звонки абонента 123, только абоненту 111.

1. в sip.conf вызывающий номер 123 переносится в свой, отдельный контекст (в данном случае [dispetcher] )
;Disp
[123](public)
regexten=123
secret=********
callerid="123" <Dispetcher>
callgroup=1
pickupgroup=1
<b>context=dispetcher</b>
;


2. в extension.conf есть общий контекст [internal] для всех звонков, как внутренних, так и через транки на внешние линии (город, мобильные..). поэтому добавляем отдельный контекст:
[dispethcer]
exten => _X.,1,Noop
same => 2,GotoIf($["${EXTEN}" = "111"]?3:5)
same => 3,Set(fname=${STRFTIME(${EPOCH},,%Y%m%d%H%M)}-${CALLERID(number)}-${EXTEN})
same => 4,MixMonitor(/var/spool/asterisk/monitor/${fname}.wav)
same => 5(go-dial),Goto(internal,${EXTEN},1)
same => 6,HangUp()
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы