From 8e12096b2e459f362d77f36d0afa326debfbc4cc Mon Sep 17 00:00:00 2001 From: dan63047 Date: Sun, 1 May 2022 20:52:39 +0300 Subject: [PATCH] Added important command + fixed typos --- README.md | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) mode change 100644 => 100755 README.md diff --git a/README.md b/README.md old mode 100644 new mode 100755 index 5383d42..0385860 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ # Мой личный бот на python для ВК #### от dan63047 -Этот бот просто отвечает на поддержваемые запросы в переписке с сообществом. Был написан мною в целях изучения python. Этот README является инструкцией по установке и использованию бота. +Этот бот просто отвечает на поддерживаемые запросы в переписке с сообществом. Был написан мною в целях изучения python. Этот README является инструкцией по установке и использованию бота. # Функции бота -Чтобы воспользоваться функциями бота необходимо отправить команду и в некоторых случаях агрумент. Все команды начинаются с восклицательного знака +Чтобы воспользоваться функциями бота, необходимо отправить команду и в некоторых случаях аргумент. Все команды начинаются с восклицательного знака * **!h, !help, !п, !помощь** — бот отправляет список команд и их краткое описание из `help.txt`, а так же дату последнего обновления и ссылку на этот репозиторий * **!my_id, !ид** — бот достаёт из вашего сообщения `user_id` и отправляет его вам @@ -14,24 +14,25 @@ * **!wiki, !вики *запрос*** — бот получает с помощью Wikipedia API краткое описание статьи по запросу и отправляет её вам * **!byn, !белруб** — бот получает с помощью НБ РБ API текущий курс белорусского рубля и отправляет её вам * **!echo, !эхо** — бот начинает повторять за вами, чтобы это остановить, надо написать *!echo off* -* **!game, !игра *камень/ножницы/бумага/статистика*** — бот играет с вами в "Камень, ножницы, бумага" и ведет статискику игр, которую записывает в файл БД +* **!game, !игра *камень/ножницы/бумага/статистика*** — бот играет с вами в "Камень, ножницы, бумага" и ведет статистику игр, которую записывает в файл БД * **!midnight, !полночь** — бот будет уведомлять о каждом миднайте по Московскому времени. Введите ещё раз, чтобы отменить это * **!subscribe, !подписаться** — бот будет уведомлять вас о каждом новом посте. Введите ещё раз, чтобы отменить это * **!debug, !дебаг** — бот отправляет информацию о своём состоянии * **!debug *log***, **!дебаг *лог*** — бот отправляет последние 10 строк из своего лога. Доступно только вам -* **!debug *bots***, **!дебаг *боты*** — бот отправляет информацию о обьектах бота в памяти. Доступно только вам +* **!debug *bots***, **!дебаг *боты*** — бот отправляет информацию об объектах бота в памяти. Доступно только вам * **!debug *game***, **!дебаг *игра*** — бот отправляет всю статистику по игре !game * **!access *all/owner***, **!доступ *владелец/все*** — позволяет в беседе установить уровень доступа к командам *!midnight*, *!subscribe* и *!debug*. *all* - все могут пользоваться. *owner* - только вы. Доступно только вам * **!turnoff, !выкл** — даёт боту команду на выключение. Доступно только вам * **!admin_mode, !админмод** — если чат, в которой активируется команда, является беседой и в ней у бота есть полномочия администратора, то бот переходит в режим модерации. Пока что он может только кикать людей за @all и @online, реагировать на приход/уход участника беседы и дать возможность пользоваться командой *!ban*. Введите ещё раз, чтобы выключить режим модерации. Доступно только вам -* **!ban, !бан *@user*** — банит пользователя из беседы (в смысле выгоняет, юзер не сможет вернутся пока бот или админ не предложит). Требует режим модерации, могут воспользоваться только администраторы +* **!ban, !бан *@user*** — банит пользователя из беседы (в смысле выгоняет, юзер не сможет вернуться пока бот или админ не предложит). Требует режим модерации, могут воспользоваться только администраторы * **!resist, !запретить *@user*** — запрещает пользователю пользоваться ботом, могут воспользоваться только администраторы * **!restore, !разрешить *@user*** — снова разрешает пользователю пользоваться ботом, могут воспользоваться только администраторы -* **!spammer *add* *@user*, !спаммер *добавить* *@user*** — Добавляет пользователя в "базу спаммеров". Если пользователь из этой базы попытается присоединится к беседе, в которой он внесён в эту самую базу, он тут же будет изгнан. Требует режим модерации, могут воспользоваться только администраторы -* **!spammer *remove* *@user*, !спаммер *удалить* *@user*** — Убирает пользователя из "базу спаммеров". Требует режим модерации, могут воспользоваться только администраторы +* **!spammer *add* *@user*, !спаммер *добавить* *@user*** — Добавляет пользователя в "базу спамеров". Если пользователь из этой базы попытается присоединится к беседе, в которой он внесён в эту самую базу, он тут же будет изгнан. Требует режим модерации, могут воспользоваться только администраторы +* **!spammer *remove* *@user*, !спаммер *удалить* *@user*** — Убирает пользователя из "базу спамеров". Требует режим модерации, могут воспользоваться только администраторы +* **бот дай денег** — Посылает вас нахуй # Установка и запуск бота -Лучшим решением будет иметь платный аккаунт на [pythonanywhere](https://www.pythonanywhere.com/) чтобы запускать бота, как Always-on task. Можно, конечно, запускать бота в консоли, но pythonanywhere может выключить вашу консоль, если вы долго не будете посещать её. +Лучшим решением будет иметь платный аккаунт на [pythonanywhere](https://www.pythonanywhere.com/), чтобы запускать бота, как Always-on task. Можно, конечно, запускать бота в консоли, но pythonanywhere может выключить вашу консоль, если вы долго не будете посещать её. ## Основа Итак, заходим на pythonanywhere, входим или регистрируемся. @@ -68,9 +69,9 @@ openweathermap_api_key = 'openweathermap_api_key' # Ключ OpenWeather API. О Если аккаунт бесплатный: в bash консоли переходим в директорию бота и прописываем `python3 longpulling.py`. Консоль можно оставить в покое, но лучше раз в день проверять её чтобы консоль не отключили ## Другие варианты запуска бота -Скорее всего, вы можете найти где-нибудь VPS или огранизовать всё на своём компьютере. Там вы просто скачиваете и устанавливаете Python последней версии, настраиваете конфиг бота и запускаете его. +Скорее всего, вы можете найти где-нибудь VPS или организовать всё на своём компьютере. Там вы просто скачиваете и устанавливаете Python последней версии, настраиваете конфиг бота и запускаете его. # botconsole.py -Если вы введёте команду `pyhton3 botconsole.py`, то запустится консоль бота. Она пока находится в разработке и не может управлть именно ботом, скорее вы просто будете выполнять действия от лица бота. Вот список поддерживаемых команд: +Если вы введёте команду `pyhton3 botconsole.py`, то запустится консоль бота. Она пока находится в разработке и не может управлять именно ботом, скорее вы просто будете выполнять действия от лица бота. Вот список поддерживаемых команд: * **help** — выводит список доступных команд * **exit** — завершает работу консоли * **message *peer_id* *message*** — отправляет *message* в переписку *peer_id* от имени сообщества @@ -78,11 +79,11 @@ openweathermap_api_key = 'openweathermap_api_key' # Ключ OpenWeather API. О На следующей команде хотелось бы уделить особое внимание, ведь с помощью неё можно вызывать функции бота ## Команда **bot** Если просто вызвать эту команду, то она покажет список существующих объектов ботов. Однако так же у команды есть и большое количество аргументов: -* **bot *update*** — обновляет список обьектов ботов и их состояние -* **bot *create* *peer_id*** — создаёт обьект бота для переписки *peer_id* -* **bot *delete* *peer_id*** — удаляет существующий обьект бота для переписки *peer_id* -* **bot *changeMidnightFlag* *peer_id*** — меняет флаг в обьекте бота *peer_id*, по которому он определяет, надо ли оповещать о Midnight -* **bot *midnight* *peer_id*** — инициирует ивент Midnight для обьекта бота *peer_id* +* **bot *update*** — обновляет список объектов ботов и их состояние +* **bot *create* *peer_id*** — создаёт объект бота для переписки *peer_id* +* **bot *delete* *peer_id*** — удаляет существующий объект бота для переписки *peer_id* +* **bot *changeMidnightFlag* *peer_id*** — меняет флаг в объекте бота *peer_id*, по которому он определяет, надо ли оповещать о Midnight +* **bot *midnight* *peer_id*** — инициирует ивент Midnight для объекта бота *peer_id* # Использованные библиотеки * [vk_api](https://github.com/python273/vk_api) — модуль для создания скриптов для социальной сети Вконтакте * [pyowm](https://github.com/csparpa/pyowm) — модуль для получения погоды через OpenWeather API