Merge pull request '添加计时器,麦克风,摄像头开关' (#45) from develop-frontend8 into develop 33分钟前 #46

Merged
huanghaosheng merged 60 commits from develop into main 2026-06-13 20:43:07 +08:00
Showing only changes of commit bce3b73480 - Show all commits

View File

@@ -0,0 +1,33 @@
package errors
import "github.com/hhs/camtalk/internal/models"
// 错误码常量,与 docs/03-接口文档.md 保持一致。
const (
CodeInvalidMessage = "INVALID_MESSAGE"
CodeSessionNotFound = "SESSION_NOT_FOUND"
CodeRateLimited = "RATE_LIMITED"
CodeImageTooLarge = "IMAGE_TOO_LARGE"
CodeAudioTooShort = "AUDIO_TOO_SHORT"
CodeLLMTimeout = "LLM_TIMEOUT"
CodeLLMError = "LLM_ERROR"
CodeSTTError = "STT_ERROR"
CodeTTSError = "TTS_ERROR"
CodeInternalError = "INTERNAL_ERROR"
)
// Sender 定义发送 WS 错误消息的接口,便于测试 mock。
type Sender interface {
SendError(code, requestID, message string)
}
// SendWSError 向客户端发送 error 消息。
// sender 是一个具有 sendJSON 方法的对象,这里用接口抽象。
func SendWSError(sender interface{ SendJSON(v any) error }, code, requestID string, err error) {
_ = sender.SendJSON(models.WsError{
Type: "error",
Code: code,
RequestID: requestID,
Message: err.Error(),
})
}