diff options
| author | ilotterytea <iltsu@alright.party> | 2025-08-03 14:12:54 +0500 |
|---|---|---|
| committer | ilotterytea <iltsu@alright.party> | 2025-08-03 14:12:54 +0500 |
| commit | c2432518c6ae67afa40c68c2a466ba34728e5de6 (patch) | |
| tree | ca6f6205af364bcbf68ee18b25b31efa31480ea1 /internal/client.go | |
| parent | 33e5475c770a9fda9ca98bb9d4d012349e4b5beb (diff) | |
feat: parse irc messages
Diffstat (limited to 'internal/client.go')
| -rw-r--r-- | internal/client.go | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/internal/client.go b/internal/client.go index c0373a0..8adc12c 100644 --- a/internal/client.go +++ b/internal/client.go @@ -8,6 +8,7 @@ import ( "net" "net/textproto" "slices" + "strings" ) type IRCClient struct { @@ -50,11 +51,15 @@ func (c *IRCClient) Connect() (err error) { tp := textproto.NewReader(bufio.NewReader(c.conn)) for { - message, err := tp.ReadLine() + raw, err := tp.ReadLine() if err != nil { log.Panicf("Failed to read a line: %v\n", err) } - log.Printf("IRC message: %s\n", message) + + for _, line := range strings.Split(raw, "\r\n") { + message := ParseIRCMessage(line) + log.Printf("IRC message: %s\n", message) + } } } |
