Бот ВКонтакте для регистрации на события с помощью QR-кода.
Использует API ВКонтакте для чат-ботов и pythonanywhere.com как облачный сервер.
Бот был призван упростить процесс регистрации студентов на отработки по физической подготовке в МГТУ им. Баумана. В результате использования приложения время регистрации сократилось более чем в 20 раз. Простые модификации кода позволят адаптировать бота под любые схожие задачи.
- Администратор сообщества с помощью секретных команд (папка secret_commands) создает событие и открывает на него регистрацию.
- Студенты в свою очередь регистрируются на событие и получают в ответном сообщении QR-код.
- В назначенное время студенты приходят на событие и предъявляют организатору свой QR-код. То же самое они делают после окончания отработки. Процесс считывания QR-кода осуществляется любым мобильным приложением для этих целей.
- Организатор отправляет боту csv-файл со списком QR-кодов
- Студенты просматривают историю событий, расписание, и процесс начинается заново с пункта 1.
- Скопируйте репозиторий на сервер (рекомендуется pythonanywhere.com)
- Выберите сообщество ВК, к чату с которым будет привязан бот.
- Создайте ключ доступа (Callback API) в панели управления сообществом и установите соединение с сервером.
- Создайте БД MySQL и сделайте таблицы (пример скрипта для создания таблиц в файле create_db.txt)
- Создайте файл settings.py следующего вида:
token = 'abcdefg****************************************************************************'
confirmation_token = '********'
admins = [1234****, 8765****] #id ВК администраторов
DB_params = {'host':"****.mysql.pythonanywhere-services.com", 'user':"****", 'passwd':"****", 'db':"****$****"} #впишите настройки соединения с БД
- Перезагрузите сервер и поробуйте отправить сообщение сообществу
Команда | Файл | Описание |
---|---|---|
ПРИВЕТ | hello.py | Приветствие |
ПОМОЩЬ | help.py | Справка по командам |
РЕГИСТРАЦИЯ | register.py | Регистрация студента в боте |
КАФЕДРА | department.py | Выбор кафеды |
ГРУППА | group.py | Указание группы |
ПРЕПОД | tutor.py | Указание преподавателя |
ИНФО | info.py | Информация о студенте |
РАСПИСАНИЕ | schedule.py | Расписание событий |
ИДУ | train.py | Запись на отработку |
ИСТОРИЯ | history.py | История посещений |
Команда | Файл | Описание |
---|---|---|
ЗАНЯТИЕ | event.py | Добавить новое занятие |
ОПИСАНИЕ | about.py | Добавить описание занятия |
АКТИВ | activ.py | Открыть регистрацию на занятие |
ДЕАКТИВ | deactiv.py | Закрыть регистрацию на занятие |
СТАРТ | start.py | Добавить список стартовавших |
ФИНИШ | finish.py | Добавить список финишировавших |
ЭКСПОРТ | export.py | Получить список студентов |
MIT