mirror of
https://github.com/lorsanstand/Aether.git
synced 2026-06-19 12:05:16 +03:00
Add websckets connection
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
from datetime import datetime
|
||||
from typing import Optional
|
||||
import uuid
|
||||
|
||||
from pydantic import BaseModel
|
||||
|
||||
|
||||
class MessageCreate(BaseModel):
|
||||
recipient_id: Optional[int] = None
|
||||
chat_id: Optional[uuid.UUID] = None
|
||||
content: str
|
||||
|
||||
|
||||
class MessageUpdate(BaseModel):
|
||||
id: uuid.UUID
|
||||
content: str
|
||||
|
||||
|
||||
class MessageCreateDB(BaseModel):
|
||||
sender_id: Optional[int]
|
||||
chat_id: Optional[uuid.UUID]
|
||||
content: Optional[str]
|
||||
is_read: Optional[bool] = False
|
||||
|
||||
|
||||
class MessageUpdateDB(BaseModel):
|
||||
content: Optional[str]
|
||||
|
||||
|
||||
class Message(BaseModel):
|
||||
id: uuid.UUID
|
||||
sender_id: int
|
||||
chat_id: uuid.UUID
|
||||
content: str
|
||||
created_at: datetime
|
||||
updated_at: datetime
|
||||
|
||||
|
||||
class ChatBase(BaseModel):
|
||||
is_group: Optional[bool] = False
|
||||
last_message: Optional[str] = None
|
||||
|
||||
|
||||
class ChatCreateDB(ChatBase):
|
||||
pass
|
||||
|
||||
|
||||
class ChatUpdateDB(ChatBase):
|
||||
pass
|
||||
|
||||
|
||||
class Chat(BaseModel):
|
||||
chat_id: uuid.UUID
|
||||
user_id: int
|
||||
last_message: Optional[str]
|
||||
avatar_url: Optional[str]
|
||||
display_name: str
|
||||
|
||||
|
||||
class ParticipantCreateDB(BaseModel):
|
||||
chat_id: Optional[uuid.UUID]
|
||||
user_id: Optional[int]
|
||||
|
||||
|
||||
class ParticipantUpdateDB(BaseModel):
|
||||
chat_id: Optional[uuid.UUID]
|
||||
user_id: Optional[int]
|
||||
Reference in New Issue
Block a user