def send(self, line_parsed: IRCLine.ParsedLine, immediate: bool = False) -> typing.Optional[IRCLine.SentLine]: if not self.send_enabled: return None line_events = self.events.new_root() self.events.on("preprocess.send").on(line_parsed.command).call_unsafe( server=self, line=line_parsed, events=line_events) self.events.on("preprocess.send").call_unsafe(server=self, line=line_parsed, events=line_events) if line_parsed.valid() or line_parsed.assured(): line = line_parsed.format() line_obj = IRCLine.SentLine(line_events, datetime.datetime.utcnow(), self.hostmask(), line_parsed) self.socket.send(line_obj, immediate=immediate) if immediate: self.bot.trigger_write() return line_obj return None
def send(self, line_parsed: IRCLine.ParsedLine): if not self.send_enabled: return None self.events.on("preprocess.send").on(line_parsed.command).call_unsafe( server=self, line=line_parsed) line = line_parsed.format() line_obj = IRCLine.SentLine(datetime.datetime.utcnow(), self.hostmask(), line_parsed) self.socket.send(line_obj) return line_obj