diff --git a/rules.go b/rules.go index 29eedcf..5edec3c 100644 --- a/rules.go +++ b/rules.go @@ -119,6 +119,17 @@ func resetMsgParsingRules() { ,(4900, ` + strconv.Itoa(objSubTypeMessageUnionWar) + `, "Union war rep only union", "^(🏠Trade union news:\n)(?P(?s:.*))(🎪State of exclusive rights:\n){0}(?P(?s:.*))$") ,(4900, ` + strconv.Itoa(objSubTypeMessageUnionWar) + `, "Union war rep only fair", "^(🏠Trade union news:\n){0}(?P(?s:.*))(🎪State of exclusive rights:\n)(?P(?s:.*))$") ,(5000, ` + strconv.Itoa(objSubTypeMessageTimeout) + `, "Generic timeout", "^Too late. Action is not available.$") + ,(5000, ` + strconv.Itoa(objSubTypeMessageMeAck) + `, "Me ack", "^(?s:.*)Battle of the seven castles in .* minutes!\\n` + + `(?s:.*)\\n` + + `Level:(?P[0-9]+)\\n` + + `Atk:(?P[0-9]+) Def:(?P[0-9]+)\\n` + + `Exp:(?P[0-9]+)/(?P[0-9]+)\\n` + + `Stamina:(?P[0-9]+)/(?P[0-9]+)\\n` + + `(Gold(?P[0-9]+)){0,1}(Pogs(?P[0-9]+)){0,1}(Gems(?P[0-9]+)){0,1}\\n\\n` + + `Equipment +(?P[0-9]+) +(?P[0-9]+)` + + `Bag: (?P[0-9]+)/(?P[0-9]+) /inv\\n\\n` + + `State:\\n(?P.*)\\n\\n` + + `More:/hero(?s:.*)$") ;`) failOnError(err, "resetMsgParsingRules : populate table msg_rules") } diff --git a/workers.go b/workers.go index 0eb202a..4d38fd3 100644 --- a/workers.go +++ b/workers.go @@ -140,6 +140,9 @@ func SQLIdentifyMsgWorker(id int, objIds <-chan int64) { case objSubTypeMessageMeReq: err = setObjSubTypeId(objId, objSubTypeMessageMeReq) logOnError(err, "SQLIdentifyMsgWorker["+strconv.Itoa(id)+"] : setObjSubTypeId(MeReq)") + case objSubTypeMessageMeAck: + err = setObjSubTypeId(objId, objSubTypeMessageMeAck) + logOnError(err, "SQLIdentifyMsgWorker["+strconv.Itoa(id)+"] : setObjSubTypeId(MeAck)") case objSubTypeMessageInventoryReq: err = setObjSubTypeId(objId, objSubTypeMessageInventoryReq) logOnError(err, "SQLIdentifyMsgWorker["+strconv.Itoa(id)+"] : setObjSubTypeId(InventoryReq)")