Документация Accelera

Персонализация данных сущностей

В этом разделе описано, как работает функционал Персонализации данных.

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

Пример персонализации

Рассмотрим пример:
Текст: «Размер кэшбека в декабре: {{cashback_percent}}».

  • Для дефолтных сущностей значение {{cashback_percent}} будет заменено на значение по умолчанию, например, 0
  • Для персональных сущностей значение {{cashback_percent}} будет заменено на актуальное значение, например, 5, если пользователь увеличил свой кэшбек

Пример дефолтной персонализации параметров

Объект personalization

Объект personalization позволяет задать параметры, которые будут использоваться для замены данных в сущности. Он состоит из двух ключевых частей:

1. Dictionary (Словарь)

Ключи, перечисленные в dictionary, заменяют параметр целиком.

Пример: Если указан ключ price, то весь параметр будет заменен на значение из dictionary.

2. Context (Контекст)

Ключи, перечисленные в context, заменяют только часть параметра, обозначенную двойными фигурными скобками {{x}}.

Пример: В тексте «Ваша скидка составляет {{amount}}» значение {{amount}} будет заменено на соответствующее значение из context.

Пошаговый пример использования

Шаг 1: Указание ключей в сущности

При создании сущности можно указать ключи для персонализации, используя двойные фигурные скобки {{}}.

Пример полей сущности:

  • Title: {{reward_title}}
  • Description: Полученный промокод можно применить до {{end_date}}

Пример использования personalization при создании сущности

Шаг 2: Заполнение объекта personalization

Объект personalizationзаполняется значениями, которые будут использоваться для замены. Например:

{
  "dictionary": {
    "reward_title": "Скидка 10% в Золотом Яблоке"
  },
  "context": {
    "end_date": "2025-12-31"
  }
}

Как заполнен объект personalization у сущности

Результат:

  • Title: Весь параметр заменится на "Скидка 10% в Золотом Яблоке" (из dictionary)
  • Description: Текст станет "Полученный промокод можно применить до 2025-12-31" (замена {{end_date}} из context)

Пример для задания с кэшбеком

Создание задания:

{
  "title": "Соверши покупку и получи повышенный кэшбек",
  "description": "Размер кэшбека в декабре: {{cashback_percent}}"
}

Объект personalization (дефолтный):

{
  "context": {
    "cashback_percent": "0"
  },
  "dictionary": {}
}

Объект personalization (персональный):

{
  "context": {
    "cashback_percent": "5"
  },
  "dictionary": {}
}

Результат:

  • Для обычного пользователя: "Размер кэшбека в декабре: 0"
  • Для VIP-пользователя: "Размер кэшбека в декабре: 5"

Преимущества персонализации

  1. Гибкость – Позволяет адаптировать сущности под конкретного пользователя или ситуацию
  2. Динамичность – Данные могут изменяться в зависимости от действий пользователя или внешних условий
  3. Удобство – Упрощает управление контентом, так как не требует изменения всей сущности — достаточно обновить объект personalization
  4. Масштабируемость – Один шаблон сущности может использоваться для всех пользователей с разными параметрами

Применение в разных сущностях

Персонализация доступна для всех основных сущностей системы:

  • Tasks – персонализация условий и наград
  • Rewards – персонализация описаний и размера скидки
  • Dialogs – персонализация текстов сообщений
  • Achievements – персонализация требований и бонусов
  • и т.д.

На этой странице