Блокировка номеров для голосовых вызовов

Иногда операторам контактного центра звонят спамеры или люди, которые просто хотят поговорить. Такие звонки мешают работе и отнимают время. Один из способов справиться с ними — блокировать нежелательные номера.

Гибкие настройки Cloud Contact позволяют реализовать блокировку разными способами. В этом руководстве описан один из вариантов блокировки номеров для голосовых вызовов.

Как это работает

Получив нежелательный звонок, оператор завершает вызов, выбирает результат обработки Заблокировать номер и нажимает кнопку Завершить.

После сохранения результата обработки запускается рабочий процесс, который добавляет запись в список заблокированных номеров. Сценарий входящих голосовых вызовов проверяет этот список и решает, соединить звонящего с оператором или завершить вызов, тем самым заблокировав номер.

Оператор выбирает вариант «Заблокировать номер» после завершения вызова.

Требования

Для настройки понадобятся секрет API, используемый при вызове API, и CSV-файл, который задает структуру списка.

Секрет API

Доступ к секретному свойству API возможен у пользователя, имеющего соответствующие права доступа к API, в приложении Администратор контактного центра, раздел Пользователи и команды > Пользователи. Все, что вам нужно сделать, это нажать Создать, и вам будет предоставлен секрет API.

Генерация секрета API от пользователя

файл CSV

Что касается файла .CSV, убедитесь, что у вас заполнены два поля: одно для номеров телефонов и одно для статуса блокировки, который может иметь значение true или false.

Поля CSV

Настройка

Настройка затрагивает четыре раздела: списки, результаты обработки, рабочие процессы и сценарии.

Создание списка

В списке будут храниться заблокированные номера. В разделе Списки приложения Администратор контактного центра создайте список, загрузив созданный ранее CSV-файл.

При работе с мастером импорта списка вам необходимо настроить следующие ключевые параметры:

  1. На вкладке Тип формата установите флажок Первая строка содержит имена полей.
  2. На вкладке Поля сделайте поля «Phone Number» и «Blocked» обязательными и доступными для поиска.
  3. На вкладке Ключ выберите поле «Phone Number» в качестве уникального идентификатора.

Настройка результатов обработки в сервисах и кампаниях

Создав список, привяжите его к нужному сервису входящих голосовых вызовов. Назначьте этот сервис команде, которая обрабатывает входящие звонки.

В выбранном сервисе откройте вкладку Свойства и установите флажок Использовать результаты обработки.

На вкладке Результаты обработки добавьте в нужную категорию новый результат для входящих вызовов и назовите его «Заблокировать номер». Операторы будут выбирать его для блокировки номеров.

Построение рабочего процесса

Сам по себе результат обработки дает оператору возможность указать нужное действие. Для выполнения этого действия необходимо подключить рабочий процесс.

В приложении «Администратор контактного центра» откройте раздел Рабочие процессы и создайте новый процесс. Нажмите кнопку +, чтобы открыть конструктор рабочих процессов.

Добавьте в конструкторе блоки для получения токена доступа к API и проверки номера телефона в списке заблокированных. Если запись уже существует, измените статус ее блокировки на true. Если записи нет, добавьте номер в список.

Ваш рабочий процесс должен быть структурирован следующим образом:

  1. Блок Fetch URL, который получает токен доступа
  2. Блок Fetch URL, который запрашивает запись
    • К условному выходу «Нет данных» этого блока добавьте блок Fetch URL, который обновляет запись, меняя значение поля «Blocked» с false на true.
  3. Блок Fetch URL, который добавляет запись
  4. Блок Выход

Примечание. Настройки блоков Fetch URL приведены в разделе Примеры настройки блока Fetch URL.

Сохраните рабочий процесс. Затем в свойствах его точки входа добавьте результат обработки «Заблокировать номер» в качестве триггера. Теперь выбор этого результата оператором будет автоматически запускать рабочий процесс.

Установка результата обработки «Заблокировать номер» в качестве триггера в рабочем процессе

Построение сценария

На данный момент вы реализовали возможность помещения нежелательных телефонных номеров в список заблокированных, но этот список фактически не блокирует никакие номера. Это потому, что вам нужно создать сценарий для обработки входящих вызовов, которые вы хотите заблокировать.

Как и при создании рабочего процесса, перейдите в раздел Сценарии > Голос в приложении Администратор контактного центра и создайте новый сценарий. В приложении Конструктор сценариев вы добавите блоки для получения токена доступа, а затем проверите, существует ли номер телефона в списке заблокированных. Если запись существует, вы затем проверите, является ли заблокированный статус true или false. Если true, сценарий завершится, в противном случае он продолжится.

Ваш сценарий должен быть структурирован следующим образом:

  1. Блок Fetch URL, который получает токен доступа
  2. Блок Fetch URL, который запрашивает запись
  3. Блок If с веткой true с условием:
Переменная сценария (строка)
jsdata.__data__.entry.blocked
is =
true
(Примечание: «jsdata» — это переменная сценария, содержащая результаты предыдущего блока Fetch URL.)
  • Ветка true будет содержать:
    • Блок Play Prompt, уведомляющий вызывающего абонента о том, что набранный номер больше не существует.
    • Блок Выход.

Примечание. Настройки блоков Fetch URL приведены в разделе Примеры настройки блока Fetch URL.

После сохранения этот сценарий блокировки можно вызвать в основном сценарии обработки входящих вызовов, как показано в примере ниже. В частности, вы будете использовать блок Начать другой сценарий для запуска сценария заблокированного номера. Если номер входящего звонящего не заблокирован, звонок вернется в основной сценарий и соединится с оператором.

Разблокировка

Как и в случае с блокировкой, существует множество способов реализовать разблокировку. В этом случае вы обнаружите, что это отображается через SMS, где оператор или руководитель может отправить сообщение на выделенный номер со словом «UNBLOCK».

Сценарий ожидает это слово и проверяет, принадлежит ли номер отправителя оператору или руководителю, которому разрешена разблокировка. Если проверка пройдена, сценарий запрашивает номер для разблокировки. Получив номер, он находит соответствующую запись и меняет статус блокировки на false.

Разблокировка рабочего процесса через SMS

Для этого вы создадите новый сценарий чата, который будет выглядеть следующим образом:

  • Блок If, который проверяет переменную item.message, чтобы определить, соответствует ли она строке «UNBLOCK».

Когда вы закончите, назначьте этот сценарий службе, обрабатывающей входящий чат, с выделенным номером, установленным в качестве учетной записи исходящего чата на вкладке Свойства службы.

Дополнительная настройка

В этом руководстве представлена простая реализация блокировки номеров для голосовых вызовов, которую вы можете настроить в соответствии с потребностями вашего контакт-центра. Некоторые примеры настройки включают добавление тайм-аутов, блокировку для определенных операторов, реализацию блокировки SMS и т. д.

Примеры настройки блока Fetch URL

Блоки Fetch URL, используемые как в рабочем процессе, так и в сценарии, используют методы из API управления списком Cloud Contact. В следующих примерах показано, как выполняются запросы методов для каждого блока.

Получить токен доступа

Обратите внимание, что для успешной работы все методы API управления списками должны включать действительный токен доступа.

  • Текст заголовка: <any_text>
  • Тип запроса: POST
  • URL-адрес для получения: https://<tenant_URL>/configapi/v2/oauth/token
  • Тип контента: application/x-www-form-urlencoded
  • Параметры формы:
    • client_id: <username>
    • client_secret: <client_secret>
    • grant_type: <client_credentials>
    • scope: <contact_center_URL>
  • Переменная сценария: <any_text>

Добавить запись

  • Текст заголовка: <any_text>
  • Тип запроса: POST
  • URL-адрес для получения: https://<tenant_URL>/configapi/v2/callinglist/add/:list_name
  • Дополнительные заголовки:
    • Authorization: Bearer $(<scenario_variable>.access_token)
  • Тип контента: application/json
  • Тело: {"<list_phone_field_name>": "$(item.customerPhone)", "Blocked": "true"}

Запросить запись

  • Текст заголовка: <any_text>
  • Тип запроса: POST
  • URL-адрес для получения: https://<tenant_URL>/configapi/v2/callinglist/get/:list_name/:campaignname
  • Дополнительные заголовки:
    • Authorization: Bearer $(<scenario_variable>.access_token)
  • Тип контента: application/json
  • Тело: {"<list_phone_field_name>": "$(item.customerPhone)"}
  • Отметьте флажок Использовать блок GenNext для циклического перебора данных

Обновить запись

  • Текст заголовка: <any_text>
  • Тип запроса: POST
  • URL для получения: https://<tenant_URL>/configapi/v2/callinglist/get/:list_name/:campaignname
  • Дополнительные заголовки:
    • Authorization: Bearer $(<scenario_variable>.access_token)
  • Тип контента: application/json
  • Тело: {"<list_phone_field_name>": "$(item.message)", "Blocked": "false"}
  • Отметьте флажок Использовать блок GenNext для циклического перебора данных

Похожие статьи

  • Как внести в черный список определенные номера телефонов
  • Внесение клиентов чата в черный список |