diff --git a/main.go b/main.go index c6b1293..c9991d9 100644 --- a/main.go +++ b/main.go @@ -188,6 +188,17 @@ func main() { } sp.Read(b[:p.PLength]) logInfoDebug("AdminPacketServerRCon :\n- ColorID: %d\n- Output: %s", sp.ColorID, sp.Output) + + ok, err := regexp.MatchString("Client #[0-9]+ name: '.*' company: [0-9]+ IP: .*", sp.Output) + if ok { + clt := Client{} + r, _ := regexp.Compile("Client #(?P[0-9]+) name: '(?P.*)' company: (?P[0-9]+) IP: (?P
.*)") + clt.ClientID, _ = strconv.ParseInt(r.ReplaceAllString(m.Text, "${ClientID}"), 10, 32) + clt.Name = r.ReplaceAllString(m.Text, "${ClientID}") + clt.CompanyID, _ = strconv.ParseInt(r.ReplaceAllString(m.Text, "${CompanyID}"), 10, 8) + clt.Address = r.ReplaceAllString(m.Text, "${Address}") + clients[clt.ClientID] = clt + } case AdminPacketServerRConEnd: sp := PacketServerRConEnd{ Packet: p,