2012-01-26 1 views
0

안녕하세요 사람들 파이썬을 사용하여 irc 봇을 만들었습니다. 모든 것이 내장되어 있지만 봇이 원하는대로 명령에 응답하지 않습니다. 예를 들어 내가 irc 채널에서 bot 명령을 호출하고 싶다면이 $ time과 같이 호출 할 수 있고 로봇이 몇시에 응답 할 수 있도록하려면이 작업을 수행 할 수 있습니다 -> crazybot $ 시간을 인쇄하지만 시간을 인쇄하지만 매번 이름을 입력하지 않아도됩니다 ... 어떻게 이름을 먼저 호출하지 않고도 명령을 실행하도록 로봇을 얻으시겠습니까? 여기 업데이트입니다 -> 모든 연결 .......파이썬 트위스티드 irc bot이 명령에 응답했습니다.

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() 

.... 내가 입력 할 때 시간이 오류없이 출력이 없습니다 ..

+0

기존 프로젝트를 사용 하시겠습니까? 또는 이것을 처음부터 작성 했습니까? – sberry

+0

http://sscce.org/ 또는 유용한 답을 얻지 못할 수도 있습니다. –

답변

0

당신은 수정할 수 있습니다! MyFirstIrcBot :

$에 의해 ! 교체 :

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() 
+0

답장을 보내 주셔서 감사합니다. 그러나 여전히 작동하지 않습니다. (오류 메시지가 나타나지 않습니다.) – nprezident

+0

@nprezident : [질문 업데이트] (http://stackoverflow.com/posts/9014630/edit) Jean-Paul Calderone이 물었던 오류를 보여주는 최소한의 완전한 예] (http://sscce.org/). – jfs

관련 문제