From 4cec05553ce6e62d0c73958765403e87fedd97af Mon Sep 17 00:00:00 2001 From: shoopea Date: Thu, 30 May 2019 16:36:40 +0800 Subject: [PATCH] test --- client.go | 4 ---- def.go | 10 ++++++++++ msg.go | 24 +++++++++++++++++++++--- rules.go | 2 ++ sql.go | 2 ++ workers.go | 9 +++++++++ 6 files changed, 44 insertions(+), 7 deletions(-) diff --git a/client.go b/client.go index 155846c..b72b401 100644 --- a/client.go +++ b/client.go @@ -16,9 +16,7 @@ func clientSendCWMsg(userID64 int64, s string) { } func clientMsgMeAck(m *ChatWarsMessageMeAck) { - log.Printf("clientMsgMeAck %d\n", m.UserID64) if _, ok := clientsQueue[m.Msg.UserID64]; ok { - log.Printf("Client in clientsQueue\n") if c, ok := clientsCW[m.UserID64]; ok { if c.LastUpdate.Before(m.Msg.Date) { c.GuildID64 = m.GuildID64 @@ -39,7 +37,5 @@ func clientMsgMeAck(m *ChatWarsMessageMeAck) { clientSendCWMsg(m.Msg.UserID64, "/g_roles") } } - } else { - log.Printf("Client not in clientsQueue\n") } } diff --git a/def.go b/def.go index 7b0b301..a40f2d8 100644 --- a/def.go +++ b/def.go @@ -78,6 +78,14 @@ type ChatWarsMessageMeAck struct { State string `json:"state"` } +type parseSubTypeMessageGRolesAck struct { + Msg *ChatWarsMessage `json:"msg"` + BartenderID64 int64 `json:"bartender"` + CommanderID64 int64 `json:"commander"` + SquireID64 int64 `json:"squire"` + TreasurerID64 int64 `json:"treasurer"` +} + type ChatWarsMessageGoQuestAck struct { ObjID64 int64 `json:"obj_id"` } @@ -273,6 +281,8 @@ const ( objSubTypeMessageTUReportAck = 351 // result from /tu_report (not done) objSubTypeMessageTimeout = 352 // generic timeout for action objSubTypeMessageGoQuestAck = 353 // confirm quest destination/busyness (done) + objSubTypeMessageGRolesReq = 354 // /g_roles (not done) + objSubTypeMessageGRolesAck = 355 // result from /g_roles (not done) objSubTypeJobPillage = 601 objSubTypeJobTribute = 602 objSubTypeJobStatus = 603 diff --git a/msg.go b/msg.go index 6d4fa46..62ffc9e 100644 --- a/msg.go +++ b/msg.go @@ -56,11 +56,29 @@ func parseSubTypeMessageMeAck(m *ChatWarsMessage, r *regexp.Regexp) (*ChatWarsMe return &cwm, nil } +func parseSubTypeMessageGRolesAck(m *ChatWarsMessage, r *regexp.Regexp) (*ChatWarsMessageGRolesAck, error) { + cwm := ChatWarsMessageGRolesAck{ + Msg: m, + } + /* + BartenderID64: getObjUserID(r.ReplaceAllString(m.Text, "${Bartender}")), + CommanderID64: getObjUserID(r.ReplaceAllString(m.Text, "${Commander}")), + SquireID64: getObjUserID(r.ReplaceAllString(m.Text, "${Squire}")), + TreasurerID64: getObjUserID(r.ReplaceAllString(m.Text, "${Treasurer}")), + */ + log.Printf("parseSubTypeMessageGRolesAck : Guild roles Ack identified\n") + log.Printf("parseSubTypeMessageGRolesAck : Bartender : %s\n", r.ReplaceAllString(m.Text, "${Bartender}")) + log.Printf("parseSubTypeMessageGRolesAck : Commander : %s\n", r.ReplaceAllString(m.Text, "${Commander}")) + log.Printf("parseSubTypeMessageGRolesAck : Squire : %s\n", r.ReplaceAllString(m.Text, "${Squire}")) + log.Printf("parseSubTypeMessageGRolesAck : Treasurer : %s\n", r.ReplaceAllString(m.Text, "${Treasurer}")) + return &cwm, nil +} + func parseSubTypeMessageGoQuestAck(m *ChatWarsMessage, r *regexp.Regexp) (*ChatWarsMessageGoQuestAck, error) { cwm := ChatWarsMessageGoQuestAck{} - log.Printf("parseSubTypeMessageReport : Go Quest Ack report identified\n") - log.Printf("parseSubTypeMessageReport : Place : %s\n", r.ReplaceAllString(m.Text, "${Place}")) - log.Printf("parseSubTypeMessageReport : Time : %s\n", r.ReplaceAllString(m.Text, "${Time}")) + log.Printf("parseSubTypeMessageGoQuestAck : Go Quest Ack report identified\n") + log.Printf("parseSubTypeMessageGoQuestAck : Place : %s\n", r.ReplaceAllString(m.Text, "${Place}")) + log.Printf("parseSubTypeMessageGoQuestAck : Time : %s\n", r.ReplaceAllString(m.Text, "${Time}")) return &cwm, nil } diff --git a/rules.go b/rules.go index dd58171..63a5448 100644 --- a/rules.go +++ b/rules.go @@ -137,6 +137,8 @@ func resetMsgParsingRules() { ,(5000, ` + strconv.Itoa(objSubTypeMessageGoQuestAck) + `, "Go Quest Ack Dead Marshes", "^You went to the (?P[a-zA-Z ]+). The dead are near. Back in (?P