- Бот работает на python3.6 и выше. Ниже не работает. Совсем. Это важно.
- Бот использует asyncio, aiohttp и т.д.
Бот более не поддерживается. С последними изменениями ВКонтакте, методы, позволяющие работать с сообщениями, будут ограничены для пользователей. Это значит, что этот бот сможет работать, как полагается, только от лица группы, но этот бот не поддерживает работу в беседах от лица группы. Поэтому, скорее всего, этот бот для многих потеряет смысл. Если вы разработчик - рекомендуется обратить внимание на Kutana. Этот бот более надёжный и поддерживает большинство возможностей ВКонтакте.
-
Скачать бота.
-
Скачать Python версии 3.6 или выше.
В командной строке используйте python3.6, python3 или python в соответствии с тем, как вы установили Python.
-
Установить модули для python. Список модулей находится в
requirements.txt
.python -m pip install -r requirements.txt
-
Настроить бота в
settings.py
. Обязательно для заполнения только поле USERS.Обращайте внимание на запятые и кавычки! Это важно.
Вы можете заменить ТУТ ТОКЕН ГРУППЫ на токен вашей группы, полученный в настройках группы с максимальными правами (желательно), или ввести свои данные для запуска бота от лица пользователя (или сразу использовать свой токен).
("group", "ТУТ ТОКЕН ГРУППЫ",), ... ("user", "ЛОГИН ПОЛЬЗОВАТЕЛЯ", "ПАРОЛЬ ПОЛЬЗОВАТЕЛЯ",), ... ("user", "ТОКЕН ПОЛЬЗОВАТЕЛЯ",),
Если вы хотите использовать некоторые методы, доступные только пользователям, от лица группы - вам придётся указать одновременно и пользователя, и группу. Просто добавляйте строчки в USERS в настройках бота.
USERS = ( ("group", "ТУТ ТОКЕН ГРУППЫ",), ("user", "ЛОГИН ПОЛЬЗОВАТЕЛЯ", "ПАРОЛЬ ПОЛЬЗОВАТЕЛЯ",), )
-
Запустить бота из командной строки из папки с ботом.
python run.py
-
Чтобы запустить бота в режиме, когда он всегда перезапускается в случае какой-то ошибки, вы можете написать.
python runner.py
Активные плагины указываются в настройках бота, в поле PLUGINS (список плагинов начинается с PLUGINS = (
). Каждый плагин является экземпляром определённого класса и создаётся следующим выражением: ИмяКласса(аргумент1=значение1, аргумент2=значение2 и т.д.),
. Например: StaffControlPlugin(prefixes=DEFAULT_PREFIXES, admins=DEFAULT_ADMINS, setadmins=True),
. Некоторые плагины отключены по умолчанию. Доступные аргументы вы можете найти в классах плагинов.
Как таковой документации проект сейчас не имеет. Многие функции, примеры, возможности бота можно найти, изучая исходный код плагинов и файлы бота. Например: tests.py
, vk/helpers.py
, handler/base_plugin.py
и т.д.
- Никакие плагины не должны менять код основных частей бота, чтобы было легко обновляться и менять какие-то базовые вещи (переписывать плагины легче, чем восстанавливать функционал после обновлений).
- При использовании CommandPlugin помните, что команды сортируются в соответствии с количеством пробелов в команде (от большего к меньшему)
- При запуске
run.py
, будет попытка использовать настройкиBotSettings
из файла с настройкамиsettings_prod.py
, затем, в случае неудачи, будет использованBotSettings
изsettings.py
.
@michaelkrukov http://michaelkrukov.ru/