Перейти к содержанию

Настройка

Общие настройки

В стадии закрытого бета-тестирования

Функциональность, описанная ниже, находится в стадии закрытого бета-тестирования. Если у вас появятся вопросы по участию в тестировании или пожелания по доработке функциональности, обратитесь в службу поддержки.

Чтобы включить инструмент Аналитика чатов, перейдите в Речевая аналитика -> Настройки и в блоке AI-тегирование сообщений активируйте переключатель

active.png

  • После включения инструмента все поступающие чаты оплачиваются и отправляются на обработку в ИИ автоматически. Подробнее про Оплату чатов в статье

  • При поступлении нового сообщения в ранее обработанный чат на анализ будут отправлены все сообщения в этом чате за 7 дней до поступления нового сообщения. Это необходимо для сохранения контекста обращения и более качественного анализа через ИИ.

  • Если ваши чаты обычно длятся более 7 дней, и вы хотите сохранять полный контекст обращения с даты создания чата при анализе через ИИ, то активируйте расширенную настройку Использовать расширенный контекст при AI-тегировании сообщений.

Обратите внимание

Cумма списаний за аналитику чатов при использовании расширенного контекста может увеличиться и будет зависеть от роста количества обрабатываемых сообщений и символов текста в них.

extended.png

Настройка загрузки чатов

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

  • если у вас есть свой разработчик - направьте ему описание интеграции из этой статьи,

  • вы можете воспользоваться настройкой интеграции вашего сервиса чатов с помощью специалистов Roistat - для этого обратитесь к своему менеджеру.

Напишите нам, какой сервис чатов вы используете

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

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

1. Создавать коммуникацию

Каждый новый Чат необходимо отправлять как новую коммуникацию через метод API.

POST /api/v1/project/supervisor/communication/create

Запрос

{
  "id": null,                        // Внутренний ID коммуникации. Если передаётся связка external_id + type, то передавать id не обязательно (int/null)
  "external_id": "1234551",          // Внешний ID коммуникации. Если передаётся id, то связку external_id + type не обязательно (string/null)
  "type": "Тикет",                   // Тип коммуникации. Если передаётся id, то связку external_id + type не обязательно (string/null)
  "fields": {                        // Дополнительные поля. При передаче каких-либо полей, старые не затираются. (array|string[]/null)
    "URL": "ticket_link"
  },
  "comment: "Комментарий",           // Строка с комментарием. Если передан null, то остаётся старое значенеи (string/null)
  "client": "Вадим", // Клиент. Если передан null, то остаётся старое значенеи (string/null)
  "messages": [                      // Список сообщений. Если здесь передать хоть одно сообщение, то все старые удаляются - is_processed и matched_ai_tags сбраcываются. Для добавления сообщений, есть другой метод (object[])
    {
      "text": "Сообщение 1",     // Текст сообщения (string)
      "is_client": true,         // Данное сообщение отправлено клиентом? (bool)
      "manager": null,           // Если сообщение отправлено менеджером, то можно указать его имя или id (string/null)
      "date": "2024-10-22 02:25" // Дата написания сообщения. Если передан null, то считаем, что передали текущую дату (string/null)
    },
    {
      "text": "Сообщение 2",
      "is_client": false,
      "manager": "Валентин",
      "date": "2024-10-22 02:26"
    },
    {
      "text": "Сообщение 3",
      "is_client": false,
      "manager": "Владислав",
      "date": "2024-10-22 02:20"
    }
  ]
}

Ответ:

{
  "data": {
    "id": 1,                                      // Внутренний ID коммуникации. Пригодится для её обновления, если external_id передан null. (int)
    "external_id": "1234551",                     // Внешний ID коммуникации, который передали при создании. Пригодится для её обновления в связке с type. (string/null)
    "type": "Тикет",                              // Тип коммуникации, который передали при создании. Пригодится для её обновления в связке с external_id. (string)
    "fields": {                                   // Дополнительные поля (array|string[])
      "URL": "ticket_link"
    },
    "comment: "Комментарий",                      // Строка с комментарием (string/null)
    "client": "Вадим Говоров-Калинюк",            // Клиент (string)
    "managers": [                                 // Список менеджеров. Получаем динамически из списка сообщений коммуникации. (string[])
      "Менеджер 1",
      "Менеджер 2"
    ],
    "creation_date": "2024-10-21T21:52:35+00:00", // Дата создания коммуникации (string)
    "is_processed": false,                        // Флаг показывающий была ли обработана коммуникация GPT-анализом. При создании всегда = false. (bool)
    "matched_ai_tags": []                         // Список сматченных AI-тегов. При создании коммуникации всегда []. (object[])
  },
  "status": "success"
}

2. Добавлять сообщения в коммуникацию

Когда поступило новое сообщение в Чате, то необходимо добавлять сообщение в коммуникацию.

POST /api/v1/project/supervisor/communication/message/add

Запрос:

 {
  "communication": {
    "id": null,               // Внутренний ID коммуникации. Если передаётся связка external_id + type, то передавать id не обязательно (int/null)
    "external_id": "1234551", // Внешний ID коммуникации. Если передаётся id, то связку external_id + type не обязательно (string/null)
    "type": "Тикет"           // Тип коммуникации. Если передаётся id, то связку external_id + type не обязательно (string/null)
  },
  "messages": [
    {
      "text": "Сообщение 4",     // Текст сообщения (string)
      "is_client": false,        // Данное сообщение отправлено клиентом? (bool)
      "manager": "Мария",        // Если сообщение отправлено менеджером, то можно указать его имя или id (string/null)
      "date": "2024-10-22 02:27" // Дата написания сообщения. Если передан null, то считаем, что передали текущую дату (string/null)
    }
  ]
}

Ответ:

 {
  "data": [
    {
      "id": 19,
      "communication_id": 1,
      "date": "2024-10-22T02:27:00+00:00",
      "text": "Сообщение 4",
      "is_client": false,
      "manager": "Мария"
    }
  ],
  "status": "success"
}
О том, как авторизоваться в API, описано в разделе REST API.

Каждая созданная коммуникация будет сохраняться в Истории сообщений