aboutsummaryrefslogtreecommitdiff
path: root/modules/labeled_responses.py
diff options
context:
space:
mode:
authorGravatar jesopo2019-06-03 12:44:04 +0100
committerGravatar jesopo2019-06-03 12:44:04 +0100
commit9a8b345c53e852d7092197cee084d0d3c02bc0ff (patch)
tree408c6833c2f4de7198c354043c8ca265c0616901 /modules/labeled_responses.py
parentCheck from_self, not if target==is_own_nickname, use from_self when adding to (diff)
signature
Prefix names for all IRCv3 modules with "ircv3_"
Diffstat (limited to 'modules/labeled_responses.py')
-rw-r--r--modules/labeled_responses.py49
1 files changed, 0 insertions, 49 deletions
diff --git a/modules/labeled_responses.py b/modules/labeled_responses.py
deleted file mode 100644
index eee53c58..00000000
--- a/modules/labeled_responses.py
+++ /dev/null
@@ -1,49 +0,0 @@
-import uuid
-from src import ModuleManager, utils
-
-CAP = utils.irc.Capability(None, "draft/labeled-response-0.2")
-TAG = utils.irc.MessageTag(None, "draft/label")
-
-CAP_TO_TAG = {
- "draft/labeled-response-0.2": "draft/label"
-}
-
-class Module(ModuleManager.BaseModule):
- @utils.hook("new.server")
- def new_server(self, event):
- event["server"]._label_cache = {}
-
- @utils.hook("received.cap.ls")
- @utils.hook("received.cap.new")
- def on_cap(self, event):
- if CAP.available(event["capabilities"]):
- return CAP.copy()
-
- @utils.hook("preprocess.send")
- def raw_send(self, event):
- available_cap = event["server"].available_capability(CAP)
-
- if available_cap:
- label = TAG.get_value(event["line"].tags)
- if label == None:
- tag_key = CAP_TO_TAG[available_cap]
- label = str(uuid.uuid4())
- event["line"].tags[tag_key] = label
-
- event["server"]._label_cache[label] = event["line"]
-
- @utils.hook("raw.received")
- def raw_recv(self, event):
- if not event["line"].command == "BATCH":
- label = TAG.get_value(event["line"].tags)
- if not label == None:
- self._recv(event["server"], label, event["line"])
-
- @utils.hook("received.batch.end")
- def batch_end(self, event):
- if TAG.match(event["batch"].type):
- self._recv(event["server"], event["batch"].identifier, None)
-
- def _recv(self, server, label, line):
- cached_line = server._label_cache.pop(label)
- # do something with the line!