Страница 1 из 1
При статусе InUse проигрывать сообщение и продолжать дозвон.
Добавлено: 25 ноя 2015, 16:19
baranov@r-tech.ru
Здравствуйте, уважаемые.
Имеются многоканальные телефоны. В случае звонка на номер, который разговаривает, слышны обычные гудки дозвона. То есть звонящий не знает о том, что вызываемый абонент разговаривает. Хотелось бы чтоб звонящий это узнавал, но не происходил hangup, а происходил последующий дозвон. Как у мобильных операторов "Абонент разговаривает, дождитесь пока он наговорится или перезвоните позже".
Ищу готовый рецепт, может кто уже сваял такое.
Заранее благодарю за любой совет.
Re: При статусе InUse проигрывать сообщение и продолжать доз
Добавлено: 25 ноя 2015, 16:38
Glukinho
Вы хотите, чтобы звонящий слышал "подождите, абонент разговаривает" или чтобы тот, кому звонят, слышал оповещение о втором звонке при идущем первом?
Re: При статусе InUse проигрывать сообщение и продолжать доз
Добавлено: 25 ноя 2015, 16:41
Glukinho
Для первого при звонке сначала проверяйте функцию DEVICE_STATE и на основании ее ответа включайте или не включайте MoH с записанной фразой "подождите, абонент занят, блаблабла".
Для второго включите на телефонах функцию Call Waiting. Хотя вряд ли она выключена, раз телефона многоканальные, как вы говорите.
Re: При статусе InUse проигрывать сообщение и продолжать доз
Добавлено: 25 ноя 2015, 16:53
ded
При таком варианте вся многоканальность - в мусорник. Если нет определения статуса (и проговаривания этой фразы), то человек на телефоне видит/слышит, что кто-то ещё звонит. И он может принять решение
- остаться на текущем разговоре, и перезвонить второму, когда закончит, нажав Неотвеченные => Набрать
или
- быстро сказать первому "минуточку, у меня вторая линия, сейчас вернусь", нажать Принять второй вызов, и сообщить "У меня другой человек на линии, что-то быстрое, или я перезвоню?" Первый в этот момент слушает приятную и спокойную музыку.
Re: При статусе InUse проигрывать сообщение и продолжать доз
Добавлено: 25 ноя 2015, 17:14
Glukinho
А как это все противоречит моим предложениям? Я ровно так и задумывал.
Re: При статусе InUse проигрывать сообщение и продолжать доз
Добавлено: 25 ноя 2015, 17:36
ded
Пример: первый звонок - подняли трубку, разговариваем.
Второй звонок - звонящий слышит "подождите, абонент занят, блаблабла" и бросает трубку, А МЫ ВИДИМ/НЕ ВИДИМ, цык на вторую линию - облом, уплыл.
Re: При статусе InUse проигрывать сообщение и продолжать доз
Добавлено: 25 ноя 2015, 17:41
baranov@r-tech.ru
Call-waiting убрать - плохо, я лишусь многоканальности и follow_me.
Glukinho, Я хочу чтоб тот кто звонит слышал предупреждение о том, что на него не кладут, а просто уже заняты.
Вот предполагаемый код:
Код: Выделить всё
include => echo-busy
[echo-busy]
exten => _XXX,1,Set(state=${DEVICE_STATE(SIP/${EXTEN})})
exten => _XXX,n,Set(number=${EXTEN})
exten => _XXX,n,GotoIf($["${state}" != "INUSE"]?6)
exten => _XXX,n,Background(busy1)
Как продолжить звонок?
Как вот продолжить звонок? Просто если dial, то вызывающий снова получит "занято", не надо ему этим надоедать)
Re: При статусе InUse проигрывать сообщение и продолжать доз
Добавлено: 25 ноя 2015, 17:48
Glukinho
Второй звонок - звонящий слышит "подождите, абонент занят, блаблабла" и бросает трубку,
Так телефон звонит, пока он слышит. И если Call Waiting включен - говорящий об этом знает по пискам в трубке. Главное, сообщение звонящему воспроизводить не через Playback, а через Dial(...,m(please-wait)) и иметь класс please-wait в musiconhold.conf.
Re: При статусе InUse проигрывать сообщение и продолжать доз
Добавлено: 25 ноя 2015, 18:02
ded
Это я понимаю, что телефон звонит. Но на принятие решения у того, кому позвонили всего несколько секунд, пока звучит фраза "подождите, абонент занят, блаблабла" и если звонящий бросает трубку, даже на пол-фразы, то у абонента нет времени на раздумывания, и он в таком случае будет чаще не успевать, чем успевать.
Re: При статусе InUse проигрывать сообщение и продолжать доз
Добавлено: 25 ноя 2015, 18:30
Glukinho
Ну это смотря как фразу составишь. Можно уговорить звонящего не бросать быстро)