# Про запуск сценарію з реклами на Facebook

Facebook Ads дозволяє запускати різні сценарії ботів для різних рекламних кампаній. Це дозволяє створювати персоналізовані досвіди для різних аудиторій та відстежувати ефективність кожної кампанії окремо.

## Контекст і проблема

У багатьох випадках потрібно запускати різні сценарії для різних рекламних кампаній:
- Різні пропозиції для різних аудиторій
- Персоналізація на основі джерела трафіку
- Відстеження ефективності кожної кампанії
- Оптимізація конверсій для різних кампаній

Запуск сценарію з реклами вирішує цю задачу, дозволяючи налаштувати унікальний сценарій для кожної рекламної кампанії.

## Основні концепції

### Налаштування в Facebook Ads

Для запуску сценарію з реклами потрібно:
1. Створити рекламну кампанію в Facebook Ads
2. Налаштувати "Call to Action" → "Send Message"
3. Вибрати "Message Template" → "Create New" → "Partner App" → "Select Flow"
4. Отримати JSON код з Kwizbot та вставити в Facebook Ads

### JSON конфігурація

JSON код містить конфігурацію клавіатури з кнопками:
- Кнопки, які ведуть на інший блок
- Кнопки-посилання з параметрами `ActionType: "open-url"` та `ActionBody`

## Варіанти підходів

### Один сценарій vs багато сценаріїв

**Один сценарій для всіх кампаній:**
- ✅ Плюси: Простота підтримки
- ❌ Мінуси: Неможливість персоналізації для різних аудиторій

**Багато сценаріїв для різних кампаній:**
- ✅ Плюси: Персоналізація, відстеження ефективності
- ❌ Мінуси: Складніша підтримка

**Чому використовуємо багато сценаріїв:**
Це дозволяє створювати персоналізовані досвіди для різних аудиторій та відстежувати ефективність кожної кампанії окремо.

## Прийняті рішення

### Використання реферальних міток

Для відстеження джерела трафіку використовуються реферальні мітки (`ref`, `ref_source`, `ref_ad_id`), які дозволяють:
- Визначати, з якої кампанії прийшов користувач
- Персоналізувати повідомлення на основі джерела
- Відстежувати ефективність кожної кампанії

### Обмеження кнопок

Facebook Messenger Platform має обмеження на кількість кнопок:
- Максимальна кількість кнопок: 3 для початкового повідомлення
- Деякі типи кнопок можуть не підтримуватися в рекламі

## Наслідки для користувачів і імплементації

### Для інтеграторів

При налаштуванні запуску сценарію з реклами важливо:

1. **Створити унікальний сценарій** — для кожної рекламної кампанії
2. **Налаштувати клавіатуру** — з правильними типами кнопок
3. **Отримати JSON код** — з Kwizbot та вставити в Facebook Ads
4. **Додати реферальні мітки** — для відстеження джерела трафіку

### Типові помилки

**Помилка:** JSON код не працює в Facebook Ads  
**Проблема:** JSON не відповідає формату Facebook Messenger Platform  
**Рішення:** Перевірити формат JSON та обмеження Facebook Messenger Platform

**Помилка:** Кнопки не відображаються  
**Проблема:** Перевищено обмеження на кількість кнопок або неправильний формат  
**Рішення:** Перевірити кількість кнопок та їх формат

**Помилка:** Неможливо відстежити джерело трафіку  
**Проблема:** Не додано реферальні мітки до URL  
**Рішення:** Додати реферальні мітки до URL рекламної кампанії

## Приклади використання

### JSON конфігурація кнопки

```json
{
  "ActionType": "open-url",
  "ActionBody": "http://example.com"
}
```

### Структура сценарію

1. Створити блок "Повідомлення з клавіатурою"
2. Додати кнопки відповідно до типів
3. Отримати JSON код з Kwizbot
4. Вставити JSON в Facebook Ads

## Пов'язані документи

- **Reference:** [Facebook Messenger Platform](https://developers.facebook.com/docs/messenger-platform) — офіційна документація Facebook
- **Explanation:** [Реферальні мітки з реклами Facebook](/uk/scenariodialog/explanation/facebook-ads-referral-tags.md) — відстеження джерела трафіку
- **Explanation:** [Інлайн-клавіатура](/uk/scenariodialog/explanation/inline-keyboard.md) — налаштування клавіатури

