aboutsummaryrefslogtreecommitdiff
path: root/modules/message_tracking.py
diff options
context:
space:
mode:
authorGravatar jesopo2019-02-14 21:51:51 +0000
committerGravatar jesopo2019-02-14 21:51:51 +0000
commit52387900bc55261ff7defca5e1bbbd02e4688cf5 (patch)
tree144246b64ecb8dce07cb51611b69b1720eaa16eb /modules/message_tracking.py
parentAdd IRCServer.send_tagmsg, to send `TAGMSG` commands (diff)
signature
Support `draft/delivered` and `draft/read` (message_tracking.py)
Diffstat (limited to 'modules/message_tracking.py')
-rw-r--r--modules/message_tracking.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/modules/message_tracking.py b/modules/message_tracking.py
new file mode 100644
index 00000000..253e5426
--- /dev/null
+++ b/modules/message_tracking.py
@@ -0,0 +1,17 @@
+from src import ModuleManager, utils
+
+MSGID_TAG = "draft/msgid"
+READ_TAG = "+draft/read"
+DELIVERED_TAG = "+draft/delivered"
+
+class Module(ModuleManager.BaseModule):
+ @utils.hook("received.message.private")
+ @utils.hook("received.message.channel")
+ @utils.hook("received.notice.private")
+ @utils.hook("received.notice.channel")
+ def privmsg(self, event):
+ if MSGID_TAG in event["tags"]:
+ target = event.get("channel", event["user"])
+ msgid = event["tags"][MSGID_TAG]
+ tags = {DELIVERED_TAG: msgid, READ_TAG: msgid}
+ server.send_tagmsg(target.name, tags)