Проекты*

Remember Bot – чат-бот школьного дневника

Работа победителей открытой городской научно-практической конференции «Инженеры будущего» по направлению «Инженеры» в секции «Инновации умного города. Умная школа» среди работ учащихся 10–11 классов

Направление работы: Программирование, Интеллектуальные системы
Авторы работы: ГБОУ Школа № 1150
Предметы: Информатика
Классы: 10 класс
Мероприятия: Открытая городская научно-практическая конференция «Инженеры будущего» по направлению «Инженеры» 2022 года

Актуальность

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

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

Цель

Создать востребованный чат-бот школьного дневника в Telegram.

Задачи

  1. Проанализировать востребованность проекта.
  2. Изучить аналоги проекта.
  3. Собрать необходимую информацию для создания проекта.
  4. Разработать функционирующий чат-бот и провести его тестирование.
  5. Популяризировать проект и постепенно его дорабатывать.

Оснащение и оборудование, использованное при создании работы

  • Персональный компьютер и смартфон с установленным на них программным обеспечением (Python, C++)

Описание

За основу программы взят бот «Моя Москва». Однако его преимущество в том, что Telegram является более популярным приложением, и людям, чтобы узнать расписание, не приходится скачивать отдельное приложение.

После анализа имеющихся аналогов авторы разработали алгоритм будущего бота.

Согласно блок-схеме основными действиями пользователя будут авторизация при помощи токена и выбор необходимых команд. Без регистрации пользователя (без использования валидного токена) дальнейшая работа алгоритма невозможна.

Пользователь запускает работу, прописывая команду «/start» в чате бота. Далее получает ссылку из ЭЖД, после чего отправляет её в Telegram. Бот обрабатывает ссылку, получая из неё токен, а затем отдаёт запрос на получение основной информации об этом токене. Основная информация – это «статус» пользователя (статусы 3-х типов: «ученик», «учитель», «родитель»), идентификатор статуса (ID) и Ф. И. О.

Далее пользователю становится доступно меню функций в Telegram.

После выбора нужной функции пользователь переходит в меню выбранной функции в боте (например, расписание предметов).

Далее, выбрав предмет, бот отправляет запрос на получение информации о предмете на сайт ЭЖД (dnevnik.mos.ru); пользователь получает полную информацию о предмете.

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

Для выхода из сеанса пользователю достаточно выбрать в меню функцию «Сменить токен». Это нужно для того, чтобы менять пользователя ЭЖД или обновить текущий сеанс, так как сессия ЭЖД может устареть.

Бэкенд и фронтенд авторами были написаны полностью с нуля на языке программирования Python.

Результаты работы/выводы

Цели и задачи проекта выполнены. Автор планирует полностью отладить обмен данными между приложениями и добавить возможность редактирования уже добавленных уроков.

Перспективы использования результатов работы

Remember Bot будет постоянно дорабатываться. У авторов в планах добавление функционала для учителей (в боте они смогут смотреть расписание уроков, кабинет, а также оперативно узнавать о заменах) и функции для родителей (благодаря боту они смогут узнавать расписание и домашнее задание своих детей); постоянная доработка и улучшение бота.