syntax = "v1" info ( title: "websocket"// TODO: add title desc: // TODO: add description author: "" email: "" ) import "basic.api" service websocket { //websocket数据交互 @handler DataTransferHandler get /api/websocket/data_transfer(request) returns (response); //渲染完了通知接口 @handler RenderNotifyHandler post /api/websocket/render_notify(RenderNotifyReq) returns (response); } //websocket数据交互 type DataTransferData { T string `json:"t"` //消息类型 D interface{} `json:"d"` //传递的消息 } type RenderImageReqMsg { //websocket接受要云渲染处理的数据 ProductIds []int64 `json:"product_ids"` //产品 id MapsSourceId int64 `json:"maps_source_id"` //贴图数据id TemplateId int64 `json:"template_id"` //模板id UserId int64 `json:"user_id"` //用户id(这个前端不用传,后台获取) RenderDesignId int64 `json:"render_design_id"` //渲染设计id } type RenderImageRspMsg { //websocket发送渲染完的数据 ProductId int64 `json:"product_id"` //产品 id MapsSourceId int64 `json:"maps_source_id"` //贴图数据id TemplateId int64 `json:"template_id"` //模板id RenderDesignId int64 `json:"render_design_id"` //渲染设计id RenderResult string `json:"render_result"` //渲染结果数据 } //渲染完了通知接口 type RenderNotifyReq { Sign string `json:"sign"` Time int64 `json:"time"` Info NotifyInfo `json:"info"` } type NotifyInfo { ProductId int64 `json:"product_id"` MapsSourceId int64 `json:"maps_source_id"` TemplateId int64 `json:"template_id"` RenderDesignId int64 `json:"render_design_id"` //渲染设计id RenderResult string `json:"render_result"` //渲染结果数据 }