diff --git a/errbot/backends/irc.py b/errbot/backends/irc.py index 7f89fb252..696008ba0 100644 --- a/errbot/backends/irc.py +++ b/errbot/backends/irc.py @@ -26,10 +26,12 @@ class IRCConnection(SingleServerIRCBot): - def __init__(self, callback, nickname, server, port=6667, ssl=False, password=None): + def __init__(self, callback, nickname, server, port=6667, ssl=False, password=None, username=None): self.use_ssl = ssl self.callback = callback - super().__init__([(server, port, password)], nickname, nickname) + if username is None: + username = nickname + super().__init__([(server, port, password)], nickname, username) def _dispatcher(self, c, e): super()._dispatcher(c, e) @@ -80,10 +82,10 @@ def send_public_message(self, to, line): class IRCBackend(ErrBot): - def __init__(self, nickname, server, port=6667, password=None, ssl=False): + def __init__(self, nickname, server, port=6667, password=None, ssl=False, username=None): self.jid = nickname + '@' + server super(IRCBackend, self).__init__() - self.conn = IRCConnection(self, nickname, server, port, ssl, password) + self.conn = IRCConnection(self, nickname, server, port, ssl, password, username) def serve_forever(self): try: