188 lines
11 KiB
Markdown
188 lines
11 KiB
Markdown
# Документация по аналитическим событиям
|
||
|
||
В этом документе представлен полный список событий для отслеживания в приложении с использованием сервиса `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');
|
||
};
|