feat(chat): 完善聊天
This commit is contained in:
@@ -17,31 +17,6 @@ class ChatUser(LiteUser):
|
||||
pass
|
||||
|
||||
|
||||
class Message(BaseModel):
|
||||
type: Literal[
|
||||
'chat.new_message', 'chat.message_read'
|
||||
]
|
||||
message_guid: UUID4
|
||||
message_type: MessageType
|
||||
chat_guid: UUID4
|
||||
receive_user: Optional[int] = None
|
||||
body: str
|
||||
|
||||
|
||||
class MessageOut(BaseModel):
|
||||
type: Literal[
|
||||
'chat.new_message', 'chat.send_status_reply'
|
||||
]
|
||||
code: Optional[int] = 200
|
||||
status: Optional[Literal['ok', 'error']] = 'ok'
|
||||
message_id: int
|
||||
message_guid: UUID4
|
||||
message_type: MessageType
|
||||
chat_guid: UUID4
|
||||
body: Optional[str] = None
|
||||
friend_user: LiteUser
|
||||
|
||||
|
||||
class Chat(BaseModel):
|
||||
chat_guid: UUID4
|
||||
friend_user: LiteUser
|
||||
@@ -51,10 +26,51 @@ class ChatCreateIn(BaseModel):
|
||||
recipient_user_id: int
|
||||
|
||||
|
||||
class PreviewMessage(BaseModel):
|
||||
message_type: MessageType
|
||||
content: str
|
||||
|
||||
|
||||
class ChatUnreadOut(BaseModel):
|
||||
chat_guid: UUID4
|
||||
created_at: str
|
||||
updated_at: str
|
||||
recipient_user: LiteUser
|
||||
last_message: str | None
|
||||
last_message: PreviewMessage | None
|
||||
unread_messages_count: int
|
||||
|
||||
|
||||
class MessageOut(BaseModel):
|
||||
chat_id: int
|
||||
chat_guid: UUID4
|
||||
id: int
|
||||
message_guid: UUID4
|
||||
message_type: MessageType
|
||||
content: str
|
||||
user: LiteUser
|
||||
created_at: str
|
||||
updated_at: str
|
||||
|
||||
|
||||
class WSMessage(BaseModel):
|
||||
type: Literal[
|
||||
'chat.new_message', 'chat.message_read', 'chat.ping'
|
||||
]
|
||||
message_guid: UUID4
|
||||
message_type: MessageType
|
||||
chat_guid: UUID4
|
||||
receive_user: Optional[int] = None
|
||||
content: str
|
||||
|
||||
|
||||
class WSMessageOut(BaseModel):
|
||||
type: Literal[
|
||||
'chat.new_message', 'chat.send_status_reply',
|
||||
]
|
||||
status: Optional[Literal['ok', 'error']] = 'ok'
|
||||
message_id: int
|
||||
message_guid: UUID4
|
||||
message_type: MessageType
|
||||
chat_guid: UUID4
|
||||
content: Optional[str] = None
|
||||
friend_user: Optional[LiteUser] = None
|
||||
|
||||
Reference in New Issue
Block a user