Сайт, где пользователи изучают английский язык по видео: смотрят видео, учат слова, практикуют реальные диалоги по этому видео и проходят тесты на понимание контекста. Нужно выполнить задание четко по ТЗ, срок до 4 дней. Всю дополнительную информацию предоставляем, на контакт выходим, доступы предоставляем. Вот детальное ТЗ:
Подключение
• На фронтенде подключить Google Tag Manager (GTM) или напрямую GA4 (gtag.js).
• Проверить, что события видны в GA4 DebugView.
Идентификация
• До регистрации события отправляются с анонимным user_pseudo_id (GA4 создает его автоматически).
• После регистрации привязываем user_id и сохраняем его во всех последующих событиях:
gtag('config', 'G-XXXXXXX', { 'user_id': '<USER_ID>' });
Перечень событий (обязательно реализовать)
Онбординг
• demo_started — когда пользователь выбрал «Попробовать демо».
• demo_completed — когда завершил демо-урок.
• onboarding_start — когда нажал «Начать бесплатно» и перешел к персонализации.
• survey_completed — когда завершил опрос (уровень, цель, график).
• Параметры: level_cefr, goal, schedule.
• starter_plan_shown — показан экран «план обучения».
• lesson1_opened — открыл первый урок.
• lesson1_completed — прошел первый урок.
• signup_shown — показан экран регистрации.
• signup_completed — регистрация (параметр method: email, Google и т.д.).
• trial_started — активирован 7-дневный пробный период.
Уроки
• video_watched — просмотр видео (параметры: lesson_id, seconds).
• quiz_completed — завершил тест (параметры: lesson_id, score).
• ai_dialogue_completed — завершил диалог с AI (параметры: lesson_id, turns).
Что сохраняем в параметрах
• level_cefr = уровень (A1–C2).
• goal = цель (work/travel/study/social/kids).
• schedule = выбранный график (2x15, 3x15, 5x15).
• lesson_id = идентификатор урока.
• score = результат теста.
Проверка (Acceptance Criteria)
• Все события отправляются в GA4 и отображаются в DebugView.
• Каждое событие имеет корректные параметры (например, в survey_completed фиксируются level_cefr, goal, schedule).
• После регистрации события привязываются к user_id.
• Серверные события (триал/подписка/платеж) тоже поступают в GA4.