First time here? Check out the FAQ!

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

Анонс вызывающему после поднятия трубки

0

Добрый день. Прошу помочь в следующей проблеме. Есть очередь:

[callcenter]
strategy
= ringall
member
=> SIP/4005
member
=> SIP/4008

Необходимо чтобы после поднятие трубки любым оператором из очереди, проигрывалось приветствие, например оператор Иван Иванов. При данном способе описания очереди правила для номеров из extensions.conf не работают. Пробовал сделать следующее описание очереди:

 [callcenter]
 strategy
= ringall
 member
=> local/4008@from-callcenter,1
 member
=> local/4005@from-callcenter,1

В данном случае используется контекст from-callcenter из конфига extensions.conf:

[from-callcenter]
exten
=> 4005,1,Answer()
exten
=> 4005,n,Wait(1)
exten
=> 4005,n,Set(LIMIT_PLAYAUDIO_CALLER=yes)
exten
=> 4005,n,Set(LIMIT_PLAYAUDIO_CALLEE=no)
exten
=> 4005,n,Set(LIMIT_CONNECT_FILE=/var/lib/asterisk/sounds/test1)
exten
=> 4005,n,Dial(SIP/${EXTEN},8,TtL(10000000000000)))
exten
=> 4005,n,Hangup()
exten
=> 4008,1,Answer()
exten
=> 4008,n,Wait(1)
exten
=> 4008,n,Set(LIMIT_PLAYAUDIO_CALLER=yes)
exten
=> 4008,n,Set(LIMIT_PLAYAUDIO_CALLEE=no)
exten
=> 4008,n,Set(LIMIT_CONNECT_FILE=/var/lib/asterisk/sounds/test2)
exten
=> 4008,n,Dial(SIP/${EXTEN},8,TtL(10000000000000)))
exten
=> 4008,n,Hangup()

При такой записи приветствие используется на номере 4005, 4008 сразу завершается. Т.е. вызов идет на один номер. Прошу подсказать, как реализовать сабж.

спросил Mar 23 '12

delpavel Gravatar delpavel
51 8 2 9

обновил Mar 23 '12

Comments

Кому приветствие нужно играть?

zzuz (Mar 23 '12)edit

5 Ответов

4

Answer уберите. Переменных LIMITPLAYAUDIOCALLER=yes и LIMITPLAYAUDIOCALLEE=no и так имеют данные значения по умолчанию. Зачем повторно их присваивать?

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

ответил Mar 23 '12

Master135 Gravatar Master135
431 1 3 10

Comments

Спасибо, логично что Answer лишний. Теперь работает.

delpavel (Mar 26 '12)edit
0

Анонс звонящему играется простым проигрыванием через Playback.

Анонс оператору играется через определение announceoverride в

Queue(queuename[,options[,URL][,announceoverride][,timeout][,AGI][,macro][,gosub][,rule])
ссылка удалить спам редактировать

ответил Mar 23 '12

zzuz Gravatar zzuz flag of Russian Federation
7174 2 6 75
http://line24.ru/

обновил Mar 23 '12

0

Я так понял, тому кто звонит. Если во FreePBX - то в экстеншене оператора нажимаете Add Follow Me, а там задаёте звуковой файл приветствия. Тогда когда на этот экстеншн поступает вызов - сначала вызывающему играется приветствие, а потом идёт вызов у оператора

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

ответил Mar 23 '12

asdev Gravatar asdev flag of Ukraine
244 21 6 15

обновил Mar 23 '12

Comments

Нет таких контекстов во Freepbx , как "[from-callcenter]" , что уже говорит о том, что сервер без фреймворка .

zzuz (Mar 23 '12)edit
0

Может проще обязать операторов представляться в начале разговора? Это в принципе нормальная практика и хороший тон.

Но если уж все равно нужна техническая реализация, то Playback перед Dial вам не поможет. Даже с опцией noanswer. Т.к. сообщение будет проигрываться при каждом вызове оператора из очереди.

Нужно из контекста from-callcenter вызывать Dial с опцией:

G([[context^]exten^]priority): If the call is answered, transfer
the calling party to the specified
<priority> and the called party to
the specified  
<priority> plus one.
NOTE
: You cannot use any additional action post answer options in
conjunction
with this option.

И далее их объединять через MeetMe() или Bridge()...

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

ответил Mar 23 '12

asteriskguru Gravatar asteriskguru
1160 4 5 21
http://www.asteriskguru.r...

Comments

1

Вот , наконец-то я нашел того, кто одевает трусы через голову!)))

zzuz (Mar 23 '12)edit

Есть, не спорить!)

zzuz (Mar 23 '12)edit

а что такое этот самый DCAP?

meral (Mar 23 '12)edit

Хм, пожалуй через опцию L тоже можно и так будет проще. Облажался мой кунгфу :)

asteriskguru (Mar 24 '12)edit

ну а что такое DCAP!!!! ps это кстати не литни отвечал.

meral (Mar 24 '12)edit

Бугага))))

zzuz (Mar 28 '12)edit
0

если вы решили делать через L(что возиожно в приницпе), то делать надо так

ставить

LIMIT_WARNING_FILE - File to play as warning if 'y' is defined. If LIMIT_WARNING_FILE is not defined, then the default behaviour is to announce ("You have [XX minutes] YY seconds").

и вот так

L(36000000:25999000)

тоесть ограничение 10 часов. за 9 часов 59 минут 59 секунда до конца предупредить(тоесть через секунду после старта).

да,так работает. почему так? я не понял в коде) багов вроде нету.

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

ответил Mar 23 '12

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

обновил Mar 23 '12

Comments

1

LIMITCONNECTFILE вполне себе работает, про Answer ( из за которого у топикстартера звонок не идет второму абоненту ) внизу написали уже.

g613 (Mar 23 '12)edit

Ваш ответ

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

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

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

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

Статистика

Задан: Mar 23 '12

Просмотрен: 2,563 раз

Обновлен: Mar 24 '12

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