package main import ( "os" "time" "go.wit.com/lib/protobuf/chatpb" "go.wit.com/log" "google.golang.org/protobuf/types/known/timestamppb" ) func doOutput(s string) { filename := "/tmp/regex-output.log" f, err := os.OpenFile(filename, os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644) if err != nil { log.Println(err) return } defer f.Close() if _, err := f.WriteString(s + "\n"); err != nil { log.Println(err) } log.Info("OUTPUT LOGGED TO", filename) // Load the existing chats. all := chatpb.NewChats() if err := all.ConfigLoad(); err != nil { log.Warn("Error loading config, can't add to auto chat:", err) return } // Find the "auto" chat. var autoChat *chatpb.Chat for _, chat := range all.GetChats() { if chat.GetChatName() == "auto" { autoChat = chat break } } // If the "auto" chat is found, add the new entry. if autoChat != nil { newEntry := &chatpb.ChatEntry{ From: chatpb.Who_REGEX, Content: s, Ctime: timestamppb.New(time.Now()), } autoChat.Entries = append(autoChat.Entries, newEntry) if err := all.ConfigSave(); err != nil { log.Warn("Error saving config after adding to auto chat:", err) } else { log.Info("Added new entry to 'auto' chat.") } } }