From 367eb1c60ed295b75b7d41f8e5d4955b8037bdad Mon Sep 17 00:00:00 2001 From: jesopo Date: Thu, 30 May 2019 15:34:39 +0100 Subject: Make labeled-resposnes it's own module, tag and track every sent line --- src/IRCServer.py | 6 +++++- src/utils/irc/__init__.py | 3 +++ 2 files changed, 8 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/IRCServer.py b/src/IRCServer.py index c970f5de..6838968e 100644 --- a/src/IRCServer.py +++ b/src/IRCServer.py @@ -248,6 +248,8 @@ class Server(IRCObject.Object): self.events.on("preprocess.send").on(line_parsed.command ).call_unsafe(server=self, line=line_parsed) + self.events.on("preprocess.send").call_unsafe(server=self, + line=line_parsed) line = line_parsed.format() line_obj = IRCLine.SentLine(datetime.datetime.utcnow(), self.hostmask(), @@ -283,9 +285,11 @@ class Server(IRCObject.Object): def send_authenticate(self, text: str) -> IRCLine.SentLine: return self.send(utils.irc.protocol.authenticate(text)) def has_capability(self, capability: utils.irc.Capability) -> bool: - return bool(capability.available(self.agreed_capabilities)) + return bool(self.available_capability(capability)) def has_capability_str(self, capability: str) -> bool: return capability in self.agreed_capabilities + def available_capability(self, capability: utils.irc.Capability) -> bool: + return capability.available(self.agreed_capabilities) def waiting_for_capabilities(self) -> bool: return bool(len(self._capabilities_waiting)) diff --git a/src/utils/irc/__init__.py b/src/utils/irc/__init__.py index 14bbb5b0..3be9b279 100644 --- a/src/utils/irc/__init__.py +++ b/src/utils/irc/__init__.py @@ -300,6 +300,9 @@ class MessageTag(object): def get_value(self, tags: typing.Dict[str, str]) -> typing.Optional[str]: key = list(set(tags.keys())&self._names) return tags[key[0]] if key else None + def match(self, s: str) -> typing.Optional[str]: + key = list(set([s])&self._names) + return key[0] if key else None def hostmask_match(hostmask: str, pattern: str) -> bool: return fnmatch.fnmatchcase(hostmask, pattern) -- cgit v1.3.1-10-gc9f91