Проблема
Каждый семестр тысячи преподавателей российских вузов сталкиваются с одной и той же задачей: загрузить учебные материалы в систему дистанционного обучения OdinLMS.
Стандартный процесс выглядит так:
- Открыть платформу
- Зайти в дисциплину
- Выбрать модуль
- Нажать «Создать лекцию»
- Загрузить файл
- Заполнить название
- Написать описание
- Настроить параметры
И так для каждого файла. При 50 лекциях это 4-5 часов монотонной работы.
Техническая задача
API для массовой загрузки у платформы не было. Официально — никак нельзя автоматизировать процесс.
Но мы нашли способ.
Что мы сделали
1. Реверс-инжиниринг API
Проанализировали все сетевые запросы при создании лекции:
- Авторизация и токены
- Структура запросов на создание
- Загрузка файлов
- Привязка к модулям
Воссоздали полную логику работы с платформой.
2. Chrome Extension
Разработали расширение с современным интерфейсом:
- Drag-n-drop загрузка файлов
- Автоматическое получение модулей дисциплины
- Генерация названий из имён файлов
- Прогресс-бар и журнал событий
- Batch-загрузка без ограничений
3. Безопасность
- Расширение работает только на домене odin.study
- Использует существующий токен авторизации
- Не передаёт данные на сторонние серверы
- Весь код открыт для аудита
Технологии
| Компонент |
Технология |
| Расширение |
Chrome Extension Manifest V3 |
| Интерфейс |
HTML/CSS/JavaScript |
| API-запросы |
Fetch API |
| Файлы |
FormData, File API |
| Хранение |
Chrome Storage API |
Функционал
Что умеет расширение:
- ✅ Загружать неограниченное количество файлов
- ✅ Автоматически создавать лекции с правильными названиями
- ✅ Генерировать описания
- ✅ Работать с PDF, DOC, DOCX, PPT, PPTX, XLS, XLSX
- ✅ Показывать прогресс в реальном времени
- ✅ Вести журнал всех операций
- ✅ Скрывать материалы в таблице оценок
Совместимость:
- Google Chrome ✅
- Yandex Browser ✅
- Microsoft Edge ✅
- Opera ✅
- Любые Chromium-браузеры ✅
Результат
| До |
После |
| 5 часов на 50 лекций |
5 минут на 50 лекций |
| Ручное заполнение каждого поля |
Автоматическая генерация |
| Монотонная работа |
Drag-n-drop и кнопка «Загрузить» |
Экономия времени: 98%
Расширение распространяется бесплатно и уже помогает преподавателям экономить часы работы каждый семестр.