Example #1
0
def join(message):
    # Someone is joining a channel
    if message.get_nick() == Merlin.nick:
        # Bot is joining the channel, so add a new object to the dict
        CUT.new_chan(message.get_chan())
    else:
        # Someone is joining a channel we're in
        CUT.join(message.get_chan(), message.get_nick())
        if CUT.mode_is("rapid", "join"):
            # Set the user's pnick
            CUT.get_user(message.get_nick(), message.get_chan(), pnickf=message.get_pnick)
Example #2
0
def names(message):
    # List of users in a channel
    for nick in message.get_msg().split():
        modes, nick = modesre.match(nick).groups()
        if nick == Merlin.nick and "@" in modes:
            CUT.opped(message.get_chan(), True)
        elif nick == Merlin.nick:
            CUT.opped(message.get_chan(), False)
        if CUT.mode_is("rapid") and CUT.Nicks.get(nick) is None:
            # Use whois to get the user's pnick
            message.write("WHOIS %s" % (nick,))
        CUT.join(message.get_chan(), nick)
Example #3
0
def channels(message):
    # Part of a WHOIS result
    if message.get_chan() == Merlin.nick:
        # Cycle through the list of channels
        for chan in message.get_msg().split():
            modes, chan = chanre.match(chan).groups()
            opped = "@" in modes
            # Reset the channel and get a list of nicks
            CUT.new_chan(chan)
            CUT.opped(chan, opped)
            if CUT.mode_is("rapid", "join"):
                message.write("NAMES %s\nTOPIC %s" % (chan,chan,))
Example #4
0
def names(message):
    # List of users in a channel
    for nick in message.get_msg().split():
        if nick == "@"+Merlin.nick:
            CUT.opped(message.get_chan(), True)
        elif nick == "+"+Merlin.nick or nick == Merlin.nick:
            CUT.opped(message.get_chan(), False)
        if nick[0] in ("@","+"): nick = nick[1:]
        CUT.join(message.get_chan(), nick)
        if CUT.mode_is("rapid"):
            # Use whois to get the user's pnick
            message.write("WHOIS %s" % (nick,))
Example #5
0
def channels(message):
    # Part of a WHOIS result
    if message.get_chan() == Merlin.nick:
        # Cycle through the list of channels
        for chan in message.get_msg().split():
            opped = chan[0] == "@"
            if chan[0] in ("@","+"): chan = chan[1:]
            # Reset the channel and get a list of nicks
            CUT.new_chan(chan)
            CUT.opped(chan, opped)
            if CUT.mode_is("rapid"):
                message.write("NAMES %s\nTOPIC %s" % (chan,chan,))
Example #6
0
def join(message):
    # Someone is joining a channel
    try:
        chan = message.get_msg()
    except MsgParseError:
        chan = message.get_chan()
    
    if message.get_nick() == Merlin.nick:
        # Bot is joining the channel, so add a new object to the dict
        CUT.new_chan(chan)
    else:
        # Someone is joining a channel we're in
        CUT.join(chan, message.get_nick())
        if CUT.mode_is("rapid", "join"):
            # Set the user's pnick
            CUT.get_user(message.get_nick(), chan, pnickf=message.get_pnick)