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

call-file и план прозвона

0

Имеется такой скрипт (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

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

спросил 2013-06-24 11:23:29 +0400

mention Gravatar mention flag of Russian Federation
486 42 2 12
http://localhost/

Comments

проблема с правами на 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 )редактировать

1 Ответ

1

у вас в call file написано - позвонит на номер, потом передать контроль на s@auto_dial.

в контеектсе auto_dial не описано что дальше делать для s. вам прийдется это описать.

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

ответил 2013-06-24 16:07:00 +0400

meral Gravatar meral flag of Ukraine
21228 23 18 169
http://pro-sip.net/

Ваш ответ

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-06-24 11:23:29 +0400

Просмотрен: 1,141 раз

Обновлен: Jun 24 '13

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