node-vk-bot-sdk

1.0.7 • Public • Published

node-vk-bot-sdk

Небольшое SDK для создания чат-ботов с использованием Node.JS на платформе сообществ ВКонтакте.

Рекомендуется использовать с версиями VK API выше 5.103.

npm version install size npm downloads license: MIT

Установка

$ npm install node-vk-bot-sdk

или

$ yarn add node-vk-bot-sdk

Возможности

  • Поддерживает работу с Callback событиями через Express/Koa или LongPoll
  • Позволяет добавлять слушатели произвольных событий в сообществе
  • Позволяет добавлять обработчики команд в сообщениях через RegExp или строки
  • Поддерживает работу с присылаемой полезной нагрузкой и данными о клиенте
  • Поддерживает установку middleware для всех получаемых событий
  • Поддерживает настройку собственных обработчиков ошибок

Пример использования

const express = require('express');
const { VkBotSdk } = require('node-vk-bot-sdk');
 
const app = express();
 
const sdk = new VkBotSdk({
    group_id: 0,
    secret: '',
    confirmation: '',
    access_token: ''
});
 
const bot = sdk.getCallback();
 
bot.command(/test/, (ctx, params) => {
    ctx.reply(`reply to ${ctx.from_id}`);
});
 
bot.defaultReply((ctx, params) => {
    ctx.reply('Default reply');
});
 
app.use(express.json());
app.all('/callback', bot.eventsCallback);
 
app.listen(8080);

Другие примеры работы

Context API

Значение Тип Описание
ctx.event string Тип полученного события
ctx.data object Полученные данные в событии
ctx.group_id number ID сообщества
ctx.event_id number ID события
ctx.user_id number Псевдоним для ctx.from_id
ctx.from_id number ID автора сообщения
(ID затрагиваемого пользователя для других событий)
ctx.peer_id number ID дилога
(ID затрагиваемого пользователя события для других событий)
ctx.message string Преобразованный текст сообщения (пустая строка для других событий)
ctx.orig_message string Оригинальный текст сообщения
ctx.client_info object Данные о клиенте пользователя или стандартный объект
ctx.reply(text, attachment, keyboard) function Отправляет ответ с текстом, вложениями и клавиатурой
ctx.replyKeyboard(text, keyboard) function Отправляет ответ с текстом и клавиатурой
ctx.replyAttachment(attachment) function Отправляет ответ только с вложениями
ctx.replyCustom(params) function Отправляет ответ с кастомными параметрами
ctx.isKeyboardSupported() function Возвращает информацию из client_info
ctx.isInlineKeyboardSupported() function Возвращает информацию из client_info
ctx.isCarouselSupported() function Возвращает информацию из client_info

Package Sidebar

Install

npm i node-vk-bot-sdk

Weekly Downloads

6

Version

1.0.7

License

MIT

Unpacked Size

64.1 kB

Total Files

37

Last publish

Collaborators

  • m_vrts