A Python robot that edits Wikipedia and interacts with people over IRC https://en.wikipedia.org/wiki/User:EarwigBot
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

30 lines
786 B

  1. # -*- coding: utf-8 -*-
  2. # Actions/commands to interface with IRC.
  3. class Actions:
  4. def __init__(self, sock):
  5. """actions/commands to interface with IRC"""
  6. self.sock = sock
  7. def send(self, msg):
  8. """send data to the server"""
  9. self.sock.send(msg + "\r\n")
  10. print " %s" % msg
  11. def say(self, target, msg):
  12. """send a message"""
  13. self.send("PRIVMSG %s :%s" % (target, msg))
  14. def action(self, target, msg):
  15. """send a message as an action"""
  16. self.say(target,"%sACTION %s%s" % (chr(1), msg, chr(1)))
  17. def notice(self, target, msg):
  18. """send a notice"""
  19. self.send("NOTICE %s :%s" % (target, msg))
  20. def join(self, chan):
  21. """join a channel"""
  22. self.send("JOIN %s" % chan)