updete
Some checks failed
Build Multi-Platform Binaries / build-frontend (push) Successful in 30s
Build Multi-Platform Binaries / build-binaries (amd64, darwin, server, false) (push) Successful in 1m4s
Build Multi-Platform Binaries / build-binaries (amd64, linux, client, true) (push) Successful in 45s
Build Multi-Platform Binaries / build-binaries (amd64, linux, server, true) (push) Successful in 1m29s
Build Multi-Platform Binaries / build-binaries (amd64, windows, client, true) (push) Successful in 45s
Build Multi-Platform Binaries / build-binaries (amd64, windows, server, true) (push) Successful in 1m27s
Build Multi-Platform Binaries / build-binaries (arm, 7, linux, client, true) (push) Successful in 50s
Build Multi-Platform Binaries / build-binaries (arm, 7, linux, server, true) (push) Successful in 1m42s
Build Multi-Platform Binaries / build-binaries (arm64, darwin, server, false) (push) Has been cancelled
Build Multi-Platform Binaries / build-binaries (arm64, linux, client, true) (push) Has been cancelled
Build Multi-Platform Binaries / build-binaries (arm64, linux, server, true) (push) Has been cancelled
Build Multi-Platform Binaries / build-binaries (arm64, windows, server, false) (push) Has been cancelled

This commit is contained in:
2026-01-02 01:59:44 +08:00
parent 82c1a6a266
commit f46741a84b
44 changed files with 10502 additions and 1486 deletions

View File

@@ -52,6 +52,14 @@ const (
// 客户端控制消息
MsgTypeClientRestart uint8 = 60 // 重启客户端
MsgTypePluginConfigUpdate uint8 = 61 // 更新插件配置
// 更新相关消息
MsgTypeUpdateCheck uint8 = 70 // 检查更新请求
MsgTypeUpdateInfo uint8 = 71 // 更新信息响应
MsgTypeUpdateDownload uint8 = 72 // 下载更新请求
MsgTypeUpdateApply uint8 = 73 // 应用更新请求
MsgTypeUpdateProgress uint8 = 74 // 更新进度
MsgTypeUpdateResult uint8 = 75 // 更新结果
)
// Message 基础消息结构
@@ -257,6 +265,46 @@ type PluginConfigUpdateResponse struct {
Error string `json:"error,omitempty"`
}
// UpdateCheckRequest 更新检查请求
type UpdateCheckRequest struct {
Component string `json:"component"` // "server" 或 "client"
}
// UpdateInfoResponse 更新信息响应
type UpdateInfoResponse struct {
Available bool `json:"available"`
Current string `json:"current"`
Latest string `json:"latest"`
ReleaseNote string `json:"release_note"`
DownloadURL string `json:"download_url"`
AssetName string `json:"asset_name"`
AssetSize int64 `json:"asset_size"`
}
// UpdateDownloadRequest 下载更新请求
type UpdateDownloadRequest struct {
DownloadURL string `json:"download_url"`
}
// UpdateApplyRequest 应用更新请求
type UpdateApplyRequest struct {
Restart bool `json:"restart"` // 是否自动重启
}
// UpdateProgressResponse 更新进度响应
type UpdateProgressResponse struct {
Downloaded int64 `json:"downloaded"`
Total int64 `json:"total"`
Percent int `json:"percent"`
Status string `json:"status"` // downloading, applying, completed, failed
}
// UpdateResultResponse 更新结果响应
type UpdateResultResponse struct {
Success bool `json:"success"`
Message string `json:"message"`
}
// WriteMessage 写入消息到 writer
func WriteMessage(w io.Writer, msg *Message) error {
header := make([]byte, HeaderSize)