и не будет реализовано. ибо от него глюков НАМНОГО больше
meral ( 2013-04-25 08:56:56 +0400 )редактироватьЕсть задача. При входящем звонке нажать на экране кнопку Ответить, и в этот момент телефон снимает трубку(громкая связь или гарнитура).
Как я понял SIPAddHeader можно устанавливать только до того как телефон начал звонить.
При оригинации звонка, мы просто устанавливаем хидер через AMI и все работает, но при входящем не понятно как сделать. Пока предполагаю переводить вызов в контекст примерно такого содержания:
exten => _*XXX*,n,SIPAddHeader(“Call-Info:; answer-after=0″)
exten => _*XXX*,n,Dial(SIP/${SIPACCOUNT})
Может есть более красивые решения?
upd. С данным контекстом неприятная проблема. Все дальнейшие переводы с SIP/${SIPACCOUNT} на другие телефоны вызывают автоподъем и на них. Попробовал сделать так:
exten => _*XXX*,n,SIPAddHeader(Call-Info:\;answer-after=0)
exten => _*XXX*,n,Dial(SIP/${SIPACCOUNT},20,tTcM(miko-clear-auto-answer))
[macro-miko-clear-auto-answer]
exten => s,1,SIPRemoveHeader()
В verbose вижу что SIPAddHeader устанавливается для изначального канала, а SIPRemoveHeader для канала SIP/${SIPACCOUNT}, но все дальнейшие переадресации вызывают автоподъем у коллег на телефонах. Проблема с безусловным переводом.
Правильно полагаете, делаем так же. В SIP протоколе иного не предусмотрено.
Делаю точно также только вместо Dial() у меня Queue(), ставлю стратегию Least Recent, у агентов автоматически происходит ответ на звонок... с 55% отвеченых вызовов, колцентр теперь имеет средний 97%.
В SIP предусмотрен Re-INVITE, но в мейлинг-листах находится, что оно не реализовано в channel_sip
Поэтому можно заводить новый вопрос "Как сделать Re-INVITE из диалплана"
Т.е. если найти способ сделать re-invite из диалплна или AMI, то можно было б проверить сабж..
и не будет реализовано. ибо от него глюков НАМНОГО больше
meral ( 2013-04-25 08:56:56 +0400 )редактироватьЗадан: 2013-04-24 10:20:08 +0400
Просмотрен: 743 раз
Обновлен: Sep 12 '13
Можно ли снять трубку на хардфоне после Dial программно?(часть 2)
asterisk ami blind transfer to queue
Исходящие звонки на разных операторов.
Задача: звонок с мобильника клиенту через Asterisk используя AMI
CTI: AMI events или CEL, queue_log?
Программа клиента для работы через AMI Proxy
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.
Нормальное вроде решение, может я тоже "красивше" не видел.. Домофон?
viktorkho ( 2013-04-24 10:25:07 +0400 )редактироватьНет мы решения для интеграции с 1С делаем, и нам нужно там во всплывающем банере сделать ответ кнопкой. :)
jorikfon ( 2013-04-24 10:39:57 +0400 )редактироватьА телефон должен звонить до нажатия кнопки?
Sarumjnauch ( 2013-04-25 01:01:27 +0400 )редактироватьможно прекратить звонок и сделать новый с АА. вообще очень сильно зависит от телефона, тоесть для всех не получится.
meral ( 2013-04-25 08:58:34 +0400 )редактироватьСоздайте новую тему, тут ответы нельзя добавлять
switch ( 2013-09-12 16:57:33 +0400 )редактироватьПопробуйте задать __TRANSFER_CONTEXT, и в нем указать SIPRemoveHeader().
Sarumjnauch ( 2013-09-12 16:57:56 +0400 )редактироватьhttp://asterisk-support.ru/question/48384/mozhno-li-sniat-trubku-na-khardfone-posle-dial/
jorikfon ( 2013-09-12 17:50:05 +0400 )редактировать