Загрузка...

Функциональный бот для юзера [Розыгрыши в чатах/Удалялка/Автоответчик и ещё пару функций]

Тема в разделе Python создана пользователем p2love 8 май 2020. 685 просмотров

  1. p2love
    p2love Автор темы 8 май 2020 26 9 янв 2017
    Заливаю сюда для большего охвата своего бота с гитхаба
    Судя по тому, что мне приходят сообщения с вопросами от челов которых я впервые вижу, значит бот все таки сыскал своих пользователей и может пригодится и вам.

    Несмотря на то, что бот полон говнокода и писался в то время, когда я делал его по логике "цель оправдывает средства"

    У бота есть младший брат (по функционалу) - Go-VK-UserSide-Bot
    Рефакторинг удалялки, написанный на GoLang. Мои тесты показали что скорость его работы ~в 5 раз быстрее чем на Python.

    [IMG]


    Функционал бота VK-UserSide-Bot:
    • Удаление n-количества собственных сообщений через команду
      • Опционально можно редактировать сообщения перед удалением (для обхода чека удаленных через кейты и прочую дрисню)
    • Создание рандом-розыгрышей в чатах, с заданным индивидуально временем его проведения и командой для участия
    • Оповещение в ЛС о таких же розыгрышах от других юзеров по заготовленным триггер словам
    • Смена раскладки последнего отправленного сообщения (работает с багами и со своей спецификой)
    • Аналог вкшного @аll, уведомление дойдет до всех, в отличии от all на которое могли вырубить уведомления
    • Автоответчик рандомным стикеров из списка на заготовленное слово (наприм. Ваш ник)
      • Можно включить дополнительный автоответ на упоминание вас через @


    Только одна зависимость - модуль vk_api


    Самая полная и подробная инструкция по установке и настройке. Вероятно вы и сами разберетесь без неё, но если будут вопросы - вы точно сможете найти на них ответ здесь:
    Установка (GNU/Linux):
    • Для начала проверьте какой у вас аллиас на команду python3, введя её в консоли.
      • Там вы должны увидеть версию 3.6.* или новее.
      • Если это не так, обновите Python3 по инструкциям из интернета
    • Установите модуль vk_api используя
      Код
       pip python3 -m pip install vk_api
      • Вероятна ошибка, что не найден pip. Тогда предварительно сделайте
        Код
        sudo apt install python3-pip
    • Склонируйте репозиторий любым способом на вашу тачку
    • Не уверен насколько это актуально, но лучше перестраховаться - чтобы бот точно не упал скопируйте из папки репозитория файл start.sh
      • Сделайте
        Код
        cp "/misc/bash bot restart/start.sh" start.sh
      • И присвойте ему исполняемость
        Код
        sudo chmod +x start.sh
    • Сконфигурируйте файл main.py, несмотря на то, что в самом файле закомментированы пояснения, продублирую тут:
      • 8: vk_token = "Указывайте здесь Ваш токен с доступом к ЛС, например от кейта. Строго в кавычках"
      • 11: contest_trigger_list = ('слово1', 'слово2') Эти слова в будут триггерить бота на чужие розыгрыши. Все сообщения которые содержат эти слова придут вам в ЛС с пометкой что возможно начался конкурс
      • 14: contest_white_list = (1, 2, 228) Сообщения из пункта выше будут рассматриваться только от этих айди. Например все сообщения с слово1 или слово2 от id1 id2 id228 придут в лс, как потенциальный розыгрыш
      • 17:19 start_my_contest_trigger = ("конкурс") С помощью этого слова вы будете начинать розыгрыши в чатах. Синтаксис старта розыгрша следующий: <Триггер> <Время до объявления победителя в минутах> <Команда для участия>. Так, сообщение "конкурс 10 Участвую " запустит розыгрыш на 10 минут, для принятия участия в котором надо написать Участвую
      • 20:22 trigger_word = ("удалить") С помощью такой команды вы будете удалять свои сообщения из чата. Функционал: <Триггер> - удаляет последнее сообщение, <Триггер <Число>> удаляет <Число> последних сообщений от вас, <Триггер-> - редактирует сообщений перед удаляем и <Триггер-<Число>> редактирует и удаляет <Число> ваших сообщений.
      • 24:26 layout_swap_trigger = ("раскладка") Меняет по этой команде раскладку вашего последнего сообщения (может работать с багами)
      • 28:30 chat_everyone_trigger = ("/all") Упоминает всех юзеров в чате (может работать с багами)
      • 32:37 Тут будет сложно подробно описать в формате форумного сообщения. Я все вроде очень подробно расписал в комменте в коде. Здесь вы настраиваете автоответчик.
    • Если вам не нужны какие то функции - просто не трогайте их настройки.
    • После того как всё заполнили - сохраняйте файл и запускайте скрипт удобным способом. Если вы не знаете как, могу предложить запускать через nohup
      • Делайте
        Код
        nohup ./start.sh
        и просто закрывайте консоль сервера
    Проверьте запущен ли бот, если это так - поздравляю. Можете использовать его в своё удовольствие :)

    Чтобы выключить бота ищите его процесс и sh процесс через
    Код
    ps -ef
    [IMG]

    И убивайте их по очереди. Или просто перезагрузите сервер.

    Ещё раз для тех кто не увидел ссылки в самом начале:

    https://github.com/P2LOVE/VK-UserSide-Bot
    https://github.com/P2LOVE/VK-UserSide-Bot
    https://github.com/P2LOVE/VK-UserSide-Bot

     
    8 май 2020 Изменено
  2. твайт
    твайт 9 май 2020 201 10 ноя 2018
    Нравится,но бот на Go работает быстрее
     
  3. jsonic
    jsonic 9 май 2020 210 7 июн 2018
    годный бот
     
  4. onelovebanan
    onelovebanan 10 май 2020 Тут не может быть вашей рекламы'and 10 16 янв 2017
    Лень на Trello кидать, напишу так. Я бы дополнил mention_answer_list возможностью добавить несколько слов одновременно. Например, чтобы он работал на слова Миша, Михаил, лох , а не только 1 определенное.
     
    1. p2love Автор темы
      onelovebanan, если буду обновлять что то в боте, то заодно это тоже добавлю)
Top
Загрузка...