Імпорт даних із таблиць BigQuery

Дані користувача

Email

Омніканальність

Автоматизація

Відстеження подій та поведінки

Імпорт даних із таблиць BigQuery

Розглянемо створення джерела даних BigQuery і його використання для сегментації та персоналізації в eSputnik.

Налаштування джерела для імпорту даних в eSputnik

1. Перейдіть до розділу “Налаштування” → “Джерела даних” і натисніть “Нове джерело” → “Зовнішні джерела даних”.

Зовнішні джерела даних

2. Виберіть створений конектор.

Конектор

3. Укажіть набір даних і таблицю та введіть назву джерела. Натисніть “Зберегти”.

Зберегти

Використання даних BigQuery для персоналізації розсилок

Дані BigQuery можуть використовуватися для таргетованих кампаній із залученням клієнтських даних, таких як історія покупок, рівень залучення та обрані категорії товарів. 

1. Масова кампанія з даними BigQuery

Розглянемо, як запустити кампанію, націлену на клієнтів, які нещодавно придбали певні категорії продуктів, пропонуючи персоналізований промокод. Нижче наведено приклад налаштування даних для контакту jdoe@example.com із використанням джерела даних discount_codes:

{
  "data": {
    "discount_codes": [
      {
        "id": "3",
        "email": "jdoe@example.com",
        "name": "John Doe",
        "recent_purchase_category": "Home Appliances",
        "discount_code": "SAVE20-HOME",
        "expiry_date": "2023-12-31T23:59:59Z"
      }
    ]
  }
}

Ви можете посилатися на кожне поле в повідомленні за допомогою синтаксису Velocity таким чином:

  • Безпосередньо за параметрами (якщо ви знаєте, що масив має фіксовану довжину):
$!data.get('discount_codes').get(0).get('name')
$!data.get('discount_codes').get(0).get('discount_code')
  • Використовуючи цикл (для масивів гнучкої довжини):
#foreach($code in $!data.get('discount_codes'))
  $!code.get('name')
  $!code.get('discount_code')
#end

2. Тригерна кампанія, заснована на кількості покупок

Щоб надсилати персоналізовані повідомлення, коли клієнти здійснюють певну кількість покупок, наприклад, 50.

1. Створіть динамічну групу, яка включатиме клієнтів, що відповідають певним умовам покупки (наприклад, зроблено 50-ту покупку).

2. Налаштуйте регулярний сценарій для цієї групи.

Коли сценарій запускається для контактів, які відповідають заданим умовам, система створює подію. Назва події генерується шляхом об’єднання статичного префікса regularEventType з ідентифікатором групи, наприклад — regularEventType-170531841.

Ця подія містить контактні дані, такі як ідентифікатор контакту в eSputnik (contactId), email-адреса (emailAddress) і дані, отримані із зовнішньої таблиці. Кожне поле з таблиці перетворюється на ключ і поміщається в масив, позначений числовим іменем, яке відповідає ідентифікатору джерела даних.

ID ідентифікатора

Цей масив серіалізується та зберігається як рядок у полі jsonParam. Приклад тіла події може виглядати так:

{
  "params": [
    {
      "name": "contactId",
      "value": "123456789"
    },
    {
      "name": "jsonParam",
      "value": "{\"1043\":[{\"id\":2,\"email\":\"shopper@example.com\",\"name\":\"Jordan Lee\",\"lastPurchaseDate\":\"2023-10-15T10:00:00Z\",\"purchaseFrequency\":50,\"averageBasketValue\":120}]}"
    },
    {
      "name": "emailAddress",
      "value": "shopper@example.com"
    }
  ]
}

При підставлянні даних у повідомлення номер джерела даних в eSputnik використовується як назва масиву:

{
  "data": {
    "1043": [
      {
        "id": "2",
        "email": "shopper@example.com",
        "name": "Jordan Lee",
        "lastPurchaseDate": "2023-10-15T10:00:00Z",
        "purchaseFrequency": 50,
        "averageBasketValue": 120
      }
    ]
  }
}

Якщо ви знаєте, що масив має фіксовану довжину, ви можете звертатися до полів безпосередньо:

$!data.get('1043').get(0).get('name')
$!data.get('1043').get(0).get('lastPurchaseDate')
$!data.get('1043').get(0).get('purchaseFrequency')
$!data.get('1043').get(0).get('averageBasketValue')

Якщо масив 1043 може містити кілька записів, використовуйте цикл для динамічного підставлення всіх значень:

#foreach($entry in $!data.get('1043'))
  $!entry.get('name')
  $!entry.get('lastPurchaseDate')
  $!entry.get('purchaseFrequency')
  $!entry.get('averageBasketValue')
#end

Створення динамічного сегмента за допомогою параметрів BigQuery

1. У розділі “Контакти” → “Групи” створіть нову динамічну групу.

2. Виберіть умови включення в групу. У параметрах умови натисніть назву джерела, потім назву параметра та встановіть умову. Наприклад, purchaseFrequency → дорівнює → 50.

Умовна група

Зверніть увагу

Підключення до зовнішньої бази даних не передбачає імпорт контактів. Сегментація доступна лише для контактів, які є як у вашому обліковому записі eSputnik, так і у зовнішній базі даних. Синхронізуйте та оновлюйте контакти перед створенням кампаній.

Залишилися питання?
Спеціалісти обов'язково нададуть відповідь та допоможуть вирішити вашу проблему!
Зворотний дзвінок
Залишіть заявку – і наш спеціаліст зв'яжеться з вами в робочий час.
Відправити заявку
Консультація в чаті
Готові до ваших запитань!
Написати в чат
Електронна пошта
Напишіть в службу підтримки eSputnik.
Надіслати email