1.2.1 • Published 5 years ago

storybot-for-beginners v1.2.1

Weekly downloads
-
License
ISC
Repository
-
Last release
5 years ago

Запуска storybot для начинающих программистов

  1. Скачайте данный репозиторий из github (для Windows желательно установить GitBash)
git clone https://github.com/ciricc/storybot-for-beginners.git && cd storybot-for-beginners
  1. Установите Node.JS 10 версии nodejs.org
  2. Откройте командную строку в папке storybot-for-beginners (этот шаг можно пропустить, если вы вводили команды из прошлых шагов полностью)
  3. Введите команду
npm i
  1. Настройте бота по собственным нуждам следуя инструкциям из документации storybot Об этом ниже

Настройка ботов

Так как настройка бота - дело непростое для тех, кто не владеет навыками программирования, я постарался сделать максимально доступную форму конфигурации. Чтобы понять что к чему, пройдем дальше.

Папка bots

Папка bots - это список YAML (.yml) файлов с конфигурацией ботов. Каждый новый файл - новый конфиг для нового бота. Если в конфигурации бота не указывается его название, то название берется из имени файла без расширения (пр. example.yml - name: example). Для удобства редактирования конфигурации я рекомендую использовать программу Notepad++. При редактировании конфигурации не используйте TAB'ы (символ \t) и соблюдайте уровни вложенности (1-2 пробела)! Большая часть ошибок в настройке - именно в неправильном использовании языка YAML (он проще, чем кажется)

Простейший пример конфига бота:

accounts/new_bot.yml:

bot: #Уровень настройки бота
 name: "New_Bot" #Название бота
 groupIds: [1, 2, 3] #Идентификаторы групп
collector: #Уровень настройки коллектора
 tokens: ["token_1", "token_2"] #Токены коллектора (юзеров) через запятую и в ДВОЙНЫХ КАВЫЧКАХ ( " )
 target: #Уровень настройки таргета
  sex: 1
viewers: #Уровень настройки виюверов
 liza: #Название виювера и ниже его настройки
  account: 
   username: "liza-iza@gmailinbox.com"
   password: "AzaRaLize45067!"

Проще некуда! Но это не все! Новое обновление приносит новые фичи (и баги)!

Папка accounts

Данная папка служит для хранения .json файлов с данными аккаунтов, которые будут использоваться в ботах. Не рекомендуется изменять ее содержимое вручную (удалять/переименовывать файлы), так как она генерируется автоматически на основе конфигов. То есть все изменения нужно проводить только в конфигах.

Как настраивать конфиг, чтобы не вводить токены, взятые с неба.

Уровень accounts

Для настройки аккаунтов используется уровень accounts в конфиге бота, в нем вы указываете имена аккаунтов и их данные, а также можете указать, нужно ли обновить токен для данного аккаунта. Пример ниже

accounts/a.yml:

accounts:
 liza:
  username: "liza-iza@gmailinbox.com"
  password: "AzaRaLize45067!"
  reauth: false # Если нужно обновить токен - true, иначе - false
 kirill:
  username: "kiryha2008god@yandex.ru"
  password: "_FiramirTHEBEST00956"
bot:
 name: "Bot_1"
collector:
 tokens: ["liza"] #Здесь вместо реального токена используется имя аккаунта и в дальнейшем бот 
 # автоматически подставит полученный токен аккаунта
viewers:
 viewer_first:
  account: "kirill" #Здесь вместо настроек аккаунта используется просто имя аккаунта

Если вы используете много ботов, то необязательно снова и снова настраивать в каждом боте аккаунты. Достаточно указать их в самом верхнем боте (самый первый файл конфига в алфавитном порядке). А в остальных конфигах просто не указывать.

accounts/b.yml:

bot:
 name: "Bot_2"
collector: 
 tokens: ["kirill"]
viewers:
 viewer_first:
  account: "liza"

На этом все, осталось только запустить

Запуск

  1. Запустите бота через команду
npm run start

Чтобы остановить бота, можно закрыть окно консоли или нажать сочетание Ctrl + C

Запуск в фоне

Для запуска в фоне рекомендую использовать утилиту pm2

Установить:

npm i -g pm2

Запустить в фоне:

pm2 start index.js

Посмотреть лог:

pm2 logs 0

Также можно посмотреть лог в файле лога (~/.pm2/logs/index-(out|error).txt), для пользователей Windows: C:\Users\User\.pm2\logs\index-(out|error).txt

Перезапустить:

pm2 restart 0

Остановить:

pm2 stop 0

Вместо 0 может быть ID процесса pm2, посмотреть весь список можно следующей командой

pm2 list
1.2.1

5 years ago

1.2.0

5 years ago