Answer the question
In order to leave comments, you need to log in
How to solve VKAPIError_15?
Hello. What is the problem and how to solve? Long Poll API 5.131
future: <Task finished name='Task-1' coro=<Bot.run_polling() done, defined at /usr/local/lib/python3.9/site-packages/vkbottle/framework/bot/bot.py:65> exception=VKAPIError_15('Access denied: no access to call this method')>
Traceback (most recent call last):
File "/usr/local/lib/python3.9/site-packages/vkbottle/framework/bot/bot.py", line 69, in run_polling
async for event in polling.listen(): # type: ignore
File "/usr/local/lib/python3.9/site-packages/vkbottle/polling/bot_polling.py", line 55, in listen
server = await self.get_server()
File "/usr/local/lib/python3.9/site-packages/vkbottle/polling/bot_polling.py", line 50, in get_server
return (await self.api.request("groups.getLongPollServer", {"group_id": self.group_id}))[
File "/usr/local/lib/python3.9/site-packages/vkbottle/api/api.py", line 71, in request
return await self.validate_response(method, data, response)
File "/usr/local/lib/python3.9/site-packages/vkbottle/api/api.py", line 95, in validate_response
response = await validator.validate(method, data, response, self)
File "/usr/local/lib/python3.9/site-packages/vkbottle/api/response_validator/vk_api_error_validator.py", line 36, in validate
raise exception(**error)
vkbottle.exception_factory.code_exception.VKAPIError_15: Access denied: no access to call this method
# - НАДА -
import asyncio
import requests
import random
# - Вк -
from typing import Optional
from vkbottle import GroupEventType, GroupTypes, Keyboard, Text, VKAPIError
from vkbottle.bot import Bot, Message
from vkbottle import Keyboard, KeyboardButtonColor, Text, OpenLink
from vkbottle.tools import DocMessagesUploader
# Переменные
group_id = 'MY_GROUP_ID'
secret = 'MY_API_KEY'
ya = 'doc381260583_611979108'
ya2 = 'photo381260583_457378962'
ya3 = 'video-200537102_456239073'
# Для удобства
bot_token = secret
bot_group_id = group_id
vk = Bot(bot_token, bot_group_id)
# Приветствие
# Есть 3 типа - private_message - ожидание\ответ только в личные сообщения группы!
# chat_message - ожидание\ответ только в беседе!
# message - ожидание\ответ и в беседе и в личные сообщения!
@vk.on.private_message(text=['Начать', 'Ку', 'Привет'])
# Сама функция:
async def privet(message: Message):
# Ответ на сообщение
await message.answer('Приветик!')
# Фото
@vk.on.private_message(text='фото')
async def photo(message: Message):
await message.answer('Вот твоя фотка ', attachment=ya2)
# Видео
@vk.on.private_message(text='видео')
async def video(message: Message):
await message.answer('Вот твое видео ', attachment=ya3)
# Файл
@vk.on.private_message(text='файл')
async def file(message: Message):
await message.answer('Вот твой файл ', attachment=ya)
# Меню
@vk.on.private_message(text=['/mm', 'menu', 'меню'])
@vk.on.private_message(payload={'cmd': 'menu'})
async def menu(message: Message):
await message.answer(
# Сообщение при отправлении клавиатуры
message = 'Меню: ',
# Клавиатура
keyboard = (
# one_time - True - одноразовая клавиатура, False - постоянная клавиатура
# inline - True - клавиатура прикрепляется к сообщению(РАССМОТРИМ), False - клавиаутра в стандартном положении
# .add - добавить кнопку
# .row - отступ
# Цвета: POSITIVE - Ярко зеленый, SECONDARY(можно нечего не указывать) - БЛЕДНО БЕЛЫЙ
# PRIMARY - СИНИЙ, NEGATIVE - КРАСНЫЙ
Keyboard(one_time = False, inline = False)
.add(Text('Инфа'), color=KeyboardButtonColor.POSITIVE)
.add(Text('Ссылка'), color=KeyboardButtonColor.NEGATIVE)
.row()
.add(Text('Контакты'), color=KeyboardButtonColor.PRIMARY)
)
)
@vk.on.private_message(text='Контакты')
async def magaz(message: Message):
await message.answer(
message = 'Наши контакты: ',
keyboard = (
Keyboard(one_time = False, inline = False)
.add(Text('1'), color=KeyboardButtonColor.POSITIVE)
.add(Text('2'), color=KeyboardButtonColor.POSITIVE)
.row()
.add(Text('3'), color=KeyboardButtonColor.POSITIVE)
.add(Text('4'), color=KeyboardButtonColor.NEGATIVE)
.row()
.add(Text('Назад', payload={'cmd': 'menu'}))
)
)
# <3
@vk.on.private_message(text='Ссылка')
async def blasthk(message: Message):
await message.answer(
message = 'Сайт:',
keyboard = (
Keyboard(inline = True)
.add(OpenLink('https://google.com/', 'Ссылка'))
)
)
# нада сделать
@vk.on.private_message()
async def main(message):
await message.answer('Я не знаю, что ответить на это =(\n\nВозможно потом когда нибудь я смогу ответить тебе на это =)')
# Толик видиорегистратор система мене
vk.run_forever()
Answer the question
In order to leave comments, you need to log in
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question