85 lines
2.3 KiB
Go
85 lines
2.3 KiB
Go
package logic
|
|
|
|
import (
|
|
"encoding/json"
|
|
"fusenapi/constants"
|
|
"fusenapi/utils/auth"
|
|
"fusenapi/utils/websocket_data"
|
|
"github.com/gorilla/websocket"
|
|
"time"
|
|
)
|
|
|
|
// 获取唯一标识失败通知
|
|
func (l *DataTransferLogic) sendGetUniqueIdErrResponse(conn *websocket.Conn, debug *auth.Debug) {
|
|
rsp := websocket_data.DataTransferData{
|
|
T: constants.WEBSOCKET_CONNECT_ERR,
|
|
D: websocket_data.ConnectErrMsg{Message: "err to gen unique id "},
|
|
Debug: debug != nil,
|
|
}
|
|
b, _ := json.Marshal(rsp)
|
|
//先发一条正常信息
|
|
_ = conn.WriteMessage(websocket.TextMessage, b)
|
|
//发送关闭信息
|
|
_ = conn.WriteMessage(websocket.CloseMessage, nil)
|
|
}
|
|
|
|
// 鉴权失败通知
|
|
func (l *DataTransferLogic) unAuthResponse(conn *websocket.Conn, isFirefoxBrowser bool, errMessage string) {
|
|
rsp := websocket_data.DataTransferData{
|
|
T: constants.WEBSOCKET_UNAUTH,
|
|
D: websocket_data.ConnectUnAuth{Message: errMessage},
|
|
Debug: false,
|
|
}
|
|
b, _ := json.Marshal(rsp)
|
|
if isFirefoxBrowser {
|
|
time.Sleep(time.Second * 1) //兼容下火狐(直接发回去收不到第一条消息:有待研究)
|
|
}
|
|
//先发一条正常信息
|
|
_ = conn.WriteMessage(websocket.TextMessage, b)
|
|
//发送关闭信息
|
|
_ = conn.WriteMessage(websocket.CloseMessage, nil)
|
|
}
|
|
|
|
// 通用入口数据格式错误
|
|
func (w *wsConnectItem) incomeDataFormatErrResponse(data interface{}) {
|
|
if w.debug == nil {
|
|
return
|
|
}
|
|
w.sendToOutChan(w.respondDataFormat(constants.WEBSOCKET_ERR_DATA_FORMAT, data))
|
|
}
|
|
|
|
// 渲染错误通知
|
|
func (w *wsConnectItem) renderErrResponse(renderId, requestId, templateTag, taskId, description string, productId, userId, guestId, templateId, modelId, sizeId, elementModelId int64) {
|
|
if w.debug == nil {
|
|
return
|
|
}
|
|
data := make(map[string]interface{})
|
|
data["render_id"] = renderId
|
|
data["request_id"] = requestId
|
|
data["description"] = description
|
|
data["template_tag"] = templateTag
|
|
data["product_id"] = productId
|
|
if taskId != "" {
|
|
data["task_id"] = taskId
|
|
}
|
|
if userId >= 0 {
|
|
data["user_id"] = userId
|
|
}
|
|
if guestId >= 0 {
|
|
data["guest_id"] = guestId
|
|
}
|
|
if templateId > 0 {
|
|
data["template_id"] = templateId
|
|
}
|
|
if modelId > 0 {
|
|
data["model_id"] = modelId
|
|
}
|
|
if sizeId > 0 {
|
|
data["size_id"] = sizeId
|
|
}
|
|
if elementModelId > 0 {
|
|
data["element_model_id"] = elementModelId
|
|
}
|
|
w.sendToOutChan(w.respondDataFormat(constants.WEBSOCKET_RENDER_IMAGE_ERR, data))
|
|
}
|