2012-09-06 2 views
1

xmpp로 응용 프로그램을 작성했습니다. 그것은 gtalk를 사용하여 메시지를 보냅니다. 받은 메시지를 인쇄하고 싶습니다. 어떻게해야합니까? 내 신청서 짧은 코드는 다음과 같습니다.python-xmpp가 메시지를 받았습니다.

def process_message(): 
    client = xmpp.Client('gmail.com') 
    client.connect(server=('talk.google.com',5223)) 
    client.auth(user,passwd, 'botty') 

    to = raw_input("to: "); 
    if client: 
     message = raw_input("message: ") 
     client.send(xmpp.Message(to,message)) 

if __name__ == "__main__": 
    user = raw_input("User: ") 
    passwd = getpass.getpass("Pass: ") 
    process_message() 

답변

0

Client.registerHandler을 사용하여받는 메시지에 대한 이벤트 처리기를 등록해야합니다. this 또는 this one과 같은 샘플 클라이언트 코드를 살펴보십시오. 예를 들어, 후자는 다음과 같은 메시지 핸들러 함수를 구현합니다.

def xmpp_message(self, con, event): 
    type = event.getType() 
    fromjid = event.getFrom().getStripped() 
    if type in ['message', 'chat', None] and fromjid == self.remotejid: 
     sys.stdout.write(event.getBody() + '\n') 
관련 문제