ekonda / sketal

Бот для ВКонтакте. Беседы / группы / развлечения.
MIT License
119 stars 64 forks source link
async asyncio bot engine python python3 python36 vk vk-api vk-bot vkontakte vkontakte-client

Title

sketal

Codacy Badge Build Status

Немного о боте

Важно

Бот более не поддерживается. С последними изменениями ВКонтакте, методы, позволяющие работать с сообщениями, будут ограничены для пользователей. Это значит, что этот бот сможет работать, как полагается, только от лица группы, но этот бот не поддерживает работу в беседах от лица группы. Поэтому, скорее всего, этот бот для многих потеряет смысл. Если вы разработчик - рекомендуется обратить внимание на Kutana. Этот бот более надёжный и поддерживает большинство возможностей ВКонтакте.

Инструкция

  1. Скачать бота.

  2. Скачать Python версии 3.6 или выше.

    В командной строке используйте python3.6, python3 или python в соответствии с тем, как вы установили Python.

  3. Установить модули для python. Список модулей находится в requirements.txt.

    python -m pip install -r requirements.txt
  4. Настроить бота в settings.py. Обязательно для заполнения только поле USERS.

    Обращайте внимание на запятые и кавычки! Это важно.

    Вы можете заменить ТУТ ТОКЕН ГРУППЫ на токен вашей группы, полученный в настройках группы с максимальными правами (желательно), или ввести свои данные для запуска бота от лица пользователя (или сразу использовать свой токен).

    ("group", "ТУТ ТОКЕН ГРУППЫ",),
    ...
    ("user", "ЛОГИН ПОЛЬЗОВАТЕЛЯ", "ПАРОЛЬ ПОЛЬЗОВАТЕЛЯ",),
    ...
    ("user", "ТОКЕН ПОЛЬЗОВАТЕЛЯ",),

    Если вы хотите использовать некоторые методы, доступные только пользователям, от лица группы - вам придётся указать одновременно и пользователя, и группу. Просто добавляйте строчки в USERS в настройках бота.

    USERS = (
     ("group", "ТУТ ТОКЕН ГРУППЫ",),
     ("user", "ЛОГИН ПОЛЬЗОВАТЕЛЯ", "ПАРОЛЬ ПОЛЬЗОВАТЕЛЯ",),
    )
  5. Запустить бота из командной строки из папки с ботом.

    python run.py
  6. Чтобы запустить бота в режиме, когда он всегда перезапускается в случае какой-то ошибки, вы можете написать.

    python runner.py

Подключение/отключение плагинов

Список плагинов (eng)

Активные плагины указываются в настройках бота, в поле PLUGINS (список плагинов начинается с PLUGINS = (). Каждый плагин является экземпляром определённого класса и создаётся следующим выражением: ИмяКласса(аргумент1=значение1, аргумент2=значение2 и т.д.),. Например: StaffControlPlugin(prefixes=DEFAULT_PREFIXES, admins=DEFAULT_ADMINS, setadmins=True),. Некоторые плагины отключены по умолчанию. Доступные аргументы вы можете найти в классах плагинов.

Документация

Как таковой документации проект сейчас не имеет. Многие функции, примеры, возможности бота можно найти, изучая исходный код плагинов и файлы бота. Например: tests.py, vk/helpers.py, handler/base_plugin.py и т.д.

Материалы:

Sketal <8.0

Замечания

Участники проекта:

@michaelkrukov http://michaelkrukov.ru/