Для создания функции загрузки фотографий в беседу ВКонтакте вы можете использовать следующий код:
```python
async def upload_photo_to_chat(self, chat_id, photo):
upload_url = await self.bot.user_vk_request('photos.getMessagesUploadServer', peer_id=chat_id)
upload_url = upload_url['response']['upload_url']
async with aiohttp.ClientSession() as session:
async with session.post(upload_url, data={'photo': photo}) as response:
upload_data = await response.json()
saved_photo = await self.bot.user_vk_request('photos.saveMessagesPhoto', **upload_data)
saved_photo = saved_photo['response'][0]
attachment = f"photo{saved_photo['owner_id']}_{saved_photo['id']}_{saved_photo['access_key']}"
return attachment
```
Чтобы переписать функцию так, чтобы она могла использоваться как внутри команды, так и отдельно, вам нужно добавить параметры `self` и `ctx`. Затем внутри команды вызывайте функцию с этими параметрами.
```python
async def HAOS(self, ctx):
for i in range(11):
attachment = await self.upload_photo_to_chat(ctx.channel.id, random.choice(i))
await ctx.send(attachment=attachment)
@command(name="test")
async def test(self, message):
attachment = await self.upload_photo_to_chat(message.chat.id, photo)
await message.send(attachment=attachment)
```
Обратите внимание, что вам нужно передать правильные параметры в функцию `upload_photo_to_chat`, такие как `chat_id` и `photo`.