aboutsummaryrefslogtreecommitdiff
path: root/src/core_modules
diff options
context:
space:
mode:
Diffstat (limited to 'src/core_modules')
-rw-r--r--src/core_modules/ircv3_server_time.py15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/core_modules/ircv3_server_time.py b/src/core_modules/ircv3_server_time.py
index c9790d95..270d56d9 100644
--- a/src/core_modules/ircv3_server_time.py
+++ b/src/core_modules/ircv3_server_time.py
@@ -5,8 +5,21 @@ TAG = utils.irc.MessageTag("time")
@utils.export("cap", CAP)
class Module(ModuleManager.BaseModule):
+ def _get(self, tags):
+ return TAG.get_value(tags)
+
@utils.hook("raw.received")
def raw_recv(self, event):
- server_time = TAG.get_value(event["line"].tags)
+ server_time = self._get(event["line"].tags)
if not server_time == None:
event["server"].set_setting("last-server-time", server_time)
+
+ @utils.hook("received.message.private")
+ @utils.hook("received.message.channel")
+ @utils.hook("received.notice.private")
+ @utils.hook("received.notice.channel")
+ def message(self, event):
+ server_time = self._get(event["line"].tags)
+ if not server_time == None:
+ dt = utils.datetime.iso8601_parse(server_time)
+ event["buffer_line"].timestamp = dt