class VkClientService

Класс VkClientService предоставляет сервисы для взаимодействия с VK API.

Этот класс инкапсулирует логику отправки запросов к VK API, обработки полученных ответов, а также управления ошибками, возникающими в процессе взаимодействия с API.

Methods

__construct(AccountRepositoryInterface $accountRepository)

Конструктор класса VkClientService.

array
request(string $method, array $parameters = [], string|null $token = null)

Отправляет запрос к VK API.

array
fetchAllAccounts()

Получает данные всех аккаунтов.

array
fetchAccountData(array|string $ids)

Получает данные аккаунта по указанным ID.

array
fetchGroupData(int $id)

Получает данные группы по её ID.

array
fetchAccountFollowers(int $id, int $limit)

Получает подписчиков аккаунта.

array
fetchAccountFriends(int $id, int $limit = 6)

Получает друзей аккаунта.

array[]
fetchAccountCountFriends(int $accountId, int|string $ownerId, string $token)

Получает количество друзей аккаунта.

array
fetchAccountInfo(string $token)

Получает информацию об аккаунте.

array
fetchAccountNewsfeed(int $accountId, string|null $startFrom, LoggingServiceInterface $loggingService)

Получает новостную ленту аккаунта.

fetchWallPostsByDomain($accountId, $domain, string|null $startFrom, LoggingServiceInterface $loggingService)

No description

array
fetchLikes(string $access_token, string $type, int $owner_id, int $item_id)

Получает информацию о лайках к объекту.

array
fetchUsers(string $users_ids)

Получает данные пользователей по их ID.

array
searchUsers(VkUserSearchFilter $filter, int $accountId)

Выполняет поиск пользователей ВКонтакте с применением фильтров.

array
getCities(string $query, int $countryId = 1, int $count = 100)

Получает список городов через VK API.

string
getAccessTokenByAccountID(int $account_id)

Получает токен доступа по ID аккаунта.

string|null
getScreenNameByAccountID(int $account_id)

Получает имя пользователя (screen name) по ID аккаунта.

array
setAccountData(string $token, AccountRepositoryInterface $accountRepository)

Устанавливает данные аккаунта.

array
addLike(int $accountId, int $ownerId, int $itemId, LoggingServiceInterface $loggingService)

Добавляет лайк к посту или другому объекту.

array
deleteAccount(int $id)

Удаляет аккаунт по его ID.

array
deleteLike(string $accessToken, string $type, int $owner_id, int $item_id)

Отменяет лайк с поста или другого объекта.

Details

at line 36
__construct(AccountRepositoryInterface $accountRepository)

Конструктор класса VkClientService.

Parameters

AccountRepositoryInterface $accountRepository

Репозиторий аккаунтов.

at line 62
array request(string $method, array $parameters = [], string|null $token = null)

Отправляет запрос к VK API.

Parameters

string $method

Название метода VK API.

array $parameters

Параметры запроса к API.

string|null $token

Токен доступа. Если не указан, используется токен по умолчанию.

Return Value

array

Ответ от VK API.

Exceptions

VkException

at line 76
array fetchAllAccounts()

Получает данные всех аккаунтов.

Return Value

array

Данные аккаунтов.

at line 94
array fetchAccountData(array|string $ids)

Получает данные аккаунта по указанным ID.

Parameters

array|string $ids

ID аккаунтов (массив или строка).

Return Value

array

Данные аккаунта(ов).

Exceptions

VkException

at line 130
array fetchGroupData(int $id)

Получает данные группы по её ID.

Parameters

int $id

ID группы.

Return Value

array

Данные группы.

Exceptions

VkException

at line 161
array fetchAccountFollowers(int $id, int $limit)

Получает подписчиков аккаунта.

Parameters

int $id

ID аккаунта.

int $limit

Ограничение на количество возвращаемых подписчиков.

Return Value

array

Подписчики аккаунта.

Exceptions

VkException

at line 181
array fetchAccountFriends(int $id, int $limit = 6)

Получает друзей аккаунта.

Parameters

int $id

ID аккаунта.

int $limit

Ограничение на количество возвращаемых друзей.

Return Value

array

Друзья аккаунта.

Exceptions

VkException

at line 202
array[] fetchAccountCountFriends(int $accountId, int|string $ownerId, string $token)

