aboutsummaryrefslogtreecommitdiff
path: root/modules/nickserv.py
blob: 5a0989d49c71cd75064adb8157058a7f2d0fee94 (about) (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import base64
import EventManager


class Module(object):
    def __init__(self, bot):
        bot.events.on("received").on("numeric").on("001"
                                                   ).hook(self.on_connect,
                                                          priority=EventManager.PRIORITY_URGENT)
        bot.events.on("received").on("command").on("setnickserv"
                                                   ).hook(self.set_nickserv,
                                                          min_args=1,
                                                          permission="setnickserv",
                                                          help="Set bot's nickserv password",
                                                          usage="<password>",
                                                          private_only=True)

    def on_connect(self, event):
        nickserv_password = event["server"].get_setting(
            "nickserv-password")
        if nickserv_password:
            event["server"].attempted_auth = True
            event["server"].send_message("nickserv",
                                         "identify %s" % nickserv_password)

    def set_nickserv(self, event):
        nickserv_password = event["args"]
        event["server"].set_setting("nickserv-password", nickserv_password)
        event["stdout"].write("Nickserv password saved")