Async problems...

This commit is contained in:
2024-02-13 16:04:47 +03:00
parent 7a960054bc
commit 02bd67e34a
6 changed files with 37 additions and 17 deletions

View File

@@ -1,14 +1,29 @@
import json
from typing import List, Optional
from aiogram import types
from aiogram.types import MessageEntity
from aiohttp import ClientSession
from .api_method import ApiMethod
class Image(ApiMethod):
async def add(self, post_id: str, file_id: str, has_spoiler: bool | None, message_id: int):
payload = {'post_id': post_id, 'file_id': file_id,
'has_spoiler': has_spoiler, 'message_id': message_id}
async def add(self, from_id: str, file_id: str, has_spoiler: bool | None, message_id: int, text: str, media_group_id: str | None, message_entities: Optional[List[MessageEntity]], message: types.Message):
payload = {'from_user_id': from_id, 'file_id': file_id,
'has_spoiler': has_spoiler, 'message_id': message_id }
if text != '':
payload['post_text'] = text.replace('/newpost ', '')
if media_group_id != 'None' and media_group_id is not None:
payload['media_group_id'] = media_group_id
if message_entities is not None:
mes_ent = list(map(lambda x: x.model_dump(), message_entities))
arr =[]
for item in mes_ent:
if item['type'] == 'bot_command': continue
item['offset'] -= 9
arr.append(item)
payload['message_entities'] = json.dumps(arr)
if has_spoiler is None:
payload.pop('has_spoiler')
payload = json.dumps(payload)
@@ -18,3 +33,4 @@ class Image(ApiMethod):
data = await response.json()
if 'statusCode' in data:
raise Exception(data['message'])
return data['created']