mirror of
https://github.com/openmax-server/server.git
synced 2026-05-22 19:41:41 +03:00
34 lines
1.4 KiB
Python
34 lines
1.4 KiB
Python
import pydantic
|
||
import time
|
||
from classes.baseprocessor import BaseProcessor
|
||
from tamtam.models import AssetsPayloadModel
|
||
|
||
class AssetsProcessors(BaseProcessor):
|
||
async def assets_update(self, payload, seq, writer):
|
||
"""Обработчик запроса ассетов клиента на сервере"""
|
||
# Валидируем данные пакета
|
||
try:
|
||
AssetsPayloadModel.model_validate(payload)
|
||
except pydantic.ValidationError as error:
|
||
self.logger.error(f"Возникли ошибки при валидации пакета: {error}")
|
||
await self._send_error(seq, self.opcodes.ASSETS_UPDATE, self.error_types.INVALID_PAYLOAD, writer)
|
||
return
|
||
|
||
# TODO: сейчас это заглушка, а попозже нужно сделать полноценную реализацию
|
||
|
||
# Данные пакета
|
||
payload = {
|
||
"sync": int(time.time() * 1000),
|
||
"stickerSetsUpdates": {},
|
||
"stickersUpdates": {},
|
||
"sections": [],
|
||
"stickersOrder": []
|
||
}
|
||
|
||
# Собираем пакет
|
||
packet = self.proto.pack_packet(
|
||
cmd=self.proto.CMD_OK, seq=seq, opcode=self.opcodes.ASSETS_UPDATE, payload=payload
|
||
)
|
||
|
||
# Отправляем
|
||
await self._send(writer, packet) |