Как создать двух ботов в одном исполняемом файле JS

Рейтинг: 0Ответов: 0Опубликовано: 11.08.2023

Обьясняю ситуацию: у меня есть один бот который напрямую подключен к игровому серверу, и есть второй бот который подключен к сообществу вк, мне нужно этих ботов засунуть в один файл ради удобства управления (частный случай), сервер стоит на NodeJS, возможность использовать express соответственно. первой попыткой законнектить работу этих ботов был следующий исполняемый код: код первого бота:

const mineflayer = require('mineflayer')
const { Vec3 } = require('vec3')

const readline = require('readline')
const rl = readline.createInterface({
   input: process.stdin,
   output: process.stdout
})


if (process.argv.length < 2 || process.argv.length > 4) {
  console.log('Usage : node chatterbot.js <host> <port>')
  process.exit(1)
}

const bot = mineflayer.createBot({
  host: process.argv[2],
  port: parseInt(process.argv[3]),
  username: 'name',
  password: 'pass'
})

код второго бота, с элементом взаимодействия первого бота:

const { VK } = require('vk-io');
const { HearManager} = require('@vk-io/hear');

const vk = new VK({
   token: 'mytoken'
})
const vbot = new HearManager()

vbot.updates.on('message_new', bot.middleware)

vbot.hear(/test/i, msg => {
  bot.chat('работает')
})

на первый взгляд выглядит просто: при отправке сообщения в сообщество ВК с ботом, второй бот бы отправлял в игровой чат сообщение "Работает", но увы я получаю ошибку что "on" в строке "vbot.updates.on('message_new', bot.middleware)" undefined, единственное что приходит в голову так возможно, что константу vbot не воспринимает за бота из за буквы v, которую я добавил дабы избежать дубликации с константой первого бота.

Полный текст ошибки, которая возникает при запуске:


vbot.updates.on('message_new', bot.middleware)
             ^
TypeError: Cannot read properties of undefined (reading 'on')

помогите пж, а то лень писать запросы для общения двух ботов через json обьекты((

Ответы

Ответов пока нет.