Имеется такой скрипт (auto_dial.pl) для генерации call-файла:
#!/usr/bin/perl $file = "/tmp/$ARGV[0].callfile"; $phone = $ARGV[0]; open(FILE, "> $file"); print FILE "Channel: SIP/".$phone."\@111.222.333.444\n"; print FILE "CallerID: 72222222222\n"; print FILE "MaxRetries: 2\n"; print FILE "RetryTime: 300\n"; print FILE "WaitTime: 60\n"; print FILE "Context: auto_dial\n"; print FILE "Extension: s\n"; print FILE "Priority: 1\n"; close(FILE);
так же имеется скрипт для прозвона такого типа(autod.sh):
./auto_dial.pl 2222222222 mv /tmp/*.callfile /var/spool/asterisk/outgoing/ ./auto_dial.pl 82222222222 mv /tmp/*.callfile /var/spool/asterisk/outgoing/ ./auto_dial.pl 72222222222 mv /tmp/*.callfile /var/spool/asterisk/outgoing/ ./auto_dial.pl +72222222222 mv /tmp/*.callfile /var/spool/asterisk/outgoing/
и план набора такой для всего этого:
[auto_dial] exten = _7XXXXXXXXXX,1,NoOp(${CALLERID(num)}) same = n,Set(CALLERID(all)=Bugaga <71234567890>) same = n,Macro(recordmeggorod,${EXTEN}) same = n,Dial(SIP/${EXTEN}@111.222.333.444) same = n,Background(/tmp/tmp) same = n,Hangup() exten = _8XXXXXXXXXX,1,NoOp(${CALLERID(num)}) same = n,Set(CALLERIDNEW1=${EXTEN:1}) same = n,Set(CALLERIDNEW2=7${CALLERIDNEW1}) same = n,Set(CALLERID(all)=Bugaga <71234567890>) same = n,Macro(recordmeggorod,${EXTEN}) same = n,Dial(SIP/${CALLERIDNEW2}@111.222.333.444) same = n,Background(/tmp/tmp) same = n,Hangup() exten = _+7XXXXXXXXXX,1,NoOp(${CALLERID(num)}) same = n,Set(CALLERIDNEW=${EXTEN:1}) same = n,Set(CALLERID(all)=Bugaga <71234567890>) same = n,Macro(recordmeggorod,${EXTEN}) same = n,Dial(SIP/${CALLERIDNEW}@111.222.333.444) same = n,Background(/tmp/tmp) same = n,Hangup() exten = _XXXXXXXXXXX,1,NoOp(${CALLERID(num)}) same = n,Macro(recordmeggorod,${EXTEN}) same = n,Set(CALLERID(all)=Bugaga <71234567890>) same = n,Dial(SIP/${EXTEN}@111.222.333.444) same = n,Background(/tmp/tmp) same = n,Hangup() exten = _XXXXXXXXXX,1,NoOp(${CALLERID(num)}) same = n,Set(CALLERIDNEW1=7${CALLERID(num)}) same = n,Set(CALLERID(all)=Bugaga <71234567890>) same = n,Macro(recordmeggorod,${EXTEN}) same = n,Dial(SIP/${CALLERIDNEW1}@111.222.333.444) same = n,Background(/tmp/tmp) same = n,Hangup()
Результат следующий при попытке исполнения файла autod.sh выдаёт в логе следующее, звонит только некоторым и ложит трубку без воспроизведения:
WARNING[26427]: pbx_spool.c:278 safe_append: Unable to set utime on /var/spool/asterisk/outgoing/2222222222.callfile: Operation not permitted -- Attempting call on SIP/2222222222@111.222.333.444 for s@auto_dial:1 (Retry 1) == Using SIP RTP CoS mark 5 WARNING[26427]: pbx_spool.c:278 safe_append: Unable to set utime on /var/spool/asterisk/outgoing/82222222222.callfile: Operation not permitted -- Attempting call on SIP/82222222222@111.222.333.444 for s@auto_dial:1 (Retry 1) == Using SIP RTP CoS mark 5
Почему так может происходить, что нужно сделать чтобы исправить ситуацию? Звонки должны уходить в формате 72222222222@111.222.333.444
у вас в call file написано - позвонит на номер, потом передать контроль на s@auto_dial.
в контеектсе auto_dial не описано что дальше делать для s. вам прийдется это описать.
Задан: 2013-06-24 11:23:29 +0400
Просмотрен: 2,799 раз
Обновлен: Jun 24 '13
Как передать сам контекст в extension.conf через call файл?
.call файл и последовательность набора [закрыт]
call file и донабор внутреннего номер
Не добавляются записи CDR. Использую CALL файлы, канал: LOCAL
Автодозвон в телефонах Linksys SPA (9xx, 5xx)
call файл вызов через datacard
call файл выбор транка автоматически
Помогите пожалуйста разобраться с CALL файлами.
FreePBX 2.9.0.1 (Asterisk 1.8.4.3) и транзитный Call Forward на внешние номера.
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.
проблема с правами на call файлы - Астер не может поменять дату у файла
octopas ( 2013-06-24 11:41:02 +0400 )редактироватьправа поменял, ситуация аналогичная: NOTICE[14773]: pbxspool.c:353 attemptthread: Call failed to go through, reason (1) Hangup WARNING[14773]: pbxspool.c:278 safeappend: Unable to set utime on /var/spool/asterisk/outgoing/1234567890.callfile: Operation not permitted > Channel SIP/111.222.333.444-00005ed3 was answered. == Starting SIP/111.222.333.444-00005ed3 at autodial,s,1 failed so falling back to exten 's' == Starting SIP/111.222.333.444-00005ed3 at autodial,s,1 still failed so falling back to context 'default'
mention ( 2013-06-24 14:26:20 +0400 )редактироватьу вас экстеншна "s" в контексте auto_dial нет - вот вам об этом и пишет.
octopas ( 2013-06-24 15:13:24 +0400 )редактироватьесть варианты как сделать, ведь он должен по-идее выбирать в зависимости от того какие цифры подставили и поэтому начальный экстеншен может быть разный?
mention ( 2013-06-24 15:20:37 +0400 )редактировать