Мой python витой бот irc отвечает на команды - PullRequest
0 голосов
/ 26 января 2012

Привет, люди. Я создаю IRC-бот с использованием Python Twisted, все построено, но бот не отвечает на команды, как я этого хочу.Например, если я хочу вызвать команду бота на канале irc, я хочу, чтобы она вызывалась так, как это $ time, и чтобы бот отвечал, который час, я могу заставить ее работать так -> crazybot $время, и оно печатает время, но я не хочу каждый раз вводить имя ... Как я могу заставить бота запускать команды без предварительного вызова имени?Вот обновление -> все подключается .......

def privmsg(self, user, channel, msg):
    user = user.split('!', 1)[0]

   if not msg.startswith('#'): # not a trigger command
        return # do nothing
    command, sep, rest = msg.lstrip('#').partition(' ')
    func = getattr(self, 'command_' + command, None)

def command_time(self, *args):
    return time.asctime()

.... Когда я печатаю! Время нет ошибки и нет выхода ..

1 Ответ

0 голосов
/ 26 января 2012

Вы можете изменить MyFirstIrcBot:

Заменить ! на $ in:

if not message.startswith('!'): # not a trigger command
   return # do nothing
command, sep, rest = message.lstrip('!').partition(' ')

Добавить:

from datetime import datetime

# ...
def command_time(self, rest):
    return  datetime.utcnow().isoformat()
...