Удобная, маленькая и кроссплатформенная библиотека для создания ботов в соц. сети ВКонтакте
Эти инструкция позволит вам просто и быстро сделать своего бота для вк.
Установите Nuget пакет в ваш проект: Package Manager
PM> Install-Package VkBotFramework
.NET CLI
> dotnet add package VkBotFramework
Visual Studio Nuget Manager
Проект -> Свойства -> Управление пакетами Nuget -> Обзор -> Поиск -> VkBotFramework -> Установить
На данный момент можно создавать только групповых ботов, а значит вам потребуется AccessToken и GroupUrl для взаимодействия с группой, а так же выставить необхдимые права доступа боту.
- Вы можете создать его в интерфейсе настроек сообщества. Для этого достаточно открыть раздел «Управление сообществом» («Управление страницей», если у Вас публичная страница), выбрать вкладку «Работа с API» и нажать «Создать ключ доступа». Так же есть и другие способы получить токен, ознакомиться можно тут.
- Так же необходимо зайти во вкладку Long Poll Api, перевести состояние Long Poll Api во "включен",а так же во вкладке "типы событий" выбрать нужные события, которые будут приходить боту.
- Это ссылка на вашу группу, которую можно взять прямо из адресной строки браузера. Библиотека сама определит id группы для своих нужд.
- Более подробно о настройке и использовании бота можно прочесть в wiki.
Использование библиотеки крайне простое:
VkBot bot = new VkBot(settings.AccessToken, settings.GroupUrl);
/*подписываемся на событие о входящем сообщении, в которое передается экземпляр сообщения*/
bot.OnMessageReceived += MessageReceivedTest;
/*подписываемся на событие об изменении в группе, в которое передается экземпляр события в группе*/
bot.OnGroupUpdateReceived += UpdateReceivedTest;
/*регистрируем шаблон {регулярное выражение,ответ бота}*/
bot.TemplateManager.Register("привет", "на привет всегда отвечаю кусь");
bot.TemplateManager.Register("^[0-9]+$", "ого, я определил, что вы прислали мне число!");
/*регистрируем шаблон {регулярное выражение,случайная фраза из списка}*/
bot.TemplateManager.Register("ты кто", new List<string>() {"меня зовут мишутка","вы о ком","не говори так со мной","а ты кто?"});
/*регистрируем шаблон {регулярное выражение, user specified callback}*/
bot.TemplateManager.Register("колобок", (msg) =>
{
Console.WriteLine($"кто-то написал {msg.Text}, я могу регировать на эту фразу так, как я хочу! system(\"reboot\")");
});
/*запускаем бота синхронно...*/
bot.Start();
С наглядными примерами можно ознакомиться тут
- Сделать подписки на события о приходе сообщения/обновления в группе
- Сделать функционал регистрации шаблона {регулярная фраза,ответ/список ответов/user callback}
- Сделать асинхронный Start
- Добавить функционал кнопок
- Сделать логгирование
- Сделать тесты
- Сделать библиотеку пригодной для создания бота пользователя(без группы)
- VkNet - взаимодействие с Api ВКонтакте.
This project is licensed under the MIT License - see the LICENSE file for details