Проект предназначен для проведения викторин с помощью ботов.
Поддерживаемы платформы:
- Вконтакте
- Telegram
Telegram
Вконтакте
-
Python3 должен быть уже установлен.
-
Используйте
pip
(илиpip3
, есть конфликт с Python2) для установки зависимостей:
pip install -r requirements.txt
-
Рекомендуется использовать virtualenv/venv для изоляции проекта.
-
Для работы с Api Вконтакте требуется получить токен группы (вкладка "Работа с API" в настройках сообщества) и разрешить ему отправку сообщений. Полученный токен в
.env
под именемVK_GROUP_MESSAGE_TOKEN
. -
В настройках группы вкладка
Сообщения
->Настройки для бота
разрешить возможности ботов. -
Для работы с Telegram потребуется:
- Включить
VPN
, если мессенджер заблокирован в вашей стране; - Получить
bot token
и положить его в.env
под именемTG_BOT_TOKEN
, об этом здесь; - Получить
bot token
для бота-логера, требуемого для отслеживания ошибок в работе ботов. Полученный token в.env
под именемTG_LOG_BOT_TOKEN
. - Получить свой
id
у@userinfobot
и положить в.env
под именемTG_CHAT_ID
- Включить
-
Завести бесплатную базу данных на redislabs.com, получить адрес, порт и пароль от базы и положить их в
.env
под именамиDB_HOST
,DB_PORT
иDB_PASSWORD
соответственно. -
Создать текстовый файл с вопросами и ответами викторины. Образец лежит в репозитории под именем
quiz_example.txt
(кодировкаUTF-8
). В файле.env
записать путь к файлу и его кодировку под именамиQUIZ_PATH
иQUIZ_TEXT_ENCODING
, соответственно. По умолчанию стоит кодировкаKOI8-R
. Номера вопросов могут быть любыми от 0 до 99. -
Запустить файлы
vk_bot.py
иtg_bot.py
.
Код написан в образовательных целях на онлайн-курсе для веб-разработчиков dvmn.org.