diff --git a/plugins/Services.py b/plugins/Services.py index b3e3cb0e6..b1def3546 100644 --- a/plugins/Services.py +++ b/plugins/Services.py @@ -207,7 +207,7 @@ class Services(privmsgs.CapabilityCheckingPrivmsg): def doNick(self, irc, msg): nick = self.registryValue('nick') - if msg.args[0] == irc.nick: + if msg.args[0] == irc.nick and irc.nick == nick: self._doIdentify(irc) elif ircutils.strEqual(msg.nick, nick): irc.sendMsg(ircmsgs.nick(nick)) @@ -241,6 +241,10 @@ class Services(privmsgs.CapabilityCheckingPrivmsg): self.sentGhost = False self.identified = False irc.queueMsg(ircmsgs.nick(nick)) + elif 'currently' in s and 'isn\'t' in s or 'is not' in s: + # The nick isn't online, let's change our nick to it. + self.sentGhost = False + irc.queueMsg(ircmsgs.nick(nick)) elif ('registered' in s or 'protected' in s) and \ ('not' not in s and 'isn\'t' not in s): self.log.info('Received "Registered Nick" from NickServ.')