Исправления после ошибок слияния
This commit is contained in:
parent
4840041054
commit
085974f740
|
@ -13,6 +13,14 @@ use hood\accounts\vk;
|
||||||
// Подключение библеотек
|
// Подключение библеотек
|
||||||
require_once './vendor/autoload.php';
|
require_once './vendor/autoload.php';
|
||||||
|
|
||||||
|
|
||||||
|
// Инициализация ядра
|
||||||
|
$core = core::init();
|
||||||
|
|
||||||
|
// Инициализация робота
|
||||||
|
$robot = $core->group(ACCOUNT_ID)->key(ACCOUNT_KEY);
|
||||||
|
$robot = $core->auth(ACCOUNT_LOGIN, ACCOUNT_PASSWORD)->key(ACCOUNT_KEY);
|
||||||
|
|
||||||
// Инициализация пользователя ВКонтакте
|
// Инициализация пользователя ВКонтакте
|
||||||
$account = (new vk($id))->auth('login', 'password')->key($project_id);
|
$account = (new vk($id))->auth('login', 'password')->key($project_id);
|
||||||
|
|
||||||
|
|
|
@ -171,15 +171,11 @@ final class longpoll
|
||||||
/**
|
/**
|
||||||
* Получить события
|
* Получить события
|
||||||
*
|
*
|
||||||
<<<<<<< HEAD:hood/vk/system/api/longpoll.php
|
|
||||||
* $wait Время ожидания новых событий (в секундах)
|
|
||||||
=======
|
|
||||||
* @param int $wait Время ожидания новых событий (в секундах)
|
* @param int $wait Время ожидания новых событий (в секундах)
|
||||||
*
|
*
|
||||||
* @todo Проверка на ошибки запроса, включая на наличие доступа к лонгполл у ключа
|
* @todo Проверка на ошибки запроса, включая на наличие доступа к лонгполл у ключа
|
||||||
*
|
*
|
||||||
* @return array
|
* @return array
|
||||||
>>>>>>> 579e64b087c763b465464b5ee0d14b16a98d17b2:mirzaev/vk/system/api/longpoll.php
|
|
||||||
*/
|
*/
|
||||||
public function get(int $wait = 25): array
|
public function get(int $wait = 25): array
|
||||||
{
|
{
|
||||||
|
@ -188,15 +184,6 @@ final class longpoll
|
||||||
|
|
||||||
// Запрос на получение доступа и данных LongPoll-сервера
|
// Запрос на получение доступа и данных LongPoll-сервера
|
||||||
$response = json_decode($this->robot->browser->request(method: 'POST', uri: 'groups.getLongPollServer', options: [
|
$response = json_decode($this->robot->browser->request(method: 'POST', uri: 'groups.getLongPollServer', options: [
|
||||||
<<<<<<< HEAD:hood/vk/system/api/longpoll.php
|
|
||||||
'form_params' => [
|
|
||||||
'group_id' => $this->robot->id,
|
|
||||||
'v' => $this->robot->version,
|
|
||||||
'access_token' => $this->robot->key
|
|
||||||
],
|
|
||||||
|
|
||||||
])->getBody()->getContents())->response;
|
|
||||||
=======
|
|
||||||
'form_params' => $this->robot->api['settings']
|
'form_params' => $this->robot->api['settings']
|
||||||
])->getBody()->getContents());
|
])->getBody()->getContents());
|
||||||
|
|
||||||
|
@ -208,7 +195,6 @@ final class longpoll
|
||||||
|
|
||||||
// Инициализация
|
// Инициализация
|
||||||
$response = $response->response;
|
$response = $response->response;
|
||||||
>>>>>>> 579e64b087c763b465464b5ee0d14b16a98d17b2:mirzaev/vk/system/api/longpoll.php
|
|
||||||
|
|
||||||
// Ключ доступа
|
// Ключ доступа
|
||||||
$this->key = $response->key;
|
$this->key = $response->key;
|
||||||
|
|
|
@ -13,17 +13,6 @@ use Exception;
|
||||||
/**
|
/**
|
||||||
* Ядро
|
* Ядро
|
||||||
*
|
*
|
||||||
<<<<<<< HEAD
|
|
||||||
* $robots Количество роботов
|
|
||||||
* $timezone Временная зона (журналирование)
|
|
||||||
* $path Пути (архитектура проекта)
|
|
||||||
*
|
|
||||||
* protected static function __construct() Инициализация
|
|
||||||
* public static function init() Запуск инициализации или получение инстанции
|
|
||||||
* public public function build() Сборщик
|
|
||||||
* public function set($id, $value) Запись в реестр
|
|
||||||
* public function get($id = null) Чтение из реестра
|
|
||||||
=======
|
|
||||||
* @property-read int $robots Количество роботов
|
* @property-read int $robots Количество роботов
|
||||||
* @property string $timezone Временная зона (журналирование)
|
* @property string $timezone Временная зона (журналирование)
|
||||||
* @property array $path Пути (архитектура проекта)
|
* @property array $path Пути (архитектура проекта)
|
||||||
|
@ -33,7 +22,6 @@ use Exception;
|
||||||
* @method public public function build() Сборщик
|
* @method public public function build() Сборщик
|
||||||
* @method public function set($id, $value) Запись в реестр
|
* @method public function set($id, $value) Запись в реестр
|
||||||
* @method public function get($id = null) Чтение из реестра
|
* @method public function get($id = null) Чтение из реестра
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
*
|
*
|
||||||
* @package mirzaev\vk
|
* @package mirzaev\vk
|
||||||
* @author Arsen Mirzaev Tatyano-Muradovich <red@hood.su>
|
* @author Arsen Mirzaev Tatyano-Muradovich <red@hood.su>
|
||||||
|
@ -42,29 +30,13 @@ final class core
|
||||||
{
|
{
|
||||||
use singleton;
|
use singleton;
|
||||||
|
|
||||||
<<<<<<< HEAD:hood/vk/system/core.php
|
|
||||||
<<<<<<< HEAD
|
|
||||||
/**
|
/**
|
||||||
* Счётчик роботов
|
* Счётчик роботов
|
||||||
=======
|
|
||||||
/**
|
|
||||||
=======
|
|
||||||
/**
|
|
||||||
>>>>>>> 579e64b087c763b465464b5ee0d14b16a98d17b2:mirzaev/vk/system/core.php
|
|
||||||
* Счётчик роботов
|
|
||||||
*
|
|
||||||
* @var int
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
*/
|
*/
|
||||||
private int $robots = 0;
|
private int $robots = 0;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Реестр роботов
|
* Реестр роботов
|
||||||
<<<<<<< HEAD
|
|
||||||
=======
|
|
||||||
*
|
|
||||||
* @var array
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
*/
|
*/
|
||||||
private array $registry = [];
|
private array $registry = [];
|
||||||
|
|
||||||
|
@ -72,60 +44,32 @@ final class core
|
||||||
* Временная зона
|
* Временная зона
|
||||||
*
|
*
|
||||||
* Используется в логировании
|
* Используется в логировании
|
||||||
<<<<<<< HEAD
|
|
||||||
=======
|
|
||||||
*
|
|
||||||
* @var string
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
*/
|
*/
|
||||||
private string $timezone;
|
private string $timezone;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Путь до корня проекта
|
* Путь до корня проекта
|
||||||
<<<<<<< HEAD
|
|
||||||
=======
|
|
||||||
*
|
|
||||||
* @var string
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
*/
|
*/
|
||||||
private string $path_root;
|
private string $path_root;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Путь до папки журналов
|
* Путь до папки журналов
|
||||||
<<<<<<< HEAD
|
|
||||||
=======
|
|
||||||
*
|
|
||||||
* @var string
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
*/
|
*/
|
||||||
private string $path_logs;
|
private string $path_logs;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Путь до временной папки
|
* Путь до временной папки
|
||||||
<<<<<<< HEAD
|
|
||||||
=======
|
|
||||||
*
|
|
||||||
* @var string
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
*/
|
*/
|
||||||
private string $path_temp;
|
private string $path_temp;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Запись в журнал
|
* Запись в журнал
|
||||||
*
|
*
|
||||||
<<<<<<< HEAD
|
|
||||||
* $file Файл для журналирования
|
|
||||||
=======
|
|
||||||
* @param string $file Файл для журналирования
|
* @param string $file Файл для журналирования
|
||||||
*
|
*
|
||||||
<<<<<<< HEAD:hood/vk/system/core.php
|
|
||||||
* @return self
|
* @return self
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
*
|
*
|
||||||
=======
|
|
||||||
>>>>>>> 579e64b087c763b465464b5ee0d14b16a98d17b2:mirzaev/vk/system/core.php
|
|
||||||
* @todo Добавить установку иного журналиста по спецификации PSR-3
|
* @todo Добавить установку иного журналиста по спецификации PSR-3
|
||||||
* @todo Более гибкое журналирование
|
|
||||||
*/
|
*/
|
||||||
public function journal(string $file = null): self
|
public function journal(string $file = null): self
|
||||||
{
|
{
|
||||||
|
@ -138,23 +82,12 @@ final class core
|
||||||
/**
|
/**
|
||||||
* Записать в реестр
|
* Записать в реестр
|
||||||
*
|
*
|
||||||
<<<<<<< HEAD
|
|
||||||
* $id Идентификатор
|
|
||||||
* $robot робот
|
|
||||||
*
|
|
||||||
* @see hood\vk\traits\registry Модификация метода
|
|
||||||
=======
|
|
||||||
* @param int $id
|
* @param int $id
|
||||||
* @param robot $robot
|
* @param robot $robot
|
||||||
*
|
*
|
||||||
<<<<<<< HEAD:hood/vk/system/core.php
|
* @see mirzaev\vk\traits\registry Модификация метода
|
||||||
* @see hood\vk\traits\registry Модификация метода
|
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
=======
|
|
||||||
* @see mirzaev\vk\traits\registry Модификация метода
|
|
||||||
>>>>>>> 579e64b087c763b465464b5ee0d14b16a98d17b2:mirzaev/vk/system/core.php
|
|
||||||
*/
|
*/
|
||||||
public function write(int $id, robot $robot): void
|
public function write(int $id, robot $robot): void
|
||||||
{
|
{
|
||||||
|
@ -182,23 +115,12 @@ final class core
|
||||||
*
|
*
|
||||||
* Если не передать идентификатор, то вернёт все значения
|
* Если не передать идентификатор, то вернёт все значения
|
||||||
*
|
*
|
||||||
<<<<<<< HEAD
|
|
||||||
* $id Идентификатор
|
|
||||||
* $session Сессия
|
|
||||||
*
|
|
||||||
* @see hood\vk\traits\registry Модификация метода
|
|
||||||
=======
|
|
||||||
* @param int|null $id Идентификатор
|
* @param int|null $id Идентификатор
|
||||||
* @param int|null $session Сессия
|
* @param int|null $session Сессия
|
||||||
*
|
*
|
||||||
* @see mirzaev\vk\traits\registry Модификация метода
|
* @see mirzaev\vk\traits\registry Модификация метода
|
||||||
*
|
*
|
||||||
<<<<<<< HEAD:hood/vk/system/core.php
|
|
||||||
* @return mixed
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
=======
|
|
||||||
* @return mixed Весь реестр, робота или сессию робота
|
* @return mixed Весь реестр, робота или сессию робота
|
||||||
>>>>>>> 579e64b087c763b465464b5ee0d14b16a98d17b2:mirzaev/vk/system/core.php
|
|
||||||
*/
|
*/
|
||||||
public function read(int|null $id = null, int|null $session = null): mixed
|
public function read(int|null $id = null, int|null $session = null): mixed
|
||||||
{
|
{
|
||||||
|
@ -233,23 +155,12 @@ final class core
|
||||||
/**
|
/**
|
||||||
* Удалить из реестра
|
* Удалить из реестра
|
||||||
*
|
*
|
||||||
<<<<<<< HEAD
|
|
||||||
* $id Идентификатор
|
|
||||||
* $session Сессия
|
|
||||||
*
|
|
||||||
* @see hood\vk\traits\registry Модификация метода
|
|
||||||
=======
|
|
||||||
* @param int|null $id Идентификатор
|
* @param int|null $id Идентификатор
|
||||||
* @param int|null $session Сессия
|
* @param int|null $session Сессия
|
||||||
*
|
*
|
||||||
<<<<<<< HEAD:hood/vk/system/core.php
|
|
||||||
* @see hood\vk\traits\registry Модификация метода
|
|
||||||
*
|
|
||||||
* @return void
|
* @return void
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
*
|
||||||
=======
|
|
||||||
* @see mirzaev\vk\traits\registry Модификация метода
|
* @see mirzaev\vk\traits\registry Модификация метода
|
||||||
>>>>>>> 579e64b087c763b465464b5ee0d14b16a98d17b2:mirzaev/vk/system/core.php
|
|
||||||
*/
|
*/
|
||||||
public function delete(int|null $id = null, int|null $session = null): void
|
public function delete(int|null $id = null, int|null $session = null): void
|
||||||
{
|
{
|
||||||
|
@ -296,18 +207,10 @@ final class core
|
||||||
/**
|
/**
|
||||||
* Записать свойство
|
* Записать свойство
|
||||||
*
|
*
|
||||||
<<<<<<< HEAD
|
|
||||||
* $name Название
|
|
||||||
* $value Значение
|
|
||||||
=======
|
|
||||||
* @param mixed $name Название
|
* @param mixed $name Название
|
||||||
* @param mixed $value Значение
|
* @param mixed $value Значение
|
||||||
<<<<<<< HEAD:hood/vk/system/core.php
|
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
=======
|
|
||||||
>>>>>>> 579e64b087c763b465464b5ee0d14b16a98d17b2:mirzaev/vk/system/core.php
|
|
||||||
*/
|
*/
|
||||||
public function __set(mixed $name, mixed $value): void
|
public function __set(mixed $name, mixed $value): void
|
||||||
{
|
{
|
||||||
|
@ -321,20 +224,12 @@ final class core
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Прочитать свойство
|
* Прочитать свойство
|
||||||
<<<<<<< HEAD
|
|
||||||
*
|
*
|
||||||
* Значение по умолчанию, есле не задано
|
* Значение по умолчанию, есле не задано
|
||||||
*
|
|
||||||
* $name Название
|
|
||||||
=======
|
|
||||||
*
|
*
|
||||||
* @param mixed $name Название
|
* @param mixed $name Название
|
||||||
<<<<<<< HEAD:hood/vk/system/core.php
|
|
||||||
*
|
*
|
||||||
* @return mixed
|
* @return mixed
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
=======
|
|
||||||
>>>>>>> 579e64b087c763b465464b5ee0d14b16a98d17b2:mirzaev/vk/system/core.php
|
|
||||||
*/
|
*/
|
||||||
public function __get(mixed $name): mixed
|
public function __get(mixed $name): mixed
|
||||||
{
|
{
|
||||||
|
@ -354,18 +249,10 @@ final class core
|
||||||
* Ищет класс описывающий робота,
|
* Ищет класс описывающий робота,
|
||||||
* создаёт и возвращает его объект
|
* создаёт и возвращает его объект
|
||||||
*
|
*
|
||||||
<<<<<<< HEAD
|
|
||||||
* $method Метод
|
|
||||||
* $params Параметры
|
|
||||||
=======
|
|
||||||
* @param string $method Метод
|
* @param string $method Метод
|
||||||
* @param array $params Параметры
|
* @param array $params Параметры
|
||||||
<<<<<<< HEAD:hood/vk/system/core.php
|
|
||||||
*
|
*
|
||||||
* @return robot
|
* @return robot
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
=======
|
|
||||||
>>>>>>> 579e64b087c763b465464b5ee0d14b16a98d17b2:mirzaev/vk/system/core.php
|
|
||||||
*/
|
*/
|
||||||
public function __call(string $method, array $params): robot
|
public function __call(string $method, array $params): robot
|
||||||
{
|
{
|
||||||
|
|
|
@ -6,56 +6,15 @@ namespace mirzaev\vk\robots;
|
||||||
|
|
||||||
use Exception;
|
use Exception;
|
||||||
|
|
||||||
use GuzzleHttp\Client as browser;
|
|
||||||
|
|
||||||
<<<<<<< HEAD:hood/vk/system/robots/robot.php
|
|
||||||
<<<<<<< HEAD
|
|
||||||
use hood\vk\core,
|
|
||||||
hood\vk\api\methods\method,
|
|
||||||
hood\vk\proxies\proxy,
|
|
||||||
hood\vk\captcha\captcha;
|
|
||||||
|
|
||||||
use hood\accounts\vk as account;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Робот
|
|
||||||
*
|
|
||||||
* $id Идентификатор
|
|
||||||
* $session Сессия
|
|
||||||
* $key Ключ
|
|
||||||
* $version Версия API
|
|
||||||
* $account Аккаунт
|
|
||||||
* $browser Браузер
|
|
||||||
* $proxy Прокси
|
|
||||||
* $captcha Обработчик капчи
|
|
||||||
*
|
|
||||||
* $messages_mode Режим отправки сообщений
|
|
||||||
*
|
|
||||||
* public function __construct(int $id = null, float $version = null) Конструктор
|
|
||||||
* public function key(string $key) Инициализация ключа
|
|
||||||
* public function account(account $account) Инициализация аккаунта
|
|
||||||
* public function __set($name, $value) Запись свойства
|
|
||||||
* public function __get($name) Чтение свойства
|
|
||||||
* public function __isset($name) Проверка на инициализированность свойства
|
|
||||||
* public function __call(string $method, array $params) Вызов метода
|
|
||||||
* public static function __callStatic(string $method, array $params) Вызов статического метода
|
|
||||||
* public function __toString() Конвертация в строку
|
|
||||||
=======
|
|
||||||
use hood\vk\core;
|
|
||||||
use hood\vk\proxies\proxy;
|
|
||||||
use hood\vk\captcha\captcha;
|
|
||||||
use hood\vk\api\api;
|
|
||||||
use hood\vk\api\methods\method;
|
|
||||||
=======
|
|
||||||
use mirzaev\vk\core;
|
use mirzaev\vk\core;
|
||||||
use mirzaev\vk\proxies\proxy;
|
use mirzaev\vk\proxies\proxy;
|
||||||
use mirzaev\vk\captcha\captcha;
|
use mirzaev\vk\captcha\captcha;
|
||||||
use mirzaev\vk\api\settings as api;
|
use mirzaev\vk\api\settings as api;
|
||||||
use mirzaev\vk\api\methods\method;
|
use mirzaev\vk\api\methods\method;
|
||||||
>>>>>>> 579e64b087c763b465464b5ee0d14b16a98d17b2:mirzaev/vk/system/robots/robot.php
|
|
||||||
|
|
||||||
use mirzaev\accounts\vk as account;
|
use mirzaev\accounts\vk as account;
|
||||||
|
|
||||||
|
use GuzzleHttp\Client as browser;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Робот
|
* Робот
|
||||||
|
@ -80,406 +39,238 @@ use mirzaev\accounts\vk as account;
|
||||||
* @method public function __call(string $method, array $params) Вызов метода
|
* @method public function __call(string $method, array $params) Вызов метода
|
||||||
* @method public static function __callStatic(string $method, array $params) Вызов статического метода
|
* @method public static function __callStatic(string $method, array $params) Вызов статического метода
|
||||||
* @method public function __toString() Конвертация в строку
|
* @method public function __toString() Конвертация в строку
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
*
|
*
|
||||||
* @package mirzaev\vk\robots
|
* @package mirzaev\vk\robots
|
||||||
* @author Arsen Mirzaev Tatyano-Muradovich <red@hood.su>
|
* @author Arsen Mirzaev Tatyano-Muradovich <red@hood.su>
|
||||||
*/
|
*/
|
||||||
abstract class robot
|
abstract class robot
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
<<<<<<< HEAD
|
* Сессия
|
||||||
* Идентификатор
|
*/
|
||||||
*/
|
protected int $session;
|
||||||
protected int $id;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Сессия
|
* Аккаунт
|
||||||
=======
|
*/
|
||||||
* @var int Сессия
|
private account $account;
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
*/
|
|
||||||
protected int $session;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
<<<<<<< HEAD:hood/vk/system/robots/robot.php
|
* Прокси
|
||||||
<<<<<<< HEAD
|
*/
|
||||||
* Ключ
|
protected proxy $proxy;
|
||||||
=======
|
|
||||||
* @var string Ключ
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
*/
|
|
||||||
protected string $key;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
<<<<<<< HEAD
|
* Обработчик капчи
|
||||||
* Версия API
|
*/
|
||||||
*/
|
protected captcha $captcha;
|
||||||
protected float $version = 5.124;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Аккаунт
|
* $messages_mode Режим отправки сообщений
|
||||||
=======
|
*/
|
||||||
=======
|
protected int $messages_mode = 1;
|
||||||
>>>>>>> 579e64b087c763b465464b5ee0d14b16a98d17b2:mirzaev/vk/system/robots/robot.php
|
|
||||||
* @var string Аккаунт
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
*/
|
|
||||||
private account $account;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
<<<<<<< HEAD
|
* Конструктор
|
||||||
* Прокси
|
*
|
||||||
=======
|
* @param int|null $id Идентификатор
|
||||||
* @var proxy Прокси
|
* @param string|null $key Ключ
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
*/
|
||||||
*/
|
public function __construct(
|
||||||
protected proxy $proxy;
|
protected int|null $id = null,
|
||||||
|
protected string|null $key = null
|
||||||
|
) {
|
||||||
|
// Инициализация ядра
|
||||||
|
$core = core::init();
|
||||||
|
|
||||||
/**
|
// Идентификация робота
|
||||||
<<<<<<< HEAD
|
$this->id = $id ?? $core->robots + 1;
|
||||||
* Обработчик капчи
|
|
||||||
=======
|
|
||||||
* @var captcha Обработчик капчи
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
*/
|
|
||||||
protected captcha $captcha;
|
|
||||||
|
|
||||||
/**
|
// Регистрация робота в ядре
|
||||||
<<<<<<< HEAD
|
$core->write($this->id, $this);
|
||||||
* $messages_mode Режим отправки сообщений
|
|
||||||
*/
|
|
||||||
protected int $messages_mode = 1;
|
|
||||||
|
|
||||||
=======
|
// Идентификация сессии робота
|
||||||
* @var int Режим отправки сообщений
|
$this->session = count($core->read($this->id));
|
||||||
*/
|
}
|
||||||
protected int $messages_mode = 1;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @var api API ВКонтакте
|
|
||||||
*/
|
|
||||||
protected api $api;
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Конструктор
|
* Инициализация ключа
|
||||||
*
|
*
|
||||||
<<<<<<< HEAD:hood/vk/system/robots/robot.php
|
* @param string $key Ключ
|
||||||
<<<<<<< HEAD
|
*
|
||||||
* $id Идентификатор
|
* @return self
|
||||||
* $version Версия API
|
*/
|
||||||
*/
|
public function key(string $key): self
|
||||||
public function __construct(int|null $id = null, float|null $version = null)
|
{
|
||||||
{
|
$this->__set('key', $key);
|
||||||
=======
|
|
||||||
* @param int $id Идентификатор
|
|
||||||
=======
|
|
||||||
* @param int|null $id Идентификатор
|
|
||||||
* @param string|null $key Ключ
|
|
||||||
>>>>>>> 579e64b087c763b465464b5ee0d14b16a98d17b2:mirzaev/vk/system/robots/robot.php
|
|
||||||
*/
|
|
||||||
public function __construct(
|
|
||||||
protected int|null $id = null,
|
|
||||||
protected string|null $key = null
|
|
||||||
) {
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
// Инициализация ядра
|
|
||||||
$core = core::init();
|
|
||||||
|
|
||||||
// Идентификация робота
|
return $this;
|
||||||
$this->id = $id ?? $core->robots + 1;
|
}
|
||||||
|
|
||||||
// Регистрация робота в ядре
|
/**
|
||||||
$core->write($this->id, $this);
|
* Инициализация аккаунта
|
||||||
|
*
|
||||||
|
* @param account $account Аккаунт
|
||||||
|
*
|
||||||
|
* @return self
|
||||||
|
*/
|
||||||
|
public function account(account $account): self
|
||||||
|
{
|
||||||
|
$this->__set('account', $account);
|
||||||
|
|
||||||
// Идентификация сессии робота
|
return $this;
|
||||||
<<<<<<< HEAD:hood/vk/system/robots/robot.php
|
}
|
||||||
$this->session = count($core->get($this->id));
|
|
||||||
<<<<<<< HEAD
|
|
||||||
|
|
||||||
if (isset($version)) {
|
/**
|
||||||
// Инициализация версии
|
* Инициализация прокси
|
||||||
$this->version = $version;
|
*
|
||||||
}
|
* @param proxy $proxy Прокси
|
||||||
=======
|
*
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
* @return self
|
||||||
=======
|
*/
|
||||||
$this->session = count($core->read($this->id));
|
public function proxy(proxy $proxy): self
|
||||||
>>>>>>> 579e64b087c763b465464b5ee0d14b16a98d17b2:mirzaev/vk/system/robots/robot.php
|
{
|
||||||
}
|
$this->__set('proxy', $proxy);
|
||||||
|
|
||||||
/**
|
return $this;
|
||||||
* Инициализация ключа
|
}
|
||||||
*
|
|
||||||
<<<<<<< HEAD
|
|
||||||
* $key Ключ
|
|
||||||
=======
|
|
||||||
* @param string $key Ключ
|
|
||||||
*
|
|
||||||
* @return self
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
*/
|
|
||||||
public function key(string $key): self
|
|
||||||
{
|
|
||||||
$this->__set('key', $key);
|
|
||||||
|
|
||||||
return $this;
|
/**
|
||||||
}
|
* Инициализация обработчика капчи
|
||||||
|
*
|
||||||
|
* @param captcha $captcha Обработчик капчи
|
||||||
|
*
|
||||||
|
* @return self
|
||||||
|
*/
|
||||||
|
public function captcha(captcha $captcha): self
|
||||||
|
{
|
||||||
|
$this->__set('captcha', $captcha);
|
||||||
|
|
||||||
/**
|
return $this;
|
||||||
* Инициализация аккаунта
|
}
|
||||||
*
|
|
||||||
<<<<<<< HEAD
|
|
||||||
* $account Аккаунт
|
|
||||||
=======
|
|
||||||
* @param account $account Аккаунт
|
|
||||||
*
|
|
||||||
* @return self
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
*/
|
|
||||||
public function account(account $account): self
|
|
||||||
{
|
|
||||||
$this->__set('account', $account);
|
|
||||||
|
|
||||||
return $this;
|
/**
|
||||||
}
|
* Записать свойство
|
||||||
|
*
|
||||||
|
* @param string $name Название
|
||||||
|
* @param mixed $value Значение
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function __set(string $name, mixed $value): void
|
||||||
|
{
|
||||||
|
match ($name) {
|
||||||
|
'id' => isset($this->id) ? throw new Exception('Запрещено перезаписывать идентификатор', 500) : $this->id = (int) $value,
|
||||||
|
'session' => isset($this->session) ? throw new Exception('Запрещено перезаписывать сессию', 500) : $this->session = (int) $value,
|
||||||
|
'key' => isset($this->key) ? throw new Exception('Запрещено перезаписывать ключ', 500) : $this->key = (string) $value,
|
||||||
|
'api' => isset($this->api) ? throw new Exception('Запрещено перезаписывать API', 500) : $this->api = $value,
|
||||||
|
'account' => isset($this->account) ? throw new Exception('Запрещено перезаписывать аккаунт', 500) : $this->account = $value,
|
||||||
|
'browser' => isset($this->browser) ? throw new Exception('Запрещено перезаписывать браузер', 500) : $this->browser = $value,
|
||||||
|
'proxy' => $this->proxy = $value,
|
||||||
|
'captcha' => $this->captcha = $value,
|
||||||
|
'messages_new' => $this->messages_new = (int) $value,
|
||||||
|
default => throw new Exception("Свойство $name не найдено", 404)
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Инициализация прокси
|
* Прочитать свойство
|
||||||
*
|
*
|
||||||
<<<<<<< HEAD
|
* @param string $name Название
|
||||||
* $proxy Прокси
|
*
|
||||||
=======
|
* @return mixed
|
||||||
* @param proxy $proxy Прокси
|
*/
|
||||||
*
|
public function __get(string $name): mixed
|
||||||
* @return self
|
{
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
return match ($name) {
|
||||||
*/
|
'id' => $this->id ?? throw new Exception('Идентификатор не инициализирован', 500),
|
||||||
public function proxy(proxy $proxy): self
|
'session' => $this->session ?? throw new Exception('Сессия не инициализирована', 500),
|
||||||
{
|
'key' => $this->key ?? throw new Exception('Ключ не инициализирован', 500),
|
||||||
$this->__set('proxy', $proxy);
|
'api' => $this->api ?? $this->api = new api($this),
|
||||||
|
'account' => $this->account ?? throw new Exception('Аккаунт не инициализирован', 500),
|
||||||
|
'browser' => $this->browser ?? $this->browser = new browser([
|
||||||
|
'base_uri' => 'https://api.vk.com/method/',
|
||||||
|
'cookies' => true
|
||||||
|
]),
|
||||||
|
'proxy' => $this->proxy,
|
||||||
|
'captcha' => $this->captcha,
|
||||||
|
'messages_new' => $this->messages_new,
|
||||||
|
default => throw new Exception("Свойство $name не найдено", 404)
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
return $this;
|
/**
|
||||||
}
|
* Проверить свойство на инициализированность
|
||||||
|
*
|
||||||
|
* @param string $name Название
|
||||||
|
*
|
||||||
|
* @return mixed
|
||||||
|
*/
|
||||||
|
public function __isset(string $name): bool
|
||||||
|
{
|
||||||
|
return match ($name) {
|
||||||
|
'id' => isset($this->id),
|
||||||
|
'session' => isset($this->session),
|
||||||
|
'key' => isset($this->key),
|
||||||
|
'account' => isset($this->account),
|
||||||
|
'api' => isset($this->api),
|
||||||
|
'browser' => isset($this->browser),
|
||||||
|
'proxy' => isset($this->proxy),
|
||||||
|
'captcha' => isset($this->captcha),
|
||||||
|
'messages_new' => isset($this->messages_new),
|
||||||
|
default => throw new Exception("Свойство $name не найдено", 404)
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Инициализация обработчика капчи
|
* Вызвать метод
|
||||||
*
|
*
|
||||||
<<<<<<< HEAD
|
* Ищет класс описывающий метод API ВКонтакте,
|
||||||
* $captcha Обработчик капчи
|
* создаёт и возвращает его объект
|
||||||
=======
|
*
|
||||||
* @param captcha $captcha Обработчик капчи
|
* @param string $method Метод
|
||||||
*
|
* @param array $params Параметры
|
||||||
* @return self
|
*
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
* @return method
|
||||||
*/
|
*/
|
||||||
public function captcha(captcha $captcha): self
|
public function __call(string $method, array $params): method
|
||||||
{
|
{
|
||||||
$this->__set('captcha', $captcha);
|
if (class_exists($class = '\\mirzaev\\vk\\api\\methods\\' . $method . 's')) {
|
||||||
|
// Если найден класс реализующий запрошенный метод
|
||||||
|
return new $class($this, ...$params);
|
||||||
|
}
|
||||||
|
|
||||||
return $this;
|
throw new Exception("Метод $method не найден", 404);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Записать свойство
|
* Вызвать статический метод
|
||||||
*
|
*
|
||||||
<<<<<<< HEAD
|
* Ищет класс описывающий метод API ВКонтакте,
|
||||||
* $name Название
|
* создаёт и возвращает его объект
|
||||||
* $value Значение
|
*
|
||||||
=======
|
* @param string $method Метод
|
||||||
* @param string $name Название
|
* @param array $params Параметры
|
||||||
* @param mixed $value Значение
|
*
|
||||||
*
|
* @return method
|
||||||
* @return void
|
*/
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
public static function __callStatic(string $method, array $params): method
|
||||||
*/
|
{
|
||||||
public function __set(string $name, mixed $value): void
|
if (class_exists($class = '\\mirzaev\\vk\\api\\methods\\' . $method . 's')) {
|
||||||
{
|
return $class(self, ...$params);
|
||||||
match ($name) {
|
}
|
||||||
<<<<<<< HEAD:hood/vk/system/robots/robot.php
|
|
||||||
'id' => !isset($this->id) ? $this->id = (int) $value : throw new Exception('Запрещено перезаписывать идентификатор'),
|
|
||||||
'session' => !isset($this->session) ? $this->session = (int) $value : throw new Exception('Запрещено перезаписывать сессию'),
|
|
||||||
'key' => !isset($this->key) ? $this->key = (string) $value : throw new Exception('Запрещено перезаписывать ключ'),
|
|
||||||
<<<<<<< HEAD
|
|
||||||
'version' => !isset($this->version) ? $this->version = (float) $value : throw new Exception('Запрещено перезаписывать версию API'),
|
|
||||||
=======
|
|
||||||
'api' => !isset($this->api) ? $this->api = $value : throw new Exception('Запрещено перезаписывать API'),
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
'account' => !isset($this->account) && $value instanceof account ? $this->account = $value : throw new Exception('Запрещено перезаписывать аккаунт'),
|
|
||||||
'browser' => !isset($this->browser) && $value instanceof browser ? $this->browser = $value : throw new Exception('Запрещено перезаписывать браузер'),
|
|
||||||
'proxy' => $this->proxy = $value,
|
|
||||||
'captcha' => $this->captcha = $value,
|
|
||||||
'messages_new' => $this->messages_new = (int) $value,
|
|
||||||
<<<<<<< HEAD
|
|
||||||
// Если свойство не найдено:
|
|
||||||
=======
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
default => throw new Exception('Свойство не найдено: ' . $name)
|
|
||||||
=======
|
|
||||||
'id' => isset($this->id) ? throw new Exception('Запрещено перезаписывать идентификатор', 500) : $this->id = (int) $value,
|
|
||||||
'session' => isset($this->session) ? throw new Exception('Запрещено перезаписывать сессию', 500) : $this->session = (int) $value,
|
|
||||||
'key' => isset($this->key) ? throw new Exception('Запрещено перезаписывать ключ', 500) : $this->key = (string) $value,
|
|
||||||
'api' => isset($this->api) ? throw new Exception('Запрещено перезаписывать API', 500) : $this->api = $value,
|
|
||||||
'account' => isset($this->account) ? throw new Exception('Запрещено перезаписывать аккаунт', 500) : $this->account = $value,
|
|
||||||
'browser' => isset($this->browser) ? throw new Exception('Запрещено перезаписывать браузер', 500) : $this->browser = $value,
|
|
||||||
'proxy' => $this->proxy = $value,
|
|
||||||
'captcha' => $this->captcha = $value,
|
|
||||||
'messages_new' => $this->messages_new = (int) $value,
|
|
||||||
default => throw new Exception("Свойство $name не найдено", 404)
|
|
||||||
>>>>>>> 579e64b087c763b465464b5ee0d14b16a98d17b2:mirzaev/vk/system/robots/robot.php
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
throw new Exception("Метод $method не найден", 404);
|
||||||
* Прочитать свойство
|
}
|
||||||
*
|
|
||||||
<<<<<<< HEAD
|
|
||||||
* $name Название
|
|
||||||
*
|
|
||||||
* @return mixed
|
|
||||||
*/
|
|
||||||
public function __get(string $name)
|
|
||||||
{
|
|
||||||
return match ($name) {
|
|
||||||
'id' => isset($this->id) ? $this->id : throw new Exception('Идентификатор не инициализирован'),
|
|
||||||
'session' => isset($this->session) ? $this->session : throw new Exception('Сессия не инициализирована'),
|
|
||||||
'key' => isset($this->key) ? $this->key : throw new Exception('Ключ не инициализирован'),
|
|
||||||
'version' => isset($this->version) ? $this->version : throw new Exception('Версия не инициализирована'),
|
|
||||||
'account' => isset($this->account) ? $this->account : throw new Exception('Аккаунт не инициализирован'),
|
|
||||||
=======
|
|
||||||
* @param string $name Название
|
|
||||||
*
|
|
||||||
* @return mixed
|
|
||||||
*/
|
|
||||||
public function __get(string $name): mixed
|
|
||||||
{
|
|
||||||
return match ($name) {
|
|
||||||
'id' => $this->id ?? throw new Exception('Идентификатор не инициализирован', 500),
|
|
||||||
'session' => $this->session ?? throw new Exception('Сессия не инициализирована', 500),
|
|
||||||
'key' => $this->key ?? throw new Exception('Ключ не инициализирован', 500),
|
|
||||||
'api' => $this->api ?? $this->api = new api($this),
|
|
||||||
<<<<<<< HEAD:hood/vk/system/robots/robot.php
|
|
||||||
'account' => $this->account ?? throw new Exception('Аккаунт не инициализирован'),
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
=======
|
|
||||||
'account' => $this->account ?? throw new Exception('Аккаунт не инициализирован', 500),
|
|
||||||
>>>>>>> 579e64b087c763b465464b5ee0d14b16a98d17b2:mirzaev/vk/system/robots/robot.php
|
|
||||||
'browser' => $this->browser ?? $this->browser = new browser([
|
|
||||||
'base_uri' => 'https://api.vk.com/method/',
|
|
||||||
'cookies' => true
|
|
||||||
]),
|
|
||||||
'proxy' => $this->proxy,
|
|
||||||
'captcha' => $this->captcha,
|
|
||||||
'messages_new' => $this->messages_new,
|
|
||||||
<<<<<<< HEAD:hood/vk/system/robots/robot.php
|
|
||||||
<<<<<<< HEAD
|
|
||||||
// Если свойство не найдено:
|
|
||||||
=======
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
default => throw new Exception('Свойство не найдено: ' . $name)
|
|
||||||
=======
|
|
||||||
default => throw new Exception("Свойство $name не найдено", 404)
|
|
||||||
>>>>>>> 579e64b087c763b465464b5ee0d14b16a98d17b2:mirzaev/vk/system/robots/robot.php
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Проверить свойство на инициализированность
|
* Конвертировать в строку
|
||||||
*
|
*
|
||||||
<<<<<<< HEAD
|
* @return string
|
||||||
* $name Название
|
*/
|
||||||
*
|
public function __toString(): string
|
||||||
* @return mixed
|
{
|
||||||
*/
|
return (string) $this->id;
|
||||||
public function __isset(string $name)
|
}
|
||||||
=======
|
|
||||||
* @param string $name Название
|
|
||||||
*
|
|
||||||
* @return mixed
|
|
||||||
*/
|
|
||||||
public function __isset(string $name): bool
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
{
|
|
||||||
return match ($name) {
|
|
||||||
'id' => isset($this->id),
|
|
||||||
'session' => isset($this->session),
|
|
||||||
'key' => isset($this->key),
|
|
||||||
'account' => isset($this->account),
|
|
||||||
<<<<<<< HEAD
|
|
||||||
'version' => isset($this->version),
|
|
||||||
=======
|
|
||||||
'api' => isset($this->api),
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
'browser' => isset($this->browser),
|
|
||||||
'proxy' => isset($this->proxy),
|
|
||||||
'captcha' => isset($this->captcha),
|
|
||||||
'messages_new' => isset($this->messages_new),
|
|
||||||
default => throw new Exception("Свойство $name не найдено", 404)
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Вызвать метод
|
|
||||||
*
|
|
||||||
* Ищет класс описывающий метод API ВКонтакте,
|
|
||||||
* создаёт и возвращает его объект
|
|
||||||
*
|
|
||||||
<<<<<<< HEAD
|
|
||||||
* $method Метод
|
|
||||||
* $params Параметры
|
|
||||||
=======
|
|
||||||
* @param string $method Метод
|
|
||||||
* @param array $params Параметры
|
|
||||||
*
|
|
||||||
* @return method
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
*/
|
|
||||||
public function __call(string $method, array $params): method
|
|
||||||
{
|
|
||||||
if (class_exists($class = '\\mirzaev\\vk\\api\\methods\\' . $method . 's')) {
|
|
||||||
// Если найден класс реализующий запрошенный метод
|
|
||||||
return new $class($this, ...$params);
|
|
||||||
}
|
|
||||||
|
|
||||||
throw new Exception("Метод $method не найден", 404);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Вызвать статический метод
|
|
||||||
*
|
|
||||||
* Ищет класс описывающий метод API ВКонтакте,
|
|
||||||
* создаёт и возвращает его объект
|
|
||||||
*
|
|
||||||
<<<<<<< HEAD
|
|
||||||
* $method Метод
|
|
||||||
* $params Параметры
|
|
||||||
=======
|
|
||||||
* @param string $method Метод
|
|
||||||
* @param array $params Параметры
|
|
||||||
*
|
|
||||||
* @return method
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
*/
|
|
||||||
public static function __callStatic(string $method, array $params): method
|
|
||||||
{
|
|
||||||
if (class_exists($class = '\\mirzaev\\vk\\api\\methods\\' . $method . 's')) {
|
|
||||||
return $class(self, ...$params);
|
|
||||||
}
|
|
||||||
|
|
||||||
throw new Exception("Метод $method не найден", 404);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Конвертировать в строку
|
|
||||||
<<<<<<< HEAD
|
|
||||||
=======
|
|
||||||
*
|
|
||||||
* @return string
|
|
||||||
>>>>>>> a45b5c327511a74d1fae5ab0e3a1dcc68e7dc3b4
|
|
||||||
*/
|
|
||||||
public function __toString(): string
|
|
||||||
{
|
|
||||||
return (string) $this->id;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue