commit 02f396810119b6dbbc0517cf2656f37c0c50c2e0
parent d541a4747e328e09c841fb277dab31c6cd415d27
Author: Natasha Kerensikova <natgh@instinctive.eu>
Date: Thu, 19 Jun 2025 19:13:12 +0000
Message headers and reply topic are optionally shown on IRC
Diffstat:
M | main.go | | | 22 | ++++++++++++++++++++-- |
1 file changed, 20 insertions(+), 2 deletions(-)
diff --git a/main.go b/main.go
@@ -75,6 +75,8 @@ type IrcConfig struct {
Cmd LineMark
Send LineMark
Show LineMark
+ ShowReply *LineMark
+ ShowHeader *LineMark
MaxLine int
ContSuffix string
ContPrefix string
@@ -362,8 +364,24 @@ func (natsim *NatsIM) natsReceive(m *nats.Msg) {
return
}
- msg := packMark(natsim.Irc.Show, m.Subject, string(m.Data))
- natsim.ircSend(msg)
+ var sb strings.Builder
+ sb.WriteString(packMark(natsim.Irc.Show, m.Subject, string(m.Data)))
+
+ if m.Reply != "" && natsim.Irc.ShowReply != nil {
+ sb.WriteString(natsim.Irc.ShowReply.Start)
+ sb.WriteString(m.Reply)
+ sb.WriteString(natsim.Irc.ShowReply.End)
+ }
+
+ if natsim.Irc.ShowHeader != nil {
+ for key, values := range m.Header {
+ for _, value := range values {
+ sb.WriteString(packMark(*natsim.Irc.ShowHeader, key, value))
+ }
+ }
+ }
+
+ natsim.ircSend(sb.String())
}
func (natsim *NatsIM) natsReconnected(c *nats.Conn) {