mirror of
https://github.com/openmax-server/server.git
synced 2026-06-13 22:31:42 +03:00
TT: ну вроде шире поддержка, а вообще обратная совместимость с максом клас
This commit is contained in:
34
src/tamtam/processors/assets.py
Normal file
34
src/tamtam/processors/assets.py
Normal file
@@ -0,0 +1,34 @@
|
||||
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)
|
||||
Reference in New Issue
Block a user