From 2af549e79726901586a3ba312a66b39a7a594eb6 Mon Sep 17 00:00:00 2001 From: luk3yx Date: Thu, 12 May 2022 19:48:37 +1200 Subject: Add time tag to multiline messages --- idc_irc_proxy.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/idc_irc_proxy.py b/idc_irc_proxy.py index d946fe1..1faa5f2 100755 --- a/idc_irc_proxy.py +++ b/idc_irc_proxy.py @@ -5,7 +5,7 @@ # © 2022 by luk3yx # -import miniirc, miniirc_idc, os, socket, threading, traceback +import datetime, miniirc, miniirc_idc, os, socket, threading, traceback from concurrent.futures import ThreadPoolExecutor from miniirc_extras.utils import (ircv2_message_unparser, ircv3_message_parser, ircv3_message_unparser) @@ -88,12 +88,19 @@ class Proxy: args = [args[0], args[-1][6:]] elif cmd == 'PRIVMSG' and ('\n' in args[-1] or '\r' in args[-1]): message = args[-1].replace('\r\n', '\n').replace('\r', '\n') + if 'time' not in tags: + tags = { + 'time': datetime.datetime.utcnow().isoformat( + timespec='milliseconds' + ) + 'Z', + **tags + } for i, line in enumerate(message.split('\n', 9)): if i > 0: line = '\u200b' + line self.send(cmd, hostmask, tags, [args[0], line]) if i == 0: - tags = {} + tags = {'time': tags['time']} return # Send the command to the client -- cgit v1.2.3