@WindBridges

Почему docs.getMessagesUploadServer возвращает ошибку?

Мне нужно отправить личное сообщение с вложением нескольким подписчикам группы через VK API, используя токен этой группы. Чтобы не загружать один и тот же файл каждому пользователю, я хочу загрузить его единожды перед началом отправки сообщений.

Чтобы загрузить его, мне нужно получить URL для загрузки методом docs.getMessagesUploadServer:
$response = $vk->docs()->getMessagesUploadServer($groupToken, [
    'type' => 'doc',
    'peer_id' => '-'.$groupId
 ]);


Минус добавляю перед peer_id в соответствии с руководством метода docs.getMessagesUploadServer. Но получаю при этом ошибку: "Can't send messages for users without permission". И не понятно, о каком пользователе идет речь в тексте ошибки, если тут используется только токен группы и id группы. При создании токена выставил все возможные права. $groupId соответствует той группе, от которой токен.

Пробовал то же самое без использования SDK, прямыми запросами, эффект тот же.

Не понимаю, какому пользователю надо разрешить отправку, если я еще ничего не отправляю? Только получаю адрес сервера для загрузки.

И еще не понимаю, зачем этому методу peer_id, ведь аналогичный метод для загрузки фото его не требует. Тем более, что токен уже и так сам по себе указывает на нужную группу.
  • Вопрос задан
  • 48 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы