/
message.go
48 lines (39 loc) · 1.03 KB
/
message.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
package service
import (
agentExec "github.com/aaronchen2k/deeptest/internal/agent/exec"
agentDomain "github.com/aaronchen2k/deeptest/internal/agent/exec/domain"
execUtils "github.com/aaronchen2k/deeptest/internal/agent/exec/utils/exec"
"github.com/aaronchen2k/deeptest/internal/pkg/consts"
"github.com/kataras/iris/v12/websocket"
)
func RunMessage(req *agentExec.MessageExecReq, wsMsg *websocket.Message) (err error) {
// start msg
err = execUtils.SendStartMsg(wsMsg)
if err != nil {
return err
}
result := GetMessageToExec(req)
// submit result
err = execUtils.SendResult(result, wsMsg)
if err != nil {
return err
}
err = sendSubmitResult(req.UserId, wsMsg)
if err != nil {
return err
}
// end msg
err = execUtils.SendEndMsg(wsMsg)
if err != nil {
return err
}
return
}
func sendSubmitResult(userId uint, wsMsg *websocket.Message) (err error) {
result := agentDomain.MessageExecResult{
UserId: userId,
Name: "提交执行结果成功",
}
execUtils.SendExecMsg(result, consts.Processor, wsMsg)
return
}