Пытаюсь сделать вот так:
import asyncio
from pyrogram import Client
from pyrogram.raw.functions.contacts import ResolveUsername
from utils.config import config
app = Client(name="test_name_for_github",
api_id=config.app_id.get_secret_value(),
api_hash=config.app_hash.get_secret_value(),
bot_token=config.bot_token.get_secret_value())
async def resolve_username(username):
with app:
r = await app.invoke(ResolveUsername(username=username))
if r.users:
return r.users[0].id
return None
Ошибка:
Как я вызываю данную функцию:
import utils.pyrogram as helppyro
user = helppyro
rt = Router()
@rt.message(ChatTypeFilter(chat_type=["group", "supergroup"]), Command(commands=["test"], prefix="/!"))
async def test(message: Message, bot: Bot, command: CommandObject):
await user.resolve_username("name")
Также пытался через пример на самом пирограме:
(При этом подкрутив на свой лад, но не смог туда впихнуть функцию)
import asyncio
from pyrogram import Client
async def main():
app = Client("my_account")
async with app:
await app.send_message("me", "Hi!")
asyncio.run(main())