Компьютерные инструменты в образовании, 2022
№ 2: 97-110
УДК: 004.42+004.62
http://cte.eltech.ru
doi:10.32603/2071-2340-2022-2-97-110
ИНФОРМАЦИОННО-СПРАВОЧНЫЙ ЧАТ-БОТ ДЛЯ ОБУЧАЮЩИХСЯ И ПРЕПОДАВАТЕЛЕЙ ВУЗА НА ОСНОВЕ СОЦИАЛЬНОЙ СЕТИ VK И СИСТЕМЫ MOODLE
Булаев А. А.1, кандидат технических наук, доцент, El [email protected] ЖидковА. В.1, магистрант, [email protected]
1 Ульяновский государственный университет, ул. Льва Толстого, 42, 432017, Ульяновск, Россия
Аннотация
В статье представлена реализация чат-бота для взаимодействия с системой обучения Moodle на уровне «преподаватель-обучающийся» с использованием социальной сети VK. Предложены алгоритм подключения чат-бота к Moodle и VK, физическая модель базы данных чат-бота. Разработа-ны роли пользователей чат-бота «администратор» и «студент» с соответствующими им функциями, диаграммы прецедентов и диаграмма развёртывания. Приведён пример реализации чат-бота на языке Python, представлены его интерфейсы.
Ключевые слова: чат-бот, Moodle, VK, веб-служба, REST-запрос,JSON-формат.
Цитирование: Булаев А. А., ЖидковА. В. Информационно-справочный чат-бот для обучающихся и преподавателей вуза на основе социальной сети VK и системы MOODLE // Компьютерные инструменты в образовании. 2022. № 2. С. 97-110. doi: 10.32603/2071-2340-2022-2-97-110.
1. ВВЕДЕНИЕ
Большая часть обучающихся средних и высших учебных заведений используют социальные сети как основной ресурс для общения, получения актуальной информации об обстановке в мире и новостях в школе или вузе. В связи с повсеместным внедрением виртуальных образовательных сред для организации общего пространства обучения становится актуальной задача взаимодействия преподавателей и обучающихся с использованием социальных сетей [1].
Наиболее удобным средством интеграции внешних ресурсов в социальные сети является разработка чат-бота, который принимает текстовые сообщения и команды от пользователя, распознает и выводит необходимый результат.
На данный момент существуют десятки low-code платформ и конструкторов (AimyLogic, Bot kits, Botmother, Chatgun, Manynot, Chatforma, Dialogflow), облегчающих разработку чат-ботов, с помощью которых можно создать простой бот без использования нейронных сетей и интеграции с внешними сервисами и с минимальными знаниями программирования.
Для создания более сложных ботов требуются навыки программирования. Наиболее популярными языками для таких задач являются: PHP, JavaScript, Java, Python, Golang.
Существующие системы поддержки дистанционного образования ориентированы на вузы и на взаимодействие «преподаватель-обучающийся» и, в основном, предоставляют средства для формирования учебно-методических материалов в форме лекций, тестов, заданий, то есть обеспечивая поддержку теоретической части курса. Для формирования практических навыков применяются лабораторные работы в определенных программных средах, выполнение которых отслеживает преподаватель или тренажёры (виртуальные или физические). Создание виртуальных тренажёров требует от их разработчика глубоких навыков программирования и опыта работы с графическими средствами моделирования, что не позволяет специалисту конкретной предметной области самостоятельно создавать тренажеры [2].
Одной из наиболее востребованных систем дистанционного обучения в настоящее время является Moodle. Данная система позволяет гибко настраивать элементы курса, задания, тесты, лекционные материалы, а также разрабатывать дополнительные плагины для реализации, например, виртуальных тренажёров. Отдельно следует выделить возможность взаимодействия с внешними ресурсами с помощью специальных веб-служб и API.
Зачастую возникает необходимость своевременного уведомления обучающихся о новых элементах курса (лекциях, тестах, лабораторных работах), сроках завершения их сдачи, а для преподавателей — удобной загрузки новых заданий или отправки объявлений студентам. В настоящее время самый простой способ взаимодействия между преподавателем и обучающимися — это социальные сети. Однако для этого требуется вручную создать группу, найти и добавить в неё всех участников, что требует дополнительного времени.
В данной статье предлагается разработка чат-бота, который позволяет привязывать пользователя Moodle к пользователю в социальной сети VK и, в зависимости от прав доступа (преподаватель, обучающийся, секретарь, заведующий кафедрой и т. д.), управлять объявлениями и материалами курсов или получать информацию о заданиях по учёбе непосредственно из социальной сети.
2. ОРГАНИЗАЦИЯ ОБРАЗОВАТЕЛЬНОГО ПРОЦЕССА С ПОМОЩЬЮ СОЦИАЛЬНЫХ СЕТЕЙ И ЧАТ-БОТОВ
При взаимодействии в рамках образовательного процесса в социальных сетях должны соблюдаться следующие принципы взаимодействия:
— организация диалоговой экспертной среды общения;
— общение, обсуждение в личных сообщениях;
— формализм, соблюдение научных принципов;
— ответы на вопросы, организация чатов.
Типы взаимодействия для решения образовательных задач при организации дистанционного обучения в вузе:
— обмен информацией—сообщениями, файлами, любым другим допустимым контентом — направлен на поддержку при проведении консультации, лекции, семинара по обсуждаемым вопросам и темам;
— взаимодействие — создание закрытых или публичных групп или чатов для организации лекций, семинаров и, по возможности, лабораторных работ с помощью инструментов визуализации социальных сетей.
С точки зрения общих признаков все социальные сета позволяют общаться посредством отправки сообщений. Различия касаются, прежде всего, интерфейса отправки сообщений и дополнительных функций, которые может применять пользователь (выделение текста сообщения и его копирование в другое сообщение, создание ответного сообщения с использованием предыдущего как цитаты и т. д.).
Для взаимодействия с социальными сетями используются специальные REST-API, которые позволяют с помощью протокола HTTPS запрашивать определенные данные со стороны социальной сети и отправлять в обратном направлении текстовые сообщения, изображения, файлы, видео и другие медиаданные.
В силу мощных API, подробной документации и большого количества готовых примеров наиболее часто чат-боты разрабатываются в связке с социальными сетями VK и Telegram.
Преимущества использования чат-ботов:
— автоматизация базовых информационно-справочных функций при обучении;
— реализация алгоритмов взаимодействия пользователей между собой и с обучающей системой в целом;
— автоматическое общение на основе искусственного интеллекта и машинного обучения;
— формирование рекомендаций в ходе процесса обучения и по выбору изучаемых курсов за счёт применения экспертных систем;
— реализация справочной системы в режиме «вопрос-ответ».
Социальная сеть «Вконтакте» (VK) активно используется студентами различных вузов для общения и, поскольку, большинство студентов зарегистрировано в сети, администрация вузов и преподаватели используют VK как площадку для публикации актуальной информации в специальных сообществах.
Рассмотрим несколько примеров образовательных ботов.
AndyRobot—бот по обучению английскому языку. Предлагает словарь, ведет разговор, под-бирает контент для пользователя.
ucheba_bot — бот, который поможет выбрать вуз, колледж или курсы в соответствии с требованиями пользователя. Кроме того, программа ежедневно может присылать подборку учебных заведений запрашиваемой тематики.
На базе ТГУ в рамках проекта «Цифровая экономика» в 2020 году разработан информа-ционнообразовательный бот U-me. Бот интегрирован с несколькими информационными системами ТГУ, в первую очередь, с личными кабинетами студентов. Это в перспективе поможет отслеживать «цифровой след» студентов и предлагать им рекомендации, исходя из поступивших запросов. У U-me также есть интеграция с сайтом persona.tsu.ru и с расписанием занятий: через чат-бот можно быстро получить ссылку на актуальную информацию. Бот имеет кнопочную структуру и предлагает выбор определенных действий.
Таким образом, чат-боты вошли в личную и социальную жизнь людей, и сфера их применения расширяется с каждым днем. Преимущества использования чат-ботов — это возможность автоматизации определенных действий людей и представления информации, взятой из актуальных источников, с возможностью обратной связи.
3. СТАНДАРТЫ В ОБЛАСТИ ЭЛЕКТРОННОГО ОБУЧЕНИЯ
Крупные корпорации и ведущие университеты разрабатывают свои системы управления, в связи с чем в настоящее время используется достаточно большое число таких
систем управления, построенных по различным принципам. Наиболее широкое применение при разработках разных систем электронного обучения и взаимодействия с внешними сервисами получили следующие стандарты (таблица 1).
Таблица 1. Стандарты в области электронного обучения
Протокол Расшифровка Описание и особенности
AICC Aviation Industry CBT Committee (Международный комитет по компьютерному обучению в авиации) Первоначальный стандарт для электронного обучения, первая версия которого была разработана еще в 1993 году. Данный стандарт поддерживается многими системами дистанционного обучения и средствами разработки электронных курсов. Главное достоинство — обеспечение совместимости систем независимо от производителя
IMS Instructional Management System (Системы организации обучения) Основные направления разработки спецификаций IMS — метаданные, упаковка содержания, совместимость вопросов и тестов, а также управление содержанием
SCORM Sharable Content Object Reference Model (Модель обмена учеными материалами) Публикация и воспроизведение контента на различных платформах, отслеживание завершения курса и потраченного времени, возможность архивировать устаревшее содержимое в стандартном узнаваемом формате, разработка базового контента или сложных курсов с высокими производственными затратами
LTI Learning Tools Interoperability (Взаимодействие средств обучения) Стандартный протокол, разработанный консорциумом IMS Global Learning в 2010 г. С его помощью обеспечивается интеграция онлайн-служб (таких как OneNote, Office Mix и Office 365) с системой управления обучением LMS. LTI — это стандарт, который связывает контент и ресурсы с учебными платформами [3]
xAPI сокращенно от Experience API, ранее Tin Can API Спецификация, которая описывает формат передачи статистики между курсом / сайтом / приложением / любым другим провайдером учебной активности и базой данных — LRS. Возможности: передача статистики по процессу обучения, поддержка различных сценариев обучения: игры, моделирование и симуляция, смешанное обучение, ведение учета всех действий учащегося во время прохождения курса [3]
Cmi5 Computer Managed Instruction Расширение xAPI: возможность обучения в режиме оффлайн с последующей синхронизацией, улучшенная производительность и совместимость со всеми LMS, отслеживание любых действий учащегося
В 2019 году была опубликована статистика курсов, загружаемых на SCORM Cloud (рис. 1).
Как видно из диаграммы наиболее используемым является SCORM, так как это более простой протокол и поддерживается всеми LMS. Для использования xAPI требуется функционал LRS.
Система управления обучением Moodle поддерживает перечисленные выше стандарты электронного обучения и имеет строго структурированное содержимое с возможностью взаимодействия с ним при помощи специальных веб-служб на основе REST-запросов.
4. ТЕХНОЛОГИИ ДЛЯ ВЗАИМОДЕЙСТВИЯ ЧАТ-БОТА С MOODLE И VK
Веб-службы Moodle могут взаимодействовать друг с другом и со сторонними приложениями посредством сообщений, основанных на определённых протоколах (SOAP, XML-RPC и т. д.) и соглашениях (REST). Веб-служба является единицей модульности при использовании сервис-ориентированной архитектуры приложения. Для каждой функции в курсе или элементе курса Moodle есть своя веб-служба с задаваемыми правами доступа. Дерево веб-служб, необходимых для корректной работы чат-бота, представлено на рисунке 2 [4].
которых зарегистрирован *УРеа
Рис. 2. Дерево веб-служб Moodle для работы чат-бота
Инфраструктура веб-сервисов, разработанных для взаимодействия с клиентом, работает по алгоритму, представленному на рисунке 3.
Современные программные продукты, ориентированные на пользователей, разрабатываются как интеграционные модули, позволяющие связать различные веб-ресурсы и обеспечить удаленный доступ с мобильных устройств. Многообразие веб-служб для различных задач требует технологий подключения и взаимодействия.
Рис. 3. Алгоритм взаимодействия чат-бота с веб-службой Moodle
Ключевые технологии для Web-служб Moodle: язык XML, технология SOAP, технология WSDL, технология UDDI.
Дополнительные стандарты и технологии для Web-сервисов: стандарт ebXML, стандарт XML Digital Signatures (XML-DSIG), язык Security Assertions Markup Language (SAML), технология Extensible Key Management Specification (XKMS), язык Web Services Flow Language (WSFL) и др. [5]
5. ПРОЕКТИРОВАНИЕ ИНФОРМАЦИОННО-ОБРАЗОВАТЕЛЬНОГО VK-БOТА
В разрабатываемом чат-боте представлены два типа пользователей: обычный пользователь (студент) и администратор. На рисунке 4 представлена диаграмма прецедентов для администратора, а на рисунке 5 представлена диаграмма прецедентов для обычного пользователя, которые отображают возможные действия со стороны данных типов пользователей. При необходимости имеется возможность создания дополнительных типов пользователей в зависимости от требуемых задач (например секретарь, заведующий кафедрой, декан и др.).
Студент может выбирать тему из списка предложенных тем по изучаемому материалу и делать выбор вопроса из списка предложенных вопросов. Также студент может выйти из беседы или самостоятельно вступить в беседу. Администратор может создавать и удалять тему, вопросы, осуществлять рассылку информации, добавлять студента в беседу или удалять из неё.
Для хранения информации о пользователях, их привилегиях и токенах разработана физическая модель базы данных (рис. 6). База данных содержит 5 таблиц и имеет возможность расширения.
Рис. 4. Диаграмма прецедентов администратора
Рис. 5. Диаграмма прецедентов пользователя
Рис. 6. Физическая модель базы данных чат-бота
6. ВЗАИМОДЕЙСТВИЕ ЧАТ-БОТА С ВЕБ-СЛУЖБАМИ МООРЬЕ
УК-бот как внешнее приложение взаимодействует с веб-службами Моо^е. Прежде всего, это взаимодействие осуществляется на уровне доступа к базе данных электронного образовательного ресурса. На рисунке 7 представлен алгоритм взаимодействия на уровне аутентификации.
Рис. 7. Алгоритм взаимодействия с сервисом аутентификации
Первоначальная задача при таком взаимодействии — получение Моо^е-токена,
необходимого для аутентификации пользователя веб-службы. Если пользователь не зарегистрирован в БД, он получит токен, и система сгенерирует сообщение об успешной регистрации, в противном случае, получит сообщение о том, что регистрация уже была произведена ранее. Регистрация пользователя представлена на диаграмме последовательностей (рис. 8).
Рис. 8. Диаграмма последовательностей при регистрации пользователя у чат-бота
Структурно для функционирования чат-бота необходимы: сам чат-бот (реализация которого приводится на языке Python с использованием дополнительных модулей), пользователь VK (мобильный или десктопный клиент, например браузер), сама система Moodle учебного заведения (рис. 9).
Для получения информации из курсов Moodle чат-боту необходимы соответствующие права. Предлагается три основных способа доступа:
— выдача боту прав администратора Moodle;
— выдача доступа ко всем курсам;
— отправка запросов от каждого пользователя по его токену.
Рис. 9. Диаграмма развёртывания чат-бота с Moodle и VK
После выбора способа авторизации необходима разработка соответствующих типов пользователей. Для проверки прав администратора создается специальный класс Admin. В качестве входного документа на проверку задается файл формата JSON. Для связи с REST-сервером через токены разрабатываются методы генерации токенов подключения участникам сообщества.
Отдельно реализуется функциональность для отправки сообщений пользователям в социальной сети VK двух типов: в личные сообщения и в беседу. Дополнительно необходима возможность загрузки медиафайлов: изображений, аудио- и видеоматериалов.
7. ОПИСАНИЕ ИНТЕРФЕЙСА ЧАТ-БОТА
Чат-бот имеет удобный и интуитивно понятный интерфейс, который представляет собой набор элементов, нажатие на которые реализует пользовательские события. В социальной сети VK для создания чат-бота создается специальное сообщество, у которого генерируется секретный ключ для авторизации бота в сети.
Пользователь имеет возможность подписаться на сообщения от бота, нажав на кнопку «Добавить в беседу». Далее требуется авторизация в системе Moodle для привязки пользователя VK к Moodle.
На рисунке 10 показан интерфейс оконного сообщения для начала общения. Пользователь может ввести сообщение в текстовое поле и нажать кнопку «Отправить».
Рис. 10. Окно отправки сообщений от пользователя
При нажатии в социальной сета на гиперссылку «Перейти к диалогу с пользователем» открывается лента, показывающая историю общения. Чат-бот позволяет выбирать чаты для общения, что показано на рисунке 11.
Рис. 11. Выбор варианта общения с чатом
Также чат-бот информирует студента о новых материалах, выложенных в разделах курса (рис. 12).
Александр начать
ДяеаиИ гнвнаномикка кто вы ?
в курсе Технология программирования' новое задание!
аатгох '»28
Войди! и с помощью вашего аккаукта ИприЛтлп-иЬ*и гиЛод*1/г*у*х рбр СМЛчя<*>1
МЛТОХ 16 Л
вы успении «регистрированы ск сгудмл . теперь вы сможете ПйЛучатг» соойщений о размещении новы* аа^анкм , новы! г/рси и новых оц&нквх на нашего личного кабинета прямо в личное
СОО&ИЧНЧВ '9
Напишите содОще
• Ё) ©
Рис. 12. Интерфейс новостных сообщений от бота
У преподавателя есть дополнительные возможности по взаимодействию с чат-ботом. Ему доступна возможность создавать чаты для общения и рассылать различные объявления для разных групп студентов.
На рисунке 13 показан вариант создания чат-бота для общения с группой. При этом преподаватель видит историю общения в чате, а студенты, зарегистрированные в сооб-
ществе, получают отправленные преподавателем объявления. Таким образом, организовано взаимодействие между преподавателями, студентами и электронным образовательным ресурсом.
кМйа^Оф
,, iKJT FOX ГГ
Чи IiI Г*Ии днии Ii
Длекиидр У M^cupMirctomtd
ВОТ FOX Чркл«
ч»т cögrroM #1
4MMt group
ЧатуяяШи w
М_дгоир*ч*т с Оогеы Г1
I как Чат сботои I
Рис. 13. Создание чата для общения со студентами
8. ЗАКЛЮЧЕНИЕ
В данной статье представлена реализация чат-бота для социальной сети VK, позволяющего взаимодействовать с системой Moodle, уведомлять об объявлениях, новых заданиях в курсах, сроках окончания их выполнения. Дополнительно реализовано общение на уровне «преподаватель-студент» в самой сети VK для более активного обмена информацией и уточнения возникающих вопросов. Аналогичным образом имеется возможность создания чат-бота для других социальных сетей и мессенджеров, например Telegram, Viber, для чего требуется лишь изменить методы подключения к мессенджеру, отправки и получения сообщений.
Список литературы
1. Смагин А. А., Булаев А. А. Профессионально-ориентированная информационная сеть кафедры вуза // Методические вопросы преподавания инфокоммуникаций в высшей школе. 2014. Т. 3. № 4. С. 153-155.
2. Булаев А. А., Жидков А. В. Разработка виртуального 3Б-тура УлГУ // Ученые записки УлГУ. Серия: Математика и информационные технологии. 2020. № 2. С. 1-6.
3. Форматы дистанционного обучения: сравнение AICC, Scorm, TinCan, CMI5 — LmsList.ru. URL: https://lmslist.ru/ (дата обращения: 06.04.2022).
4. EDUCAUSE Learning Initiative. Seven Things You Should Know About Personal Learning Environments. 2009. URL: https://library.educause.edu/~/media/files/library/2009/5/eli7049-pdf.pdf (дата обращения: 01.03.2016).
5. Бабанская О. М., Можаева Г. В., Степаненко А. А., Фещенко А. В. Организация системы мониторинга электронного обучения в ЪМБ МООБЪБ // Открытое и дистанционное об разование. 2016. № 3 (63). С. 27-35. ао1: 10.17223/16095944/63/4
Поступила в редакцию 21.04.2022, окончательный вариант— 16.06.2022.
Булаев Алексей Александрович, кандидат технических наук, доцент кафедры телекоммуникационных технологий и сетей Ульяновского государственного университета, ИЗ [email protected]
Жидков Александр Вячеславович, магистрант по специальности Инфокоммуникаци-онные технологии и системы связи Ульяновского государственного университета, [email protected]
Computer tools in education, 2022 № 2: 97-110 http://cte.eltech.ru
doi:10.32603/2071-2340-2022-2-97-110
Informational Chat-bot for Students and Teachers Based
on VK and MOODLE
Bulaev A. A.1, PhD, Associate Professor, El [email protected] Zhidkov A. V.1, Master's student, [email protected]
1 Ulyanovsk State University, st. L. Tolstoy, 42, 432017, Ulyanovsk, Russia
Abstract
This article presents the implementation of a chatbot for interacting with the Moodle learning system at the teacher-student level using the VK social network. An algorithm for connecting a chatbot to Moodle and VK, a physical model of the chatbot database are proposed. The user roles of the chatbot "administrator"and "student"with their corresponding functions, use-case diagrams and a deployment diagram have been developed. An example of the implementation of a chatbot in Python is given, its interfaces are presented.
Keywords: chatbot, Moodle, VK, web-service, REST-request, JSON.
Citation: A. A. Bulaev and A. V. Zhidkov, "Informational Chat-bot for Students and Teachers Based on VK and MOODLE," Computer tools in education, no. 2, pp. 97-110, 2022 (in Russian); doi: 10.32603/2071-2340-2022-2-97-110
References
1. A. A. Smagin and A. A. Bulaev, "Professional'no-orientirovannaya informatsionnaya set' kafedry vuza" [Professionally-oriented information network of the university department], Metodicheskie voprosy prepodavaniya infokommunikatsii v vysshei shkole, vol. 3, no. 4, pp. 153-155, 2014 (in Russian).
2. A. A. Bulaev and A. V. Zhidkov, "UlSU virtual 3D-tour development," Uchenye zapiski UlGU. Seriya: Matematika i informatsionnye tekhnologii, no. 2, pp. 1-6, 2020 (in Russian).
EynaeB A. A., XugKOB A. B.
3. lmslist, distance learning formats: comparison AICC, Scorm, TinCan, CMI5," in LmsList.ru, 2022 (in Russian). [Online]. Available: https://lmslist.ru/
4. EDUCAUSE Learning Initiative, "Seven Things You Should Know About Personal Learning Environments," in https://www.educause.edu/eli, 2009. [Online]. Available: https://library.educause.edu/-/ media/files/library/2009/5/eli7049-pdf.pdf
5. O. M. Babanskaja, G. V. Mozhaeva, A. A. Stepanenko, and A. V. Feshhenko, "The organization of system of monitoring of electronic training in LMS MOODLE," Otkrytoe i distantsionnoe obrazovanie, vol. 3, no. 63, pp. 27-35, 2016 (in Russian); doi: 10.17223/16095944/63/4
Received 21-04-2022, the final version — 16-06-2022.
Alexey Bulaev, PhD, Associate Professor at the Department of Telecommunication Technologies and Networks, Ulyanovsk State University, El [email protected]
Alexander Zhidkov, Master's student in Infocommunication Technologies and Communication Systems, Ulyanovsk State University, [email protected]