Skip to content

Laravelka/vkBotCore

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

vkBotCore

The core of the bot for callback api vk

Установка

Прописать нужные данные в index.php

События

Пример событий лежит в Bot/Events

Через класс

$event->set(Bot\Events\MessageNew::class); // message_new

Через метод on

$event->on('message_new', function($event, $request) {
  // ...
});

Команды

Пример событий лежит в Bot/Events а пример комманд в Bot/Commands

Через класс

Бот ответит на Начать и старт

$command->add('Начать|Старт', 'Bot\Commands\Class@method')->start(); 

Метод start() задает префикс команды.

->start('/');

Без параметров - снимает. Работает так же для группы комманд и глобально:

$cmd = new Command([
	'start' => '!'
]);
// или
$cmd = new Command([
	'start' => ['!', '^', '/']
]);

Через callback

$cmd->add('Начать|Старт', function($message, $args) {
  $message->send('Привет!');
})->start();

Групповые команды

$cmd->group('video', function() {
  $this->add(null, function($message, $args) { // ответ на команду /video
    $message->send(
      'Список разделов:'
      ."\n"
      .'/video coub - рандом coub видео'
      ."\n"
      .'/video animem - рандом анимем видео'
    );
  })
  $this->add('coub', 'Bot\Commands\Videos@getCoubRandom'); // ответит на /video coub
  $this->add('animem', 'Bot\Commands\Videos@getAniMemesRandom'); // ответит на /video animem
});

P.S Глубина группы может быть бесконечной

Работа с VKAPI

use Engine\Libs\VkApi\Client;
use Engine\Libs\VkApi\Enums\Language;

$api = new Client(
	SERVICE_KEY,
	5.103,
	Language::RUSSIAN
);
$response = $api->messages->send([
	'peer_id' => 1,
	'message' => 'Test',
	'random_id' => rand(11111, 21302414)
]);

// или
$user = $api->users->get(['user_ids' => 1]);

Отправка сообщений и файлов

$message->send('Привет'); // ответ в текущий чат
$message->send('Привет', [
	'peer_id' => 1
]); // ответ в другой чат

$message->sendPhoto(ROOT.'/files/img/test.jpg');
$message->sendPhoto(ROOT.'/files/img/test.jpg', [
	'message' => 'lol kek cheburek'
]);

About

The core of the bot for callback api vk

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages