Чтобы отправить сообщение с фото или клавиатурой в ВКонтакте с помощью Node.js, вам понадобится использовать VK API, который предоставляет набор методов для взаимодействия с социальной сетью.
Для начала установите пакет "node-vk-bot-api" с помощью npm, который предоставляет удобный API для работы с ботами ВКонтакте в Node.js:
npm install node-vk-bot-api
После установки пакета, создайте новый файл index.js и подключите его в вашем проекте. Начнем с импорта необходимых модулей:
const VKBot = require('node-vk-bot-api'); const Markup = require('node-vk-bot-api/lib/markup'); const fs = require('fs');
Затем создайте экземпляр бота и установите его токен авторизации, который можно получить в настройках группы ВКонтакте:
const bot = new VKBot({ token: 'your_token', });
Теперь мы можем настроить обработку входящих сообщений и отправку сообщений с фото и клавиатурой. Добавьте следующий код:
bot.on((ctx) => { // Обработчик входящих сообщений const message = ctx.message.text; // Проверка на команду /start if (message === '/start') { // Отправка сообщения с клавиатурой ctx.reply('Привет!', null, Markup .keyboard([ [ Markup.button('Нажми на кнопку', 'primary'), ], ]) .oneTime() .inline() ); } else if (message === 'Нажми на кнопку') { // Отправка сообщения с фото const photo = fs.readFileSync('path_to_photo.jpg'); ctx.replyWithPhoto( { value: photo, options: { filename: 'photo.jpg', contentType: 'image/jpeg', }, }, null, Markup .keyboard([ [ Markup.button('Нажми на кнопку', 'primary'), ], ]) .oneTime() .inline() ); } }); bot.startPolling();
В приведенном коде мы настраиваем обработку входящих сообщений с помощью метода bot.on
. Когда бот получает команду "/start", он отправляет приветственное сообщение с клавиатурой. Если пользователь нажимает на кнопку, бот отправляет сообщение с фото и обновляет клавиатуру.
Важно заменить 'your_token'
на ваш собственный токен авторизации. Также обратите внимание на указание пути к фото 'path_to_photo.jpg'
. Замените это значение на путь к фотографии, которую вы хотите отправить.
После написания кода, запустите ваш сервер Node.js и проверьте результаты, отправляя сообщения вашему боту в ВКонтакте.