1
0

networkservices.py 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. class NickServ():
  2. def recover_nick(connection, password):
  3. connection.privmsg('NickServ', 'IDENTIFY %s %s' % (self.network.nickname, password)) # Identify with NickServ.
  4. connection.privmsg('NickServ', 'RECOVER %s %s' % (self.network.nickname, password)) # Recover control of nickname via NickServ.
  5. connection.privmsg('NickServ', 'GHOST %s %s' % (self.network.nickname, password)) # Recover control of nickname via NickServ, old style.
  6. connection.nick(connection.nickname) # Set original nickname. Should have happened during the nickServ recover, this fails when still connecting. So this creates a loop to successfully recover via NickServ.
  7. class ChanServ():
  8. def invite(connection, channel):
  9. connection.privmsg("ChanServ", "INVITE " + channel)
  10. def getkey(connection, channel):
  11. connection.privmsg("ChanServ", "GETKEY " + channel)
  12. def ban(connection, channel, user, reason):
  13. connection.privmsg("ChanServ", "BAN " + channel + " " + user + " " + reason)
  14. def tempban(connection, channel, user, duration, reason):
  15. connection.privmsg("ChanServ", "BAN " + channel + " +" + duration + " " + user + " " + reason)
  16. def unban(connection, channel, user):
  17. connection.privmsg("ChanServ", "UNBAN " + channel + " " + user)
  18. def akick_add(connection, channel, user):
  19. connection.privmsg("ChanServ", "AKICK " + channel + " ADD " + user)
  20. def akick_del(connection, channel, user):
  21. connection.privmsg("ChanServ", "AKICK " + channel + " DEL " + user)
  22. def kick(connection, channel, user, reason):
  23. connection.privmsg("ChanServ", "KICK " + channel + " " + user + " " + reason)
  24. def give_mode(connection, channel, user, mode):
  25. if mode[1] == "q":
  26. modename = "OWNER"
  27. if mode[1] == "a":
  28. modename = "PROTECT"
  29. if mode[1] == "o":
  30. modename = "OP"
  31. if mode[1] == "h":
  32. modename = "HALFOP"
  33. if mode[1] == "v":
  34. modename = "VOICE"
  35. connection.privmsg("ChanServ", modename + " " + channel + " " + user)
  36. def take_all_modes(connection, channel, user):
  37. connection.privmsg("ChanServ", "DEVOICE " + channel + " " + user)
  38. connection.privmsg("ChanServ", "DEHALFOP " + channel + " " + user)
  39. connection.privmsg("ChanServ", "DEOP " + channel + " " + user)
  40. connection.privmsg("ChanServ", "DEPROTECT " + channel + " " + user)
  41. connection.privmsg("ChanServ", "DEOWNER " + channel + " " + user)