| 1234567891011121314151617181920212223 |
- from pydantic import BaseModel
- from typing import Optional
- import uuid
- class IMMessage(BaseModel):
- msg_id: str = ""
- sender: str
- receiver: str
- content: str
- msg_type: str = "chat" # chat | image | video | system
- sender_chat_id: Optional[str] = None # 发送方窗口 ID
- receiver_chat_id: Optional[str] = None # 接收方窗口 ID(指定则定向,否则广播)
- def model_post_init(self, __context):
- if not self.msg_id:
- self.msg_id = uuid.uuid4().hex[:12]
- class IMResponse(BaseModel):
- status: str # "success" | "failed"
- msg_id: str
- error: Optional[str] = None
|