Получает количество друзей аккаунта.

Parameters

int $accountId

ID аккаунта.

int|string $ownerId

ID владельца аккаунта.

string $token

Токен доступа.

Return Value

array[]

Количество друзей.

Exceptions

VkException

at line 226
array fetchAccountInfo(string $token)

Получает информацию об аккаунте.

Parameters

string $token

Токен доступа.

Return Value

array

Информация об аккаунте.

Exceptions

VkException

at line 246
array fetchAccountNewsfeed(int $accountId, string|null $startFrom, LoggingServiceInterface $loggingService)

Получает новостную ленту аккаунта.

Parameters

int $accountId

ID аккаунта.

string|null $startFrom

Стартовая точка для пагинации (не обязательный).

LoggingServiceInterface $loggingService

Сервис логирования.

Return Value

array

Новостная лента.

Exceptions

VkException

at line 287
fetchWallPostsByDomain($accountId, $domain, string|null $startFrom, LoggingServiceInterface $loggingService)

No description

Parameters

$accountId
$domain
string|null $startFrom
LoggingServiceInterface $loggingService

at line 338
array fetchLikes(string $access_token, string $type, int $owner_id, int $item_id)

Получает информацию о лайках к объекту.

Parameters

string $access_token

Токен доступа.

string $type

Тип объекта (например, post).

int $owner_id

ID владельца объекта.

int $item_id

ID объекта.

Return Value

array

Информация о лайках.

Exceptions

VkException

at line 354
array fetchUsers(string $users_ids)

Получает данные пользователей по их ID.

Parameters

string $users_ids

Массив ID пользователей.

Return Value

array

Данные пользователей.

Exceptions

VkException

at line 378
array searchUsers(VkUserSearchFilter $filter, int $accountId)

Выполняет поиск пользователей ВКонтакте с применением фильтров.

Метод использует API ВКонтакте users.search для поиска пользователей с учетом заданных параметров фильтрации.

Parameters

VkUserSearchFilter $filter

Фильтр с параметрами поиска

int $accountId

ID аккаунта, от имени которого выполняется поиск

Return Value

array

Результаты поиска пользователей

Exceptions

VkException

at line 401
array getCities(string $query, int $countryId = 1, int $count = 100)

Получает список городов через VK API.

Метод выполняет запрос к методу database.getCities API ВКонтакте для получения списка городов по поисковому запросу.

Parameters

string $query

Строка для поиска городов

int $countryId

ID страны (по умолчанию 1 - Россия)

int $count

Максимальное количество возвращаемых городов

Return Value

array

Результат запроса к API

Exceptions

VkException

at line 417
string getAccessTokenByAccountID(int $account_id)

Получает токен доступа по ID аккаунта.

Parameters

int $account_id

ID аккаунта.

Return Value

string

Токен доступа.

at line 428
string|null getScreenNameByAccountID(int $account_id)

Получает имя пользователя (screen name) по ID аккаунта.

Parameters

int $account_id

ID аккаунта.

Return Value

string|null

Имя пользователя.

at line 441
array setAccountData(string $token, AccountRepositoryInterface $accountRepository)

Устанавливает данные аккаунта.

Parameters

string $token

Токен доступа.

AccountRepositoryInterface $accountRepository

Репозиторий аккаунтов.

Return Value

array

Exceptions

VkException

at line 481
array addLike(int $accountId, int $ownerId, int $itemId, LoggingServiceInterface $loggingService)

Добавляет лайк к посту или другому объекту.

Parameters

int $accountId

ID аккаунта.

int $ownerId

ID владельца объекта.

int $itemId

ID объекта.

LoggingServiceInterface $loggingService

Сервис логирования.

Return Value

array

Результат добавления лайка.

Exceptions

VkException

at line 529
array deleteAccount(int $id)

Удаляет аккаунт по его ID.

Parameters

int $id

ID аккаунта.

Return Value

array

Результат удаления аккаунта.

at line 556
array deleteLike(string $accessToken, string $type, int $owner_id, int $item_id)

Отменяет лайк с поста или другого объекта.

Parameters

string $accessToken

Токен доступа.

string $type

Тип объекта.

int $owner_id

ID владельца объекта.

int $item_id

ID объекта.

Return Value

array

Результат отмены лайка.

Exceptions

VkException