增加注释
This commit is contained in:
@@ -1,7 +1,16 @@
|
||||
/**
|
||||
* package models
|
||||
* 作用:定义项目中所有的数据结构,包括 HTTP 请求/响应载荷、数据库模型、Redis 消息格式以及常量定义。
|
||||
*/
|
||||
package models
|
||||
|
||||
import "time"
|
||||
|
||||
/**
|
||||
* SendMessagePayload
|
||||
* 结构体:客户端发送消息的请求载荷。
|
||||
* 用途:用于解析 WebSocket 或 HTTP POST 请求体中的 JSON 数据。
|
||||
*/
|
||||
// 统一消息结构(发送方使用)
|
||||
type SendMessagePayload struct {
|
||||
RequestType string `json:"request_type"` // 消息类型
|
||||
@@ -17,6 +26,10 @@ type SendMessagePayload struct {
|
||||
CallStatus string `json:"call_status,omitempty"` // 通话状态:invite/accepted/rejected/ended/candidate
|
||||
}
|
||||
|
||||
/**
|
||||
* SendToUserPayload
|
||||
* 结构体:仅通过用户ID发送消息的简化载荷。
|
||||
*/
|
||||
// 通过用户ID发送消息的结构
|
||||
type SendToUserPayload struct {
|
||||
RoomId string `json:"room_id"` // 发送者用户ID
|
||||
@@ -30,6 +43,11 @@ type SendToUserPayload struct {
|
||||
CallStatus string `json:"call_status,omitempty"` // 通话状态:invite/accepted/rejected/ended/candidate/offer/answer
|
||||
}
|
||||
|
||||
/**
|
||||
* XkChatMessage
|
||||
* 结构体:数据库模型,对应 xk_chat_messages 表(假设)。
|
||||
* 用途:持久化存储聊天记录。
|
||||
*/
|
||||
// 聊天消息记录模型
|
||||
type XkChatMessage struct {
|
||||
ID uint `gorm:"primaryKey" json:"id"`
|
||||
@@ -44,6 +62,11 @@ type XkChatMessage struct {
|
||||
CreatedAt time.Time `gorm:"autoCreateTime" json:"created_at"` // 创建时间
|
||||
}
|
||||
|
||||
/**
|
||||
* ClientReceivedMessage
|
||||
* 结构体:客户端最终接收到的消息格式。
|
||||
* 用途:服务端推送到客户端的 JSON 结构。
|
||||
*/
|
||||
// 客户端接收消息结构(最终格式)
|
||||
type ClientReceivedMessage struct {
|
||||
ID int `json:"id"` // 房间号
|
||||
@@ -62,6 +85,11 @@ type ClientReceivedMessage struct {
|
||||
CallStatus string `json:"call_status,omitempty"` // 通话状态:invite/accepted/rejected/ended/candidate/offer/answer
|
||||
}
|
||||
|
||||
/**
|
||||
* RedisMessage
|
||||
* 结构体:Redis Pub/Sub 消息结构。
|
||||
* 用途:用于跨节点消息转发。
|
||||
*/
|
||||
// Redis 消息结构
|
||||
type RedisMessage struct {
|
||||
SenderNodeID string `json:"sender_node_id"` // 发送节点ID
|
||||
@@ -75,6 +103,10 @@ type BindRequest struct {
|
||||
ClientID string `json:"client_id"` // 客户端ID
|
||||
}
|
||||
|
||||
/**
|
||||
* CallSignal
|
||||
* 结构体:WebRTC 信令数据载荷。
|
||||
*/
|
||||
// 通话信令结构
|
||||
type CallSignal struct {
|
||||
CallStatus string `json:"call_status"` // 动作: invite/accept/reject/end/candidate/offer/answer
|
||||
|
||||
Reference in New Issue
Block a user