aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar jesopo2020-01-23 13:10:45 +0000
committerGravatar jesopo2020-01-23 13:10:45 +0000
commitd919e5c3451413194600c7ec904c5fc0f1c0cd21 (patch)
treed7e0920f1547cbfdcb6d29aa05ccd5cf1cbbbf97
parentset_own_nickname before sending self.nick event (diff)
signature
simplify snotice detection, handle as normal NOTICE
-rw-r--r--src/IRCServer.py2
-rw-r--r--src/core_modules/format_activity.py4
-rw-r--r--src/core_modules/line_handler/message.py30
3 files changed, 15 insertions, 21 deletions
diff --git a/src/IRCServer.py b/src/IRCServer.py
index c3460a4b..3549981b 100644
--- a/src/IRCServer.py
+++ b/src/IRCServer.py
@@ -17,7 +17,7 @@ class Server(IRCObject.Object):
self.id = id
self.alias = alias
self.connection_params = connection_params
- self.name = None # type: typing.Optional[str]
+ self.name = connection_params.hostname
self.version = None # type: typing.Optional[str]
self.connected = False
diff --git a/src/core_modules/format_activity.py b/src/core_modules/format_activity.py
index 1e012fc8..27783822 100644
--- a/src/core_modules/format_activity.py
+++ b/src/core_modules/format_activity.py
@@ -157,9 +157,9 @@ class Module(ModuleManager.BaseModule):
@utils.hook("received.server-notice")
def server_notice(self, event):
- line = "-*{~SOURCE}- {MSG}"
+ line = "-*{~NAME}- {MSG}"
self._event("server-notice", event["server"], line, None,
- formatting={"MSG": event["message"], "~SOURCE": event["source"]})
+ formatting={"MSG": event["message"], "~NAME": event["server"].name})
@utils.hook("received.invite")
def invite(self, event):
diff --git a/src/core_modules/line_handler/message.py b/src/core_modules/line_handler/message.py
index 944c73a2..87b91c9e 100644
--- a/src/core_modules/line_handler/message.py
+++ b/src/core_modules/line_handler/message.py
@@ -1,5 +1,5 @@
import uuid
-from src import IRCBuffer, utils
+from src import IRCBuffer, IRCLine, utils
def _from_self(server, source):
if source:
@@ -20,28 +20,22 @@ def message(events, event):
if len(event["line"].args) > 1:
message = event["line"].args[1]
- if not from_self and (
- not event["line"].source or
- not event["server"].name or
- event["line"].source.hostmask == event["server"].name or
- target_str == "*"):
- if event["line"].source:
+ source = event["line"].source
+ if (not event["server"].nickname
+ or not source
+ or source.hostmask == event["server"].name):
+ if source:
event["server"].name = event["line"].source.hostmask
-
- source = (event["server"].name or
- event["server"].connection_params.hostname)
-
- events.on("received.server-notice").call(message=message,
- message_split=message.split(" "), server=event["server"],
- source=source)
- return
+ else:
+ source = IRCLine.parse_hostmask(event["server"].name)
+ target_str = event["server"].nickname or "*"
if from_self:
user = event["server"].get_user(event["server"].nickname)
else:
- user = event["server"].get_user(event["line"].source.nickname,
- username=event["line"].source.username,
- hostname=event["line"].source.hostname)
+ user = event["server"].get_user(source.nickname,
+ username=source.username,
+ hostname=source.hostname)
# strip prefix_symbols from the start of target, for when people use
# e.g. 'PRIVMSG +#channel :hi' which would send a message to only