Code:
import discord
from discord.ext import commands
import asyncio
import vkreal
client = commands.Bot(command_prefix='!', intents=discord.Intents.all())
chat_id = 11
loop = asyncio.new_event_loop()
asyncio.set_event_loop(loop)
token = "token"
session = vkreal.VkApi(token, sess = None, v = "5.125")
vk = session.api_context()
longpoll = vkreal.VkLongPoll(session, loop = loop)
async def disbot():
async for event in longpoll.listen():
print(event['type'])
if event["type"] == 4:
print(event['type'])
user_id = event["peer_id"]
message = event["text"]
user_info = vkreal.VkApi.method(vk.users_get, user_ids = user_id)
user_name = user_info[0]['first_name'] + ' ' + user_info[0]['last_name']
await client.wait_until_ready()
channel = client.get_channel(id)
await channel.send(f"{user_name} ยป {message}")
@client.event
async def on_ready():
print('Bot connected')
@client.event
async def on_message(message):
if message.author == client.user:
return
await client.process_commands(message)
async def main():
async with client:
client.loop.create_task(disbot())
await client.start('BotToken')
asyncio.run(main())
I want to find out the username from VK, so I use vkreal.VkApi.method(name, params). I am using the users.get method with the user_ids parameter. The problem is that it does not recognize params in any way. Maybe I set the parameter incorrectly or something else.