Skip to content

Оффер профкурса после просмотра курса

Оффер показывается после просмотра курса и закрытия плеера. Его содержимое настраивается отдельно для каждой категории курса через Firebase Remote Config.

Не изменяйте `engage_course_professions`

Этот параметр используется на других экранах. Для оффера после закрытия плеера предназначен только engage_categories.

Параметры Remote Config

ПараметрТипНачальное значениеНазначение
engage_categoriesJSON{}Содержимое оффера для каждой категории курса
profcourse_bottom_sheet_max_showsNumber3Максимальное суммарное число показов за скользящий период
profcourse_bottom_sheet_period_hoursNumber72Длительность скользящего периода в часах

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

Значение -1 в profcourse_bottom_sheet_max_shows полностью отключает оффер. Другие неположительные, дробные или некорректные значения заменяются локальным значением 3. Для profcourse_bottom_sheet_period_hours допустимо только положительное целое число; иначе используется 72.

Структура engage_categories

Корневой объект содержит пары «ID категории курса — содержимое оффера». Дополнительная обёртка data не нужна.

json
{
  "<ID категории>": {
    "image": {
      "type": "themed",
      "light": {
        "type": "default",
        "asset": "https://example.com/profcourse-light@3x.png"
      },
      "dark": {
        "type": "default",
        "asset": "https://example.com/profcourse-dark@3x.png"
      }
    },
    "title": "Заголовок",
    "description": "Описание",
    "locales": [
      "ru"
    ],
    "action": {
      "type": "form",
      "text": "Оставить заявку",
      "reason": "Оффер профкурса после просмотра курса"
    }
  }
}

Для каждого элемента обязательны image, title, description и action. Поле locales необязательно; без него используется ru.

Не добавляйте поля доставки In-App Messaging: enabled, start, end и condition. Поле count также не используется.

Изображения

Одно изображение

json
{
  "type": "default",
  "asset": "https://example.com/profcourse@3x.png"
}

Отдельные изображения для телефона и планшета

json
{
  "type": "responsive",
  "mobile": "https://example.com/profcourse-mobile@3x.png",
  "tablet": "https://example.com/profcourse-tablet@3x.png"
}

Отдельные изображения для светлой и тёмной темы

json
{
  "type": "themed",
  "light": {
    "type": "default",
    "asset": "https://example.com/profcourse-light@3x.png"
  },
  "dark": {
    "type": "default",
    "asset": "https://example.com/profcourse-dark@3x.png"
  }
}

В light и dark можно использовать default или responsive. Ссылка должна быть доступна приложению по HTTPS. Встроенный в приложение путь можно использовать только для уже добавленного ресурса; новое локальное изображение требует выпуска приложения.

Действия

Форма

json
{
  "type": "form",
  "text": "Оставить заявку",
  "reason": "Оффер профкурса после просмотра курса"
}

text обязателен. reason необязателен.

Ссылка

json
{
  "type": "link",
  "text": "Подробнее",
  "url": "https://example.com/profcourse"
}

Все поля обязательны.

Публикация

  1. Откройте Firebase Remote Config.
  2. Откройте engage_categories и вставьте весь корневой JSON-объект.
  3. Проверьте ID категории, тексты, ссылки на изображения, локали и действие.
  4. Сохраните и опубликуйте изменения.
  5. Проверьте оффер на iOS и Android, в светлой и тёмной теме. Для responsive-изображений также проверьте телефон и планшет.

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

Авторы

The avatar of contributor named as Vadim Melnikov Vadim Melnikov

История