Advertisement
Guest User

Untitled

a guest
Aug 10th, 2017
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Diff 2.54 KB | None | 0 0
  1. --- origbot.py  2011-04-13 13:51:36.899100660 +0300
  2. +++ ircLogBot.py        2011-04-13 13:51:21.471103672 +0300
  3. @@ -57,6 +57,10 @@
  4.  
  5.      def connectionMade(self):
  6.          irc.IRCClient.connectionMade(self)
  7. +
  8. +        # users logged in
  9. +        self.sessions = []
  10. +
  11.          self.logger = MessageLogger(open(self.factory.filename, "a"))
  12.          self.logger.log("[connected at %s]" %
  13.                          time.asctime(time.localtime(time.time())))
  14. @@ -78,20 +82,50 @@
  15.          """This will get called when the bot joins the channel."""
  16.          self.logger.log("[I have joined %s]" % channel)
  17.  
  18. +    def checkLogin(self, user, password):
  19. +        if user != 'desaster' or password != 'internet':
  20. +            return False
  21. +        return True
  22. +
  23. +    def loginUser(self, user):
  24. +        """Mark user as logged in"""
  25. +        if user not in self.sessions:
  26. +            self.sessions.append(user)
  27. +
  28. +    def logoffUser(self, user):
  29. +        if user in self.sessions:
  30. +            self.sessions.remove(user)
  31. +
  32. +    def isLoggedIn(self, user):
  33. +        return user in self.sessions
  34. +
  35.      def privmsg(self, user, channel, msg):
  36.          """This will get called when the bot receives a message."""
  37. -        user = user.split('!', 1)[0]
  38. +        nick = user.split('!', 1)[0]
  39.          self.logger.log("<%s> %s" % (user, msg))
  40.          
  41.          # Check to see if they're sending me a private message
  42.          if channel == self.nickname:
  43. -            msg = "It isn't nice to whisper!  Play nice with the group."
  44. -            self.msg(user, msg)
  45. -            return
  46. +            pieces = msg.split()
  47. +            if len(pieces) == 2 and pieces[0] == 'login':
  48. +                password = pieces[1]
  49. +                if self.checkLogin(nick, password):
  50. +                    self.loginUser(user)
  51. +                    self.msg(user, 'Welcome, %s' % user)
  52. +                else:
  53. +                    self.msg(user, 'Login failed!')
  54. +            else:
  55. +                msg = "It isn't nice to whisper!  Play nice with the group."
  56. +                self.msg(nick, msg)
  57. +                return
  58.          
  59.          # Otherwise check to see if it is a message directed at me
  60. +        print self.sessions
  61.          if msg.startswith(self.nickname + ":"):
  62. -            msg = "%s: I am a log bot" % user
  63. +            if self.isLoggedIn(user):
  64. +                msg = "%s: Hello, sir." % nick
  65. +            else:
  66. +                msg = "%s: I don't know you." % nick
  67.              self.msg(channel, msg)
  68.              self.logger.log("<%s> %s" % (self.nickname, msg))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement