refactor(router): 优化消息存储逻辑,修复Redis键格式错误并移除过期时间
This commit is contained in:
parent
787e3775be
commit
79a41bc5ad
1 changed files with 22 additions and 15 deletions
|
@ -30,6 +30,8 @@ func Router(data map[string]interface{}) {
|
||||||
sender := data["sender"].(map[string]interface{})
|
sender := data["sender"].(map[string]interface{})
|
||||||
role := sender["role"].(string)
|
role := sender["role"].(string)
|
||||||
mid := data["message_id"].(float64)
|
mid := data["message_id"].(float64)
|
||||||
|
|
||||||
|
// 将消息存入redis
|
||||||
redisClient := tools.GetRedisClient()
|
redisClient := tools.GetRedisClient()
|
||||||
if redisClient != nil {
|
if redisClient != nil {
|
||||||
var group_message GroupMessage
|
var group_message GroupMessage
|
||||||
|
@ -47,9 +49,9 @@ func Router(data map[string]interface{}) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
key := fmt.Sprintf("group_message:%f:%f", gid, uid)
|
key := fmt.Sprintf("group_message:%f:%f", gid, uid)
|
||||||
exists, err := tools.CheckKeyExists(fmt.Sprintf("group_message:%f:%f", gid, uid))
|
exists, err := tools.CheckKeyExists(fmt.Sprintf("group_message:%d:%d", int64(gid), int64(uid)))
|
||||||
if err != nil || !exists {
|
if err != nil || !exists {
|
||||||
redisClient.RPush(context.Background(), key, jsonString, 7*24*time.Hour)
|
redisClient.RPush(context.Background(), key, jsonString, 0)
|
||||||
// tools.SetValue(key, string(jsonString), 10*time.Second)
|
// tools.SetValue(key, string(jsonString), 10*time.Second)
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
@ -77,24 +79,29 @@ func Router(data map[string]interface{}) {
|
||||||
|
|
||||||
}
|
}
|
||||||
// fmt.Println("raw_msg:", string(raw_msg))
|
// fmt.Println("raw_msg:", string(raw_msg))
|
||||||
if len(raw_msg) > 1 && string(raw_msg[0]) == prefix {
|
if len(raw_msg) > 1 {
|
||||||
// 去除'!'
|
if string(raw_msg[0]) == prefix {
|
||||||
raw_msg = raw_msg[1:]
|
// 去除'!'
|
||||||
parms := strings.Fields(raw_msg)
|
raw_msg = raw_msg[1:]
|
||||||
|
parms := strings.Fields(raw_msg)
|
||||||
|
|
||||||
worker := workers.NewWorker(parms, fmt.Sprintf("%d", int(uid)), fmt.Sprintf("%d", int(gid)), role, fmt.Sprintf("%d", int(mid)), raw_msg)
|
worker := workers.NewWorker(parms, fmt.Sprintf("%d", int(uid)), fmt.Sprintf("%d", int(gid)), role, fmt.Sprintf("%d", int(mid)), raw_msg)
|
||||||
|
|
||||||
// fmt.Println("router:", parms[0])
|
// fmt.Println("router:", parms[0])
|
||||||
// fmt.Println("CheckPermission:", worker.CheckPermission())
|
// fmt.Println("CheckPermission:", worker.CheckPermission())
|
||||||
// ans := NewStdAns(parms[0], fmt.Sprintf("%d", int(uid)), fmt.Sprintf("%d", int(gid)), role, fmt.Sprintf("%d", int(mid)), raw_msg)
|
// ans := NewStdAns(parms[0], fmt.Sprintf("%d", int(uid)), fmt.Sprintf("%d", int(gid)), role, fmt.Sprintf("%d", int(mid)), raw_msg)
|
||||||
message := worker.CheckPermission()
|
message := worker.CheckPermission()
|
||||||
if message == "ok" {
|
if message == "ok" {
|
||||||
|
|
||||||
message = worker.GetMsg()
|
message = worker.GetMsg()
|
||||||
worker.SendMsg(message)
|
worker.SendMsg(message)
|
||||||
|
|
||||||
|
} else {
|
||||||
|
println("权限校验失败")
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
println("权限校验失败")
|
// 实现触发器功能
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue