split parseMessage into handleMessage
All checks were successful
irc build / Build (push) Successful in 1m43s

This commit is contained in:
blackbeard420 2025-03-06 22:42:15 -05:00
parent ceb1d3dd1a
commit 71eb2ed048

88
irc.go
View File

@ -247,51 +247,55 @@ func (c *Connection) parseMessage(line string) {
c.NumericCallback(c, from, code, args) c.NumericCallback(c, from, code, args)
} }
} else { } else {
t := strings.SplitN(args, ":", 2) c.handleMessage(args, cmd, from)
target := strings.TrimSpace(t[0]) }
msg := "" }
if len(t) > 1 { }
msg = t[1]
}
switch strings.ToLower(cmd) { func (c *Connection) handleMessage(args, cmd, from string) {
case "privmsg": t := strings.SplitN(args, ":", 2)
if target != c.curNick { target := strings.TrimSpace(t[0])
if c.PrivmsgCallback != nil { msg := ""
c.PrivmsgCallback(c, target, from, msg) if len(t) > 1 {
} msg = t[1]
} else { }
if c.DirectCallback != nil {
c.DirectCallback(c, from, msg) switch strings.ToLower(cmd) {
} case "privmsg":
} if target != c.curNick {
case "join": if c.PrivmsgCallback != nil {
c.addNick(msg, GetNick(from)) c.PrivmsgCallback(c, target, from, msg)
if c.JoinCallback != nil { }
c.JoinCallback(c, from, msg) } else {
} if c.DirectCallback != nil {
case "quit": c.DirectCallback(c, from, msg)
c.removeNickAllChans(GetNick(from))
if c.QuitCallback != nil {
c.QuitCallback(c, from, msg)
}
case "part":
c.removeNick(target, GetNick(from))
if c.PartCallback != nil {
c.PartCallback(c, from, target, msg)
}
case "nick":
if GetNick(from) == c.curNick {
c.curNick = msg
log.Printf("BOT NICK CHANGED TO: %s\n", c.curNick)
}
if c.NickCallback != nil {
c.NickCallback(c, from, msg)
}
default:
//log.Printf("unhandled command: %s %s %s", cmd, target, msg)
} }
} }
case "join":
c.addNick(msg, GetNick(from))
if c.JoinCallback != nil {
c.JoinCallback(c, from, msg)
}
case "quit":
c.removeNickAllChans(GetNick(from))
if c.QuitCallback != nil {
c.QuitCallback(c, from, msg)
}
case "part":
c.removeNick(target, GetNick(from))
if c.PartCallback != nil {
c.PartCallback(c, from, target, msg)
}
case "nick":
if GetNick(from) == c.curNick {
c.curNick = msg
log.Printf("BOT NICK CHANGED TO: %s\n", c.curNick)
}
if c.NickCallback != nil {
c.NickCallback(c, from, msg)
}
default:
//log.Printf("unhandled command: %s %s %s", cmd, target, msg)
} }
} }