/
Freshdesk

Freshdesk

Ноутбуки, используемые в примере:


В данной статье рассматривается пример получения данных с портала поддержки клиентов Freshdesk https://freshdesk.com. Пример не является шаблонным: в каждом случае задачи разнятся, и работать с данными придется по-другому.

Вот особенности данного кейса:

  • Количество получаемых данных небольшое - порядка 400 строк, поэтому все выгруженные и обработанные данные сохраняются в XLSX файл, а не в CSV или SQL базу данных.

  • Будут использоваться два ноутбука: первый для данных заявок, второй для данных контактов и агентов. На выходе будет два Excel файла для загрузки в платформу.

Здесь не рассматривается:


Сначала необходимо внимательно ознакомиться с описанием работы библиотеки python для Freshdesk:https://github.com/sjkingo/python-freshdesk, а также с API Freshdesk https://developers.freshdesk.com/api.

 

Теперь можно приступать к работе в JupyterLab.

  1. Создаем новый ноутбук для заявок, например, с именем Tickets.

  2. Первым блоком подключаем все необходимые нам для работы Python библиотеки:

    import petl as etl from freshdesk.api import API from datetime import date

     

  3. Вторым блоком подключаемся к Freshdesk, используя адрес своего портала и токен. Адрес портала нужно обязательно указывать с доменом freshdesk.com.

    a = API('yourname.freshdesk.com', 'gj34pg98hyatoken')

     

  4. Получаем заявки c 1 января 2015 года, кроме удаленных и помеченных как спам. Параметр filter_name необходим для получения всех заявок. Если его не указать, придут только открытые заявки, назначенные агенту, чей токен указан в подключении.

    tickets = a.tickets.list_tickets(updated_since='2015-01-01', filter_name=None)

     

  5. Кладем все данные в список, где каждый элемент - это словарь. Это нужно для создания таблицы petl в следующем шаге. В некоторых местах данные сразу преобразовываются к нужном виду, например, для tags данные в виде списка преобразуются в строку и разделяются пробелами.

     

  6. Создаем таблицу petl с указанными столбцами и наполняем ее данными о заявках.

     

  7. Вручную расшифровываем кастомные статусы тикетов. Они уникальны для каждого портала Freshdesk. В данном случае их всего четыре. У вас их может не быть вовсе.

     

  8. Выгружаем в Excel.

     


  1. Создаем новый ноутбук для заявок, например, с именем Contacts. Импортируем библиотеки.

     

  2. Вторым блоком подключаемся к Freshdesk, используя адрес своего портала и токен. Адрес портала нужно обязательно указывать с доменом freshdesk.com.

     

  3. Записываем в две переменные информацию о контактах и агентах.

     

  4. В рамках данного примера мы хотим на выходе сформировать одну общую таблицу контактов, где будут и обычные контакты (клиенты), и агенты. Причем, чтобы отличать обычных контактов от агентов, мы добавим дополнительный столбец isAgent. Также, чтобы отличать штатного агента от временного добавим столбец isOccasional.
    Создаем переменную, куда будем помещать все данные в виде списка.

     

  5. Сначала помещаем всю информацию об обычных контактах в нашу переменную. Здесь же мы вычисляем название компании company_name по адресу электронной почты контакта.
    Для столбца isAgent конечно же ставим False, так как мы сейчас работаем с обычными контактами. Для столбца isOccasional ставим None, так как обычный контакт не может быть ни штатным, ни временным агентом.

     

  6. Добавляем в ту же переменную информацию об агентах.

     

  7. Формируем таблицу petl на основе единой информации о контактах и агентах в contacts_array.

     

  8. Экспортируем в Excel.

 

Полученные файлы можно брать и загружать в платформу через стандартный загрузчик. На этом работа в ViXtract завершена.

 

Related content

Запуск Vixtract с Visiology Platform
Запуск Vixtract с Visiology Platform
Read with this
Яндекс.Метрика
Яндекс.Метрика
More like this
Источники данных
Источники данных
More like this
Источники данных
Источники данных
More like this
Источники данных
Источники данных
More like this
Источники данных
Источники данных
More like this