Гарантированное время звонка и обрыв вызова
Сервисы Общения › Форумы › Телефония › Звонки на мобильные и городские (публичные линии) › Гарантированное время звонка и обрыв вызова
- В этой теме 16 ответов, 8 участников, последнее обновление 7 лет, 3 месяца назад сделано farcann.
-
АвторСообщения
-
07.08.2017 в 21:36 #14493DemonУчастник
Пару лет назад в сервисе был некоторый функционал, который заключался в следующем…
Если при исходящем звонке все линии были заняты, то искалась линия, по которой общаются всех дольше и время разговора превышает гарантированное время.
Данный разговор насильно прерывался и линия отдавалась желающему позвонить.
Нехорошо, конечно, когда разговор прерывают. Но ведь и тот, кто желает позвонить.. тоже хочет позвонить. Гарантированное время обычно равняется минут 5, что согласно статистике среднего времени звонка более, чем достаточно.Данный функционал был “утерян” по двум причинам:
– резко увеличилось (тогда) число линий и занятость линий стала очень редким явлением
– на это наложилась очередная переделка логики обработки исходящих вызовов и функционал насильственного завершения вызова стал… плохо стал вписываться в эту логику.Я задумался о возврате этого функционала.
Согласно статистике сейчас практически нет (пока нет) массовой проблемы с занятостью линий. Но…Но осталась вторая проблема: несовместимость логики действий исходящих звонков и завершения вызовов. Вот об этом и хотелось бы поговорить после такого длительного введения 🙂
Сразу скажу спасибо тем, кто хотя бы дочитал до этого места:)Ранее в списке действий исходящих были только внешние учётные записи. Алгоритм, пройдясь по списку и определив занятость всех, завершал один вызов и… начинал обработку заново.
Сейчас же в списке действий может быть сложная логика: внешние учётные записи с разными приоритетами, включение разных направлений исходящих, проигрывание мелодий, оповещение контактов, вызов http… и многое другое.
Вопрос: а когда же мне принимать решение что всё… линии все заняты и надо уже что-то оборвать? Куда после этого переходить?
Ведь вряд ли понравится что оповещение на контакт придёт дважды из-за того, что алгоритм вернулся на исходную точку?Окей. Есть такое правило в разработке: если алгоритм не может принять решение самостоятельно, то это должен сделать человек (настройщик).
Т.е. вводим новое действие (аналогичное действию сообщения статуса звонка голосом):
а) которое имеет смысл поставить в позицию после списка внешних учётных записей или включения направлений
б) выполняться которое будет только если текущий статус звонка “все линии заняты”
в) после отключения линии (если вообще найдется что отключить) оно будет переходить на приоритет (порядок), указанный в этом действии. т.е. сам настройщик решает “куда же прыгать после”.
г) анализировать для отключения оно будет именно те линии, которые были проверены после указанного в пункте “в” приоритета.
д) срабатывать будет только один раз (чтобы не зациклиться)Когда я начал писать этот текст я ещё не знал возможного решения. Думал: поделюсь проблемой и… Вот что значит правильно сформулированный вопрос 🙂
Сейчас это кажется решением. Но при реализации узнаю много нового, всплывут какие-нибудь подводные камни 🙂Что думаете об этом? 🙂
07.08.2017 в 21:41 #14494DemonУчастникДля истории.
Было бы неплохо не просто обрывать вызов, а выдавать в канал голосовую фразу “Всё, приехали. Поезд дальше не идёт. Просьба освободить вагоны”.
Вот только кому выдавать это?
Хорошо бы обеим сторонам разговора. Но это значит что задержится исходящий вызов. Надо ж будет ждать пока фраза будет произнесена.
Можно выдать только “локальному” пользователю (чаще всего именно он звонит – исходящий). Но это ещё и техническая задача: определить есть ли локальный канал и какой из двух…
Обдумаем.07.08.2017 в 22:32 #14495РоманУчастникРезать разговор на полуслове совсем не красиво. Может сделать динамические лимиты на длительность звонка по разным линиям чтобы один человек не мог выговорить подавляющее большинство трафика? Тогда страждущий №2 будет знать что буквально через несколько минут сделает попытку и звонок произойдет.
Ну или так: разговор не прерывается сразу, а робот говорит второму: подожжите, через 30 сек линия будет ваша. В этот же момент первый слышит “пора и честь знать, через 30 сек будет досвидос” чтобы он как-то предупредил своего собеседника о предстоящем обрыве.07.08.2017 в 22:39 #14496РоманУчастникА еще даже в нынешней ситуации можно второму (без разрыва разговора у первого) давать инфо типа “до освобождения линии осталось не более ХХ сек, вы – первый в очереди на звонок”, ведь исходя из имеющихся лимитов это довольно просто посчитать. И давать второму в ближайшие пару минут после разговора приоритет на очередь к этой линии. Наверно технически это реализуемо…
08.08.2017 в 00:09 #14497Дмитрий110УчастникДрузья, я не думаю что если кому то ну очень срочно надо будет связаться то он будет звонить через сип телефон, позвонит по старинке, а если разговор не срочный то человек я думаю все прекрасно понимает и подождет пока линия освободится, тем более такой большой проблемы с этим нет
08.08.2017 в 14:12 #14498SaymerУчастникВсё же, телефону более 100 лет.
По старинке это как? По медному кабелю?
Сейчас в России, в ТфОП сетях ни где не передается голос по меди. Так что по старинке позвонить всё равно не выйдет.
Даже мелкие, крупные и очень крупные Операторы гоняют голос сейчас по оптическому волокну, а многие и вообще через SIP.
В своих закрытых сетях, но тем не менее.08.08.2017 в 18:06 #14499Дмитрий110УчастникИмелось в виду , через своего сотового оператора
09.08.2017 в 00:12 #14500NobodyУчастникДрузья, я не думаю что если кому то ну очень срочно надо будет связаться то он будет звонить через сип телефон, позвонит по старинке, а если разговор не срочный то человек я думаю все прекрасно понимает и подождет пока линия освободится, тем более такой большой проблемы с этим нет
Пример:
Звонит человек из другого региона.
Сбрасываешь и презваниваешь.
А не звонится блин.
Ждешь.. ждешь…
Второй раз звонят, намекают что немного поскорее надо бы поговорить.
Опять не звонится. Чъйорт побери…
…
В конечном итоге плюешь! И, как вы и предлагаете, звонишь с мобилы.
Платишь 50 рублей за десяти минутный разговор.
Материшься, что хер ты еще раз вот такой же злосчастный палтиник положишь на публичные линии.Meanwhile…
На занятой линии второй час болтают с соседкой по подьезду какие охрененные трусы завезли в 5й гастроном и совсем ведь не дорого, а фактура, фактура..Мораль.
Думаю что с этим что-то надо делать. Рвать разговор посередине считаю неправильным. Но что-то надо делать.ПС.
История и персонажи вымышленны, а все совпадения случайны.09.08.2017 в 15:03 #14501AndyRadistУчастникВыше приведено оптимальное решение. Установить гарантированный минимум, после чего разговор продолжается до тех пор, пока не возникнет потребность в линии в условиях их дефицита. Тогда самого долгоговорящего отключают, но не сразу, а через минуту. В течение этой минуты долгоговорящий слышит пикалку каждые 6 секунд. На десятом пике линия освобождается.
У ожидающего свободную линию звонок ставится на удержание и проговаривается голосом: Все линии заняты, время ожидания свободной линии одна минута.
Проблема в том, что усложняются правила линий и Дмитрию придётся изрядно поломать голову.P.S. При наличии большого количества линий можно было-бы создать простое правило: “Одна линия всегда свободна”. В этом случае при занятии последней линии сразу-же инициируется минутная процедура освобождения самой долгозанятой линии. Такое делалось на старых АТС чтобы катушка реле могла остыть и прийти в себя.
09.08.2017 в 20:27 #14502talkУчастникВ течение этой минуты
Согласен с радистом, но считаю что тут можно сократить до 15сек.
09.08.2017 в 20:49 #14503РоманУчастникГлупый вопрос: а можно все оставить как есть? Ведь, как говорилось в первом посту, случаев занятости линий стало довольно мало…
10.08.2017 в 13:57 #14504DemonУчастникСейчас речь идёт о “возможностях”.
Когда такая проблема “встанет в полный рост”, то у меня не будет времени ни обсудить, ни реализовать.
Возможность ожидания освобождения, возможность отключения после гарантированного времени.. всё это “независимые” возможности, которые можно вводит или не вводить.
Но если такое потребуется, то нужно это иметь.Это очень похоже на долгоиграющую историю по переходу на номера, более чем 4-хзначные.. давно бы надо.
10.08.2017 в 16:28 #14505SaymerУчастникТакое делалось на старых АТС чтобы катушка реле могла остыть и прийти в себя.
Вот это хорошая мысль, а у нас это можно мотивировать тем, что бы модемы успевали остыть и чипсет на хабе. А то при постоянных звонках, они могут и нагреваться.
10.08.2017 в 16:43 #14506DemonУчастникЕсли бы у нас было большое число линий, то этой темы не было бы 🙂
22.08.2017 в 17:21 #14541farcannУчастникНеплохо реализовать используя “внутреннюю” линию для удержания. То есть “повесить” абонента на ожидание.
Тут я полностью солгласен с Романом. “до освобождения линии осталось не более ХХ сек, вы – первый в очереди на звонок”.
Голосовую нотификацию конечно же желательно и по прогнозу возможной продолжительности соединения. Например: “продолжительность соединения составит не менее четырёх минут”. Перед завершением вполне можно обойтись и звуковыми тиккерами. За 30 секунд до окончания и за 10.
Уже сейчас попадаются линии на которых выдаётся голосовое уведомление о предстоящей продолжительности вызова и это удобно.
Я сам могу предупредить собеседника сколько минут есть для разговора.
Спасибо, что подняли эту тему!
PS Как только отменят внутрисетевой роуминг станет полегче. Вот только отменят ли его?22.08.2017 в 17:33 #14542NobodyУчастникНеплохо реализовать используя “внутреннюю” линию для удержания.
Тут больше вопрос рубить или не рубить того кто долго говорит. А на счет очереди в линии полностью Вас поддерживаю.
22.08.2017 в 18:34 #14545farcannУчастникА что значит “вопрос” ? Эта необходимость возникла и касается “не ночного” времени по мск. Я правильно понимаю ситуацию? Количество линий не велико. Как вариант с 23-00 мск до 06-00 мск не рубить. В остальное время при инициализации соединения голосом запрашивать параметр желательной продолжительности. “Введите в минутах желаемую продолжительность разговора”. Например: ввожу “20”. А дальше смотрим на существующие лимиты и текущее время по мск поясу и принимаем решение дать инициатору 20 минут или отказать. Или, для начала, добавить этот параметр на страничке https://ruvoip.net/cb/ с ответным инфо-уведомлением о возможностях системы. Например на те же 20 минут: “ваш запрос поставлен в очередь. возможное время ожидания соединения тридцать шесть минут” или “данный запрос не может быть выполнен. уменьшите значение”.
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.