По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Привет, друг! Сегодня расскажем, как назначить случайного ответственного за лид в Битрикс24 автоматически. Подробно покажем настройку через бизнес – процессы. Погнали. Настройка бизнес - процессов Откройте ваш портал Битрикс24. Далее, необходимо перейти в раздел CRM → Настройки → Роботы и бизнес-процессы → Бизнес-процессы. Далее, нажимаем в разделе Лид на кнопку добавить шаблон. В открывшемся окне вводим: Название - ответственный, например; Автоматически запускать - отмечаем чекбокс При добавлении. В открытом окне, в самой низкой части рабочей области, находим раздел Прочее и перетаскиваем в самое начало блок – схемы блок Выбор сотрудника . Переходим в настройки блока, нажав на шестеренку: Нажимаем на копки выбора пользователей. Выбираем основных пользователей и резервных: Нажимаем на зеленую кнопку «Сохранить» и идем дальше. Далее, в разделе Обработка документа выбираем блок Изменение документа, размещая его под предыдущим блоком: Открываем настройки нового блока. В нем, выбираем поле Ответственный, а для выбора его значения, нажимаем на специальную кнопку выбор «…». Далее, выбираем поле Дополнительные результаты и выбираем параметр …Выбранный сотрудник: Получается вот такая картина: Готово. Теперь, при добавлении нового лида, будет автоматически назначаться случайный ответственный :)
img
Bellman-Ford - один из наиболее простых для понимания протоколов, поскольку он обычно реализуется путем сравнения недавно полученной информации о пункте назначения с существующей информацией о том же пункте назначения. Если вновь обнаруженный маршрут лучше, чем известный в настоящее время, маршрут с более высокой стоимостью просто заменяется в списке путей - в соответствии с правилом кратчайшего пути для поиска путей без петель в сети. Таким образом, перебирая всю топологию, можно найти набор кратчайших путей к каждому месту назначения. Рисунок 7 используется для иллюстрации этого процесса. Примечание. Хотя Bellman-Ford в основном известен своим распределенным вариантом, реализованным в широко распространенных протоколах, таких как Routing Information Protocol (RIP), он изначально был разработан как алгоритм поиска, выполняемый в единой структуре, описывающей топологию узлов и ребер. Беллман-Форд рассматривается здесь как алгоритм. Алгоритм Bellman-Ford Bellman-Ford рассчитывает Shortest Path Tree к каждому достижимому пункту назначения в наихудшем случае O (V * E), где V - количество узлов (вершин) в сети, а E - количество каналов (ребер). По сути, это означает, что время, необходимое Bellman-Ford для работы с топологией и вычисления Shortest Path Tree, линейно зависит от количества устройств и каналов. Удвоение количества любого из них удвоит время, необходимое для выполнения. Удвоение обеих одновременно увеличит время работы в 4 раза. Таким образом, алгоритм Bellman-Ford является умеренно медленным при использовании против более крупных топологий, когда узлы в таблице топологии начинаются в порядке от самого дальнего от корня до ближайшего к корню. Если таблица топологии отсортирована от ближайшего к корню до самого дальнего, Bellman-Ford может завершить работу за O(E), что намного быстрее. В реальном мире трудно обеспечить любой порядок, поэтому фактическое время, необходимое для построения Shortest Path Tree, обычно находится где-то между O(V * E) и O(E). Bellman-Ford - это greedy алгоритм, предполагающий, что каждый узел в сети, кроме локального, доступен только по бесконечным стоимостям, и заменяющий эти бесконечные стоимости фактическими стоимостями по мере прохождения топологии. Предположение, что все узлы бесконечно удалены, называется ослаблением вычислений, так как он использует приблизительное расстояние для всех неизвестных пунктов назначения в сети, заменяя их реальной стоимостью после ее расчета. Фактическое время выполнения любого алгоритма, используемого для расчета Shortest Path Tree, обычно ограничивается количеством времени, требуемым для передачи информации об изменениях топологии по сети. Реализации всех этих протоколов, особенно в их распределенной форме, будут содержать ряд оптимизаций, чтобы сократить время их выполнения до уровня, намного меньшего, чем наихудший случай, поэтому, хотя наихудший случай дается в качестве контрольной точки, он часто имеет мало влияющие на производительность каждого алгоритма в реальных развернутых сетях. Чтобы запустить алгоритм Bellman-Ford в этой топологии, ее необходимо сначала преобразовать в набор векторов и расстояний и сохранить в структуре данных, такой как показано в Таблице 1. В этой таблице девять записей, потому что в сети девять звеньев (граней). Алгоритмы кратчайшего пути вычисляют однонаправленное дерево (в одном направлении вдоль графа). В сети на рисунке 7 показано, что SPT берет начало в узле 1, а расчет показан удаленным от узла 1, который будет точкой, из которой будут выполняться вычисления. Алгоритм в псевдокоде следующий: // создаем набор для хранения ответа, по одной записи для каждого узла // первый слот в результирующей структуре будет представлять узел 1, // второй узел 2 и т. д. define route[nodes] { predecessor // как узел cost // как целое число } // установите для источника (меня) значение 0 // позиция 1 в массиве - это запись исходной точки. route[1].predecessor = NULL route[1].cost = 0 // таблица 1, приведенная выше, содержится в массиве под именем topo // Обходим таблицу вершин (граней) один раз для каждой записи в маршруте // (результаты) таблица, замены более длинных записей на более короткие i = nodes while i > 0 { j = 1 while j <= nodes { // перебирает каждую строку в топологии table source_router = topo[j].s destination_router = topo[j].d link_cost = topo[j].cost if route[source_router].cost == NULL { source_router_cost = INFINITY } else { source_router_cost = route[source_router].cost } if route[destination_router].cost == NULL { destination_router_cost = INFINITY } else { destination_router_cost = route[destination_router].cost } if source_router_cost + link_cost <= destination_router_cost { route[destination_router].cost = source_router_cost + link_ cost route[destination_router].predecessor = source_router } j = j + 1 //or j++ depending on what pseudocode this is representing } i = i - 1 } Этот код обманчиво выглядит сложнее, чем есть на самом деле. Ключевой строкой является сравнение if route [topo [j] .s] .cost + topo [j] .cost route [topo [j] .d] .cost. Полезно сосредоточиться на этой строке в примере. При первом прохождении внешнего цикла (который выполняется один раз для каждой записи в таблице результатов, здесь называется маршрутом): Для первой строки topo-таблицы: j равно 1, поэтому topo[j] .s - это узел 6 (F), источник вектора в таблице граней j равно 1, поэтому topo[j] .d - это узел 7 (G), адресат вектора в таблице граней. route[6].cost = infinity, topo[1].cost = 1, and route[7].cost = infinity (где infinity - бесконечность) infinity + 1 == infinity, поэтому условие не выполняется и больше ничего не происходит Любая запись в topo-таблице с исходной стоимостью infinity даст тот же результат, что и infinity + все, что всегда будет равно infinity. Остальные строки, содержащие источник со стоимостью infinity, будут пропущены. Для восьмой строки topo-таблицы (восьмая грань): j равно 8, поэтому topo[j].s - это узел 1 (A), источник вектора в таблице граней j равно 8, поэтому topo[j].d - это узел 2 (B), место назначения вектора в таблице граней. route [1].cost = 0, topo[8].cost=2 и route[2].cost = infinity. 0 + 2 = infinity, поэтому условие выполняется route[2].predecessor установлен на 1, а route [2].cost установлен на 2 Для девятой строки topo -таблицы (девятая грань): j равно 9, поэтому topo[j].s - это узел 1 (A), источник вектора в таблице граней j равно 9, поэтому topo[j].d - это узел 3 (C), место назначения вектора в таблице граней. route[1].cost=0, topo[9].cost=1 и route[3].cost = infinity. 0 + 1 = infinity, поэтому условие выполняется route[3].predecessor установлен на 1, а route[3].cost установлен на 1 Во втором прогоне внешнего цикла: Для пятой строки topo-таблицы (пятая грань): j равно 5, поэтому topo[j].s - это узел 2 (B), источник вектора в таблице граней j равно 5, поэтому topo[j].d - это узел 6 (F), место назначения вектора в таблице граней. route[2].cost=2,topo[5].cost=1 и route[6].cost = infinity. 2 + 1 = infinity, поэтому условие выполняется route[6].predecessor установлен на 2, а route[6].cost установлен на 3 Для шестой строки topo -таблицы (шестая грань): j равно 6, поэтому topo[j].s равно 2 (B), источник вектора в таблице граней j равно 6, поэтому topo[j].d равно 5 (E), место назначения вектора в таблице граней route[2].cost=2, topo[6].cost=2 и route[5].cost = infinity. 2 + 2 = infinity, поэтому условие выполняется route[5].predecessor установлен на 2, а route[5].cost установлен на 4 Окончание этого прогона показан в Таблице 2. В третьем прогоне внешнего цикла узел 8 представляет особый интерес, поскольку есть два пути к этому месту назначения. Для второй строки topo -таблицы (вторая грань): j равно 2, поэтому topo[j].s - это узел 5 (E), источник вектора в таблице граней j равно 2, поэтому topo[j].d - это узел 8 (H), место назначения вектора в таблице граней route[5].cost=4, topo[2].cost=1 и route[8].cost = infinity. 4 + 1 = infinity, поэтому условие выполняется route[8].predecessor установлен на 5, а route[8].cost установлен на 5 Для третьей строки topo -таблицы (третья грань): j равно 3, поэтому topo[j].s - это узел 4 (D), источник вектора в в таблице граней j равно 3, поэтому topo[j].d - это узел 8 (H), источник вектора в таблице граней route[4].cost=2,topo[3].cost=2 и route[8].cost = 5. 2 + 2 = 4, поэтому условие выполняется route[8].predecessor установлен на 4, а route[8].cost установлен на 4 Интересным моментом в третьем цикле в topo-таблице является то, что запись для грани [5,8] обрабатывается первой, которая устанавливает передатчик 8 (H) на 5 и стоимость на 5. Однако когда обрабатывается следующая строка в таблице topo [4,8], алгоритм обнаруживает более короткий путь к узлу 8 и заменяет существующий. Таблица 2 показывает состояние таблицы маршрутов при каждом проходе через таблицу topo. В таблице 2 верхняя строка представляет запись в таблице маршрутизации и узел, доступный в сети. Например, A (1) представляет лучший путь к A, B (2) представляет лучший путь к B и т. д. Столбец P представляет предшественника или узел, через который A должен пройти, чтобы достичь указанного пункта назначения. C представляет собой стоимость достижения этого пункта назначения. Рассмотренный пример сети может быть завершен за три цикла, если алгоритм настроен так, чтобы обнаруживать завершение дерева. Псевдокод, как показано, не имеет никакого теста для этого завершения и в любом случае будет выполнять полные 8 циклов (по одному для каждого узла). Теперь почитайте про алгоритм диффузного обновления DUAL.
img
Система автоматического исходящего обзвона – это программное обеспечение, с помощью которого любой Call-центр может в разы сократить время и затраты на исходящий обзвон. Существует 4 основных способа организовать обзвон списка номеров: ручной набор - оператор делает набор вручную. Это неэффективное расходование времени оператора (набор номер, писк контакта в базе и так далее); preview – диалер загружает списки контактов, в которых оператор заранее видит информацию по каждому клиенту и принимает решение о звонке самостоятельно. При этом, он не набирает номер телефона и не снимает трубку до того момента, как абонент ответит на звонок; progressive – так же, как и в preview загружаются списки контактов, но в этом варианте у оператора нет возможности отказаться от внешнего звонка. Диалер стремится занять звонками максимальное количество доступных каналов. Это подходит для автоматических извещений, IVR (когда вызываемого абонента нужно подключить на интерактивное меню) и прозвона номеров; predictive dialer – самое интересное. При предиктивном дозвоне используются сложные сценарии и реальный математический расчет. Dialer предназначен для максимального сокращения времени ожидания оператором звонка при минимальных потерях успешных звонков. Для этого используются алгоритмы, «просчитывающие» необходимое количество звонков в следующий момент на основании данных о количестве операторов, которые будут доступны на момент соединения, о средней длительности разговора (ACD), о проценте успешных соединений (ASR) и прочих. У каждого продукта данные секретны и не публичны :). Хочу презентацию продукта! Программный продукт IqDialer В качестве основной телекоммуникационной платформы для IqDialer был выбран Asterisk. Дайлер кроссфункционален и стабилен – он справляется с разными задачами, а его надежность протестирована в десятках инсталляций. Все функциональные возможности диалера (интеграция с внешними компонентами, CRM, например) управляются посредством RESTful API. Работает это примерно так: устанавливается и настраивается оборудование, необходимое для начала работы Call-центра, затем загружается база контактов для обзвона, и операторы входят в систему, занимая свои виртуальные рабочие места и вставая в очередь на телефонии. IqDialer определяет доступные ресурсы для работы, и в этот момент программа начинает расчеты, запрашивает статистику звонков, рассчитывает, сколько нужно взять лидов (контактов для обзвона), занимает расчетное количество операторов, трансформирует лиды в звонки и отправляет все на телефонию. Первый этап закончен :) В следующем этапе звонки, попавшие в телефонию, при дозвоне до клиента попадают в очередь и диалер собирает всю доступную ему информацию о звонке. На основании собранной информации программа отправляет карточки лидов операторам, и те видят на своих экранах всю информацию по контакту и обрабатывают звонок в соответствии с поставленной задачей. На последнем этапе по завершению звонка, оператор дополнительно обрабатывает карточку лида, сохраняя ее (срабатывает интеграция CRM и диалера) дает понять системе сколько длилась дообработка и что оператор готов принять новые вызовы (освобождается в очереди). Система обрабатывает завершенный звонок, производя манипуляции с лидом, меняет его статус и создает задачи для пропущенного звонка. «Под капотом» это выглядит примерно так: Время статистики. Для сравнения эффективности различных режимов набора, мы возьмем 3 (три) самых распространенных варианта обзвона (Preview, Progressive и Predictive), которые практикуют Call - центры, и для примера возьмем Call – центр, где один оператор работает 5 дней в неделю, по 8 часов в день: Действие Preview Progressive Predictive Поиск карточки клиента (сек) 0 0 0 Ознакомление с карточкой клиента (сек) 10 0 0 Набор номера (сек) 0 0 0 Дозвон (сек) 20 20 0 Занятость оператора в разговоре (сек) 90 90 90 Всего времени на звонок (сек) 120 110 90 Звонков в день 240 262 320 Формула получения звонков в день и месяц 8*60*60/120240*22 8*60*60/110262*22 8*60*60/90320*22 Звонков в месяц 5280 5764 7040 Если привести здесь в качестве примера статистику, учитывающую еще и ручной набор, то результатом сравнения будет превосходство предиктивного набора над ручным почти в 2 раза. Даже при таком простом анализе, который не учитывает множество дополнительных факторов и полностью исключает сравнение с ручным набором оператором телефонных номеров, очевидна выгода :) Таким образом, основываясь на вышесказанном, любой Call - центр просто обязан использовать только Predictive (предиктивный) Dialer. Однако не все так просто. Этот режим эффективен в том случае, если число работающих операторов не опускается ниже 20–30. В противном случае predictive dialing вместо пользы будет приносить только вред. Смешанный режим работы оператора В работе каждого Call - центра случаются временное затишье или резкий всплеск количества обращений, которые тяжело прогнозировать. В такой ситуации действенным инструментом поддержания необходимого и достаточного уровня сервиса могут стать работа в смешанном режиме – blended Agent. Смешанный режим позволяет оператору обрабатывать входящие и исходящие обращения по различным каналам коммуникаций в рамках единой очереди. Чтобы проиллюстрировать выгоду, полученную при добавлении исходящих звонков в кейс (рабочие задачи) оператора, можно привести такой пример: допустим, операторы принимают только входящие звонки и при этом в течение одного рабочего дня простаивают 20% своего времени. Тогда в течение дня оператор не работает (8*60*0.2) = 96 минут. Пусть в Call - центре работает 10 операторов, тогда легко вычислить, что колл-центр уже простаивает (96*10/60) = 16 часов в день , а в месяц уже (16*22) = 352 человеко-часа. При этом, у колл-центра могут быть заказы на проведение опросов (исходящая кампания на обзвон), и во время простоя оператору будут подмешиваться звонки с опросами. Производительность и качество обслуживание входящих звонков останутся на должном уровне, а Call - центр получит дополнительную прибыль. Есть определенные тонкости, которые необходимо учитывать при планировании кампаний исходящего обзвона и входящих звонков, дело в том, что смешанный колл-центр будет эффективно работать только в режимах preview и progressive. Поскольку режим predictive подразумевает 100% занятость и любые отвлечения оператора приведут к потерям клиентов. IqDialer: интерфейс и как он выглядит Посмотрите, как выглядит дашборд супервизора, который следит за компаниями исходящего обзвона: Двигаемся к отчетности – ниже отчет агентов по статусам (включает круговую диаграмму): Заказать продукт Отчеты реального времени – кто говорит, сколько времени: Можно посмотреть самую важную информацию по каждой очереди: Тайм – лайны! Смотрим, что делал наш агент на протяжении отрезка времени – звони, говорил, делал пост – ворк (работа после звонка) и так далее: Интересен продукт? Напишите нам на dialer@merionet.ru
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59