[LiteCore] VKAPI - Связка сервера с беседой ВКонтакте

Название: VK API

Ядро: LiteCore

Описание:
Тебе нужно отправить сообщение в вк при помощи команды на сервере? Ты хочешь отобразить репорт от игрока на сервере в беседе вк? Тогда этот плагин определенно для тебя! С помощью регистрации плагина в публичную переменную ты сможешь использовать все его возможности!

Настройка сообщества:

Получаем ключ доступа

Ключ доступа потребуется для получения обновлений в Long Poll, а также для работы с API. Вы можете сгенерировать несколько ключей с разными правами доступа. Важно помнить, что ключи нельзя размещать публично. Для получения ключа требуется лишь открыть раздел «Управление сообществом» (или «Управление страницей», если у вас публичная страница), выбрать вкладку «Работа с API» и нажать «Создать ключ доступа».
После получения ключа, вводим его в конфиг плагина.

Настройка плагина:
При старте сервера плагин создаст папку с конфигом. В конфиге будет префикс сервера.

{
    "PREFIX_SERVER": "[СЕРВЕР]"
}

“PREFIX_SERVER”: Префикс сервера который будет приходить в чат вместе с сообщением с сервера.

Ввод данных:

    public $chat_id = 1; // Либо айди беседы либо ваш айди
	public $token = 'ТОКЕН'; // Тут токен от группы

При открытии главного класса Vk.php вы можете заметить такие строки, именно туда и вписываются данные от группы.

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

Регистрация плагина для работы с вк:

class PluginMainClass extends PluginBase
{
    /**
	* Регистрация публичной переменной
	*/
	public $vkapi;

	public function onEnable(){
		/**
		* Регистрация плагина для работы с вк
		*/
		$this->vkapi = $this->getServer()->getPluginManager()->getPlugin('VKAPI');
	}
}

Отправка сообщения в вк:

class PluginMainClass extends PluginBase
{
	/**
	* Регистрация публичной переменной
	*/
	public $vkapi;

	public function onEnable(){
		/**
		* Регистрация плагина для работы с вк
		*/
		$this->vkapi = $this->getServer()->getPluginManager()->getPlugin('VKAPI');
	}
	$this->vkapi->sendVk("Server enabled!");
}

Можете вносить свои изменения в конфиг плагина который создается после включения!

Обязательно! В конфиге плагина нужно указать свой ТОКЕН и айди ЧАТА в который будет доходить сообщение с сервера.

Обязательно нужно настроить Callback и LongPoll для правильной работы плагина. Необходимо включить события связанные с сообщениями.

Скачать:
VKAPI.zip (1.9 КБ)

Последнее обновление: 29.04.2022 22:33 (Исправлен баг с bad_request)

7 лайков

Может и напишешь как настраивать и где брать токен?

1 лайк

Ага сейчас :slight_smile:

Готово.
182173

@Qyok Вот полная настройка сообщества и плагина :slight_smile:

+10

1 лайк

Спасибо друг :slight_smile:

2 лайка

а можешь написать плагин на репорты с сообщением в вк?

@Qyok, оценка явно несправедливая. Вот основные недостатки этого плагина:

  • Запросы отправляются не асинхронно. Сервер будет подвисать при каждом сообщении
  • Из функционала VK API только отправка сообщения
  • Нет проверки успеха доставки сообщения
  • Используется устаревшая версия VK API 5.91
  • Имеет лишний код (например, функция decode и @mkdir($this->getDataFolder()))
  • chat_id является публичной переменной, а не передаваемым в функции sendVk параметром
  • Плагин написан для устаревшей версии PocketMine-MP API 2.0.0
  • Автор написал в теме, что токен и id чата могут быть указаны в конфиге, однако это не так. Эти переменные нигде не считываются. Таким образом, из 4-х параметров в конфиге, используется только PREFIX_SERVER
    изображение
2 лайка

дерьмом пахнет.

2 лайка

Опубликуй свою доработанную версию, если хочешь.

Нет, просто апи 2.0.0 работает лучше всего.

и где этот файл, обновляю фтп, хотя я серв запустил и отключил, и файл не вижу

Простой плагин зачем так делать если есть давно WME-API
Там лучшее функции чем в VK API