StickerAI-Front/ANALYTICS_EVENTS.md

188 lines
11 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Документация по аналитическим событиям
В этом документе представлен полный список событий для отслеживания в приложении с использованием сервиса `customAnalyticsService.ts`. События сгруппированы по экранам и функциональным блокам.
## 1. Общие события приложения
| Событие | Категория | Название события | Значение | Единица измерения |
|---------|-----------|------------------|----------|-------------------|
| Открытие мини-приложения | `app` | `app_open` | - | - |
## 2. Навигация
| Событие | Категория | Название события | Значение | Единица измерения |
|---------|-----------|------------------|----------|-------------------|
| Открытие экрана Главная | `navigation` | `view_home` | - | - |
| Открытие экрана Галерея | `navigation` | `view_gallery` | - | - |
| Открытие экрана Стикерпаки | `navigation` | `view_sticker_packs` | - | - |
| Открытие экрана Профиль | `navigation` | `view_profile` | - | - |
| Открытие экрана Обрезка фото | `navigation` | `view_crop_photo` | - | - |
| Открытие экрана Создание стикерпака | `navigation` | `view_create_sticker_pack` | - | - |
| Открытие экрана Добавление стикера в пак | `navigation` | `view_add_sticker_to_pack` | - | - |
| Открытие экрана Политика конфиденциальности | `navigation` | `view_terms_and_conditions` | - | - |
| Открытие экрана Инструкция | `navigation` | `view_how_to` | - | - |
## 3. Политика конфиденциальности
| Событие | Категория | Название события | Значение | Единица измерения |
|---------|-----------|------------------|----------|-------------------|
| Нажатие на ссылку политики | `terms` | `policy_link_click` | - | `link_url` |
| Принятие политики | `terms` | `accept` | - | - |
| Отклонение политики | `terms` | `decline` | - | - |
## 4. Главный экран (Home)
### 4.1 Верхний блок кнопок
| Событие | Категория | Название события | Значение | Единица измерения |
|---------|-----------|------------------|----------|-------------------|
| Нажатие на кнопку обратной связи | `ui_interaction` | `feedback_button_click` | - | - |
| Нажатие на кнопку инструкции | `ui_interaction` | `instruction_button_click` | - | - |
| Нажатие на кнопку другого бота | `ui_interaction` | `other_bot_button_click` | - | `bot_url` |
### 4.2 Хедер
| Событие | Категория | Название события | Значение | Единица измерения |
|---------|-----------|------------------|----------|-------------------|
| Нажатие на кнопку баланса | `ui_interaction` | `balance_button_click` | - | - |
### 4.3 Загрузка и обработка фото
| Событие | Категория | Название события | Значение | Единица измерения |
|---------|-----------|------------------|----------|-------------------|
| Нажатие на загрузить фото | `photo` | `upload_photo_click` | - | - |
| Применение обрезки фото | `photo` | `crop_photo_apply` | - | - |
### 4.4 Выбор стиля и параметров
| Событие | Категория | Название события | Значение | Единица измерения |
|---------|-----------|------------------|----------|-------------------|
| Нажатие кнопки Чиби стиль | `style` | `chibi_style_click` | - | - |
| Нажатие кнопки Эмодзи стиль | `style` | `emoji_style_click` | - | - |
| Выбор подкатегории Мем | `style` | `meme_subcategory_select` | - | `meme_id` |
| Выбор подкатегории Коллекция | `style` | `collection_subcategory_select` | - | `collection_id` |
### 4.5 Генерация стикера
| Событие | Категория | Название события | Значение | Единица измерения |
|---------|-----------|------------------|----------|-------------------|
| Удачная отправка на генерацию | `generation` | `generation_success` | 1 | `preset_name` |
| Неудачная отправка на генерацию | `generation` | `generation_failure` | - | `error_type` |
### 4.6 Футер
| Событие | Категория | Название события | Значение | Единица измерения |
|---------|-----------|------------------|----------|-------------------|
| Нажатие на кнопку Главная | `footer` | `home_button_click` | - | - |
| Нажатие на кнопку Галерея | `footer` | `gallery_button_click` | - | - |
| Нажатие на кнопку Стикерпаки | `footer` | `sticker_packs_button_click` | - | - |
| Нажатие на кнопку Профиль | `footer` | `profile_button_click` | - | - |
## 5. Экран Галерея
| Событие | Категория | Название события | Значение | Единица измерения |
|---------|-----------|------------------|----------|-------------------|
| Долгое удерживание на изображении | `gallery` | `image_long_press` | - | `image_id` |
| Удаление изображения | `gallery` | `image_delete` | - | `image_id` |
| Нажатие кнопки "Создать стикерпак" | `gallery` | `create_sticker_pack_click` | - | `from_gallery` |
## 6. Экран Стикерпаки
| Событие | Категория | Название события | Значение | Единица измерения |
|---------|-----------|------------------|----------|-------------------|
| Нажатие кнопки "Создать стикерпак" | `sticker_packs` | `create_sticker_pack_click` | - | `from_sticker_packs` |
| Создание стикерпака | `sticker_packs` | `sticker_pack_created` | - | `pack_url` |
| Ошибка создания стикерпака | `sticker_packs` | `sticker_pack_creation_error` | - | `error_type` |
| Удаление стикерпака | `sticker_packs` | `sticker_pack_deleted` | - | `pack_id` |
## 7. Экран Профиль и попап с офферами
| Событие | Категория | Название события | Значение | Единица измерения |
|---------|-----------|------------------|----------|-------------------|
| Нажатие на оффер на экране профиля | `offers` | `profile_offer_click` | - | `offer_id` |
| Нажатие на оффер в попапе | `offers` | `popup_offer_click` | - | `offer_id` |
| Успешная покупка | `payment` | `purchase_success` | `stars_amount` | `star` |
## 8. Экраны онбординга
### 8.1 Экран приветствия (OnboardingWelcome)
| Событие | Категория | Название события | Значение | Единица измерения |
|---------|-----------|------------------|----------|-------------------|
| Открытие экрана приветствия | `navigation` | `view_onboarding_welcome` | - | - |
| Нажатие кнопки "Далее" | `onboarding` | `welcome_next_click` | - | - |
| Нажатие кнопки "Пропустить" | `onboarding` | `welcome_skip_click` | - | - |
### 8.2 Экран инструкции (OnboardingHowTo)
| Событие | Категория | Название события | Значение | Единица измерения |
|---------|-----------|------------------|----------|-------------------|
| Открытие экрана инструкции | `navigation` | `view_onboarding_how_to` | - | - |
| Нажатие кнопки "Далее" | `onboarding` | `how_to_next_click` | - | - |
| Нажатие кнопки "Назад" | `onboarding` | `how_to_back_click` | - | - |
| Нажатие кнопки "Пропустить" | `onboarding` | `how_to_skip_click` | - | - |
| Переключение слайда инструкции | `onboarding` | `how_to_slide_change` | - | `slide_index` |
### 8.3 Экран стикерпаков (OnboardingStickerPacks)
| Событие | Категория | Название события | Значение | Единица измерения |
|---------|-----------|------------------|----------|-------------------|
| Открытие экрана стикерпаков | `navigation` | `view_onboarding_sticker_packs` | - | - |
| Нажатие кнопки "Начать" | `onboarding` | `sticker_packs_start_click` | - | - |
| Нажатие кнопки "Назад" | `onboarding` | `sticker_packs_back_click` | - | - |
## Примеры использования
### Отслеживание открытия приложения
```typescript
import customAnalyticsService from '../services/customAnalyticsService';
// В компоненте App.tsx при монтировании
useEffect(() => {
customAnalyticsService.trackEvent({
telegram_id: getCurrentUserId(),
event_category: 'app',
event_name: 'app_open'
});
}, []);
```
### Отслеживание навигации
```typescript
import customAnalyticsService from '../services/customAnalyticsService';
// В компоненте страницы
useEffect(() => {
customAnalyticsService.trackNavigation('home');
}, []);
```
### Отслеживание генерации стикера
```typescript
import customAnalyticsService from '../services/customAnalyticsService';
// При успешной генерации стикера
const handleGenerationSuccess = (presetName) => {
customAnalyticsService.trackEvent({
telegram_id: getCurrentUserId(),
event_category: 'generation',
event_name: 'generation_success',
value: 1,
unit: presetName
});
};
```
### Отслеживание покупки
```typescript
import customAnalyticsService from '../services/customAnalyticsService';
// При успешной покупке
const handlePurchaseSuccess = (starsAmount) => {
customAnalyticsService.trackPayment('purchase_success', starsAmount, 'star');
};