February 5, 2025

Кейс: чат-бот для репетитора английского языка. Тест на определение уровня английского

Клиент – Аня – репетитор английского языка. Обучает как детей, так и взрослых всех возрастов. Индивидуально и небольшими группами по 2-5 человек.

Тех. задание | Кратко о работе | Схема бота | Разбор бота | Итоги | Отзывы

Техническое задание

Ане нужен чат-бот по определению уровня английского языка как для текущих клиентов, так и для вовлечения потенциально новых клиентов через соцсети.

Приветственное.
Бот должен включать в себя приветственное сообщение, которое содержит в себе краткое описание с правилами теста.

Основная часть.
Бот прогоняет пользователей через тест, который состоит из 30 вопросов, по 10 на каждый уровень языка (A, B and C). То есть первые 5 вопросов будут A1 уровня, следующие 5 вопросов – А2 уровня (итого 10 вопросов на всю А часть теста). Такая же логика у B и C части теста.

На каждый вопрос теста у пользователя будет на выбор 3-4 варианта ответа c одним верным.

Концовка.
В конце бот должен присваивать пользователю уровень языка, исходя из количества правильных ответов (присылать картинку + текст). Также добавлять пользователя в группу с соответствующим уровнем владения языка для последующей сегментации аудитории.

Система подсчёта баллов.
За каждый правильный ответ пользователь получает +1 балл. Если пользователь даёт 7+ правильных ответов (то есть набирает 7 баллов) в А части теста, то он переходит в В часть теста. Если меньше 7 – тест прекращается, присваивая пользователю А1 уровень. Если пользователь правильно отвечает на 7+ вопросов в В части, то он переходит в С часть теста. Если у него 5-6 правильных ответов – присваивается В1 уровень. Если меньше 5 правильных – А2 уровень. В С части похожая логика: дал меньше 5 правильных ответов – В2 уровень, 5-7 правильных – С1 уровень, и 8+ правильных ответов в С части – С2 уровень.

Дополнительное.
Также клиент попросила по возможности сделать логотип для бота и графические элементы (картинки) к последним сообщениям, которые выдают результат теста. То есть в конце теста бот присваивает пользователю уровень языка и скидывает картинку+текст с соответствующим уровнем.

Т.к. я сам являюсь безумным фанатом английского, то был очень вовлечён в процесс разработки этого бота. Я предложил клиенту оформить каждый 5-ый вопрос картиночкой, где пользователю предстоит выбрать правильное английское название того, что изображено на картинке.

У клиента для теста было подготовлено несколько десятков вопросов. Поэтому ей нужно было ещё время рассортировать их, определить последовательность и решить, какие вопросы нужно выбрать среди множества.

Тут я предложил сделать следующее: на каждый вопрос в тесте, который будет скидывать бот пользователю, подготовить 3-4 вопроса. И в боте через блок "Рандомайзер" сделать так, чтобы с шансом в 25% либо 33% выпадал один из 3-4 заготовленных вопросов. В таком случае, если пользователь решит пройти бота ещё раз, то ему с бóльшим шансом будут выпадать совсем другие вопросы, что делает этот тест ещё интереснее))

Также в С2 части теста я предложил один из вопросов сделать следующим: пользователю необходимо будет преобразовать выделенное английское слово в другую его форму и написать боту в чат, где он сравнит введённое слово с правильным и добавит балл в случае верного ответа.

Кратко о проделанной работе

Чат-бота решил сразу собирать на платформе, т.к. бот практически линейный, не считая систему подсчёта баллов. Платформой для бота выбрали LeadConverter, т.к. его функционала с лихвой хватит для данного бота. Также эта платформа самая дешёвая (тариф в 1К сообщений в день от бота стоит всего 490 руб/мес).

Клиент на следующий день подготовила таблицу с вопросами и картинками, расположила их в нужном порядке и предоставила мне. Я сразу начал сборку бота.

Бот был готов через трое суток, претерпев один круг лёгких правок.

Кстати, из-за системы рандомизации вопросов, предложенной мной, у нас всего вышло около 100 блоков с вопросами!

Ссылка на готового бота: https://t.me/engLvlTest_bot

Схема чат-бота

А-часть теста
В-часть теста
С-часть теста

Разбор чат-бота

1. Подготовка к тесту

Бот встречает пользователя с приветственного поста, где вкратце и в лёгкой для восприятия форме объясняются правила теста.

После нажатия кнопки «Start the test!», происходит небольшая 4-секундная задержка, которая сопровождается уведомляющим сообщением о старте А-части теста, после чего начинается тест.

Под капотом сценария в это время происходит следующее:

  1. Добавление пользователей в группу "Начал тест".
    Все операции блока «Действие» (см. картинку ниже) выполняются на бэкграунде и невидимы для пользователей. В нашем случае сначала происходит создание группы "Начал тест" и добавление туда пользователей, которые дошли до этого блока. Это делается для того, чтобы понять, кто из пользователей нажал на кнопку «Start the test!» и приступил к выполнению теста.
  2. Определение переменной {{баллы}} значения 0.
    В данную переменную будут начисляться баллы за верные ответы. Перед началом каждой следующей части теста (B и С части), переменная {{баллы}} будет обнуляться, а затем снова инкрементироваться за каждый верный ответ.
    Это сделано для того, чтобы вести счёт правильных ответов пользователя в каждой из частей теста.
  3. Определение переменной {{всего}} значения 0.
    Эта переменная также считает верные ответы пользователей. Только в отличие от переменной {{баллы}}, она не обнуляется, а ведёт счёт правильных ответов до конца всего теста.

2. Основная часть теста

Согласно ТЗ, на каждый вопрос в тесте у бота должно быть заготовлено 3-4 вопроса, один из которых случайным образом будет отправляться пользователю.

Это мы делаем через блок «Рандомайзер», устанавливая выборку из 3 либо же 4 вариантов, на каждый по 33 либо 25% соответственно.

Случайным образом пользователю отправится только один вопрос.

После ответа на каждый вопрос шаг переходит к блоку «Действие», где верный ответ (т.е. нажатие на правильную кнопку) добавляет +1 балл к нашим переменным. Если пользователь ответил неверно, то балл не начисляется и шаг переходит к следующему вопросу (через блок «Рандомайзер»).

Также каждый 5-ый вопрос оформлен в виде картиночек, где пользователю необходимо правильно обозвать английским словом то, что на ней изображено.

3. Результаты теста

В конце каждой части идёт сравнение переменных. Разберём на примере концовку B-части теста:

  1. Идёт присвоение переменной {{B-баллы}} значения переменной {{баллы}}. То есть сохраняем количество правильных ответов B-части в отдельную переменную (ведь мы помним, что {{баллы}} у нас аннулируются перед следующей частью теста, и чтобы не потерять результат конкретно по этой части, его нужно сохранить в отдельную переменную).
  2. Далее идёт следущая проверка: переменная {{баллы}} больше или равно 7.
  3. Если ответ «Да», то переменная {{баллы}} аннулируется и запускается сообщение-переход на C-часть теста.
  4. Если ответ «Нет», то далее идёт сравнение {{баллы}} со значением 5. Если «Да», то пользователю присваивается уровень B1, если «Нет» – уровень А2.

Как видите, в конце теста приходит сообщение-результат, которое включает в себя картинку + сообщение благодарности о прохохождении теста, а также результаты по каждой из частей.

Все ошибочные моменты в тесте позже разбираются лично с репетитором.

В самом конце идёт блок «Действие», где пользователи добавляются в группы с соответствующим уровнем языка. Данный приём облегчит просмотр аналитики бота, где будет видно пользователей, которые прошли тест, сразу вместе с их уровнем (группой).
Также это большой плюс для последующей сегментации аудитории.

Дополнительное задание

Клиент попросила сделать аватарку для чат-бота, приветственную превьюшку, а также картиночки для каждого уровня английского.

Данное задание было выполнено в редакторе Figma. Клиент всё одобрила без правок.

Итоги

Репетитору, да и мне тоже, очень понравился данный чат-бот. Особенно Ане понравлися функционал рандомайзера, который мы всё-таки решили попробовать реализовать. Благодаря этому каждый ученик после первого прохождения теста может проработать свои ошибки вместе с репетитором, а затем по новой пройти бота. Ведь в следующий раз с шансом в 66-75% все вопросы будут совершенно другими!

В результате:

  • Бот экономит время на предварительное определение языковых способностей учеников, а также повышает вовлечённость всех пользователей (ведь тест является своего рода геймификацией)
  • Бот собирает данные (ответы на вопросы теста), что позволяет репетитору установить пробелы учеников и качественно подготовить индивидуальный план обучения (заострить больше внимания на проблемных темах)
  • Благодаря проверке на запуск теста, через бот можно посмотреть тех пользователей, которые в него заходили, но не начинали тест. Это позволит настроить отдельную рассылку на них для прогрева. Также таким пользователям можно будет просто напомнить о тесте
  • Благодаря сегментации пользователей на языковые уровни, начинающим ученикам можно будет через бот рассылать дополнительные обучающие материалы, а также предлагать дополнительные услуги, направленные на повышение уровня языка
  • Из-за своей простоты и вовлечённости этот бот очень активно рекламируется среди любителей английского языка

Отзыв клиента


Хотите создать чат-бота для бизнеса или блога, но не знаете, с чего начать? Оставьте заявку на бесплатную консультацию ➜ Оставить заявку

Расскажите о своих задачах, и я найду оптимальное решение для вашего бизнеса или проекта.


Заказать чат-бота | Мои кейсы | ↑ Наверх