from sleekxmpp.componentxmpp import ComponentXMPP from argparse import ArgumentParser class ObjectComponent(ComponentXMPP): def __init__(self, jid, secret, server, port): ComponentXMPP.__init__(self, jid, secret, server, port) self.add_event_handler("session_start", self.start) self.add_event_handler("message", self.message) def start(self, event): pass def message(self, msg): msg.reply("Thanks for sending\n%(body)s" % msg).send() if __name__ == '__main__' : commandline = ArgumentParser(description='Connect the alias component to a given server') commandline.add_argument('-p', '--port', help='Port to connect to', type=int) commandline.add_argument('-s', '--secret', help='password') commandline.add_argument('-n', '--name', help='Name the component will have') commandline.add_argument('host', help='Host to connect to') args = commandline.parse_args() component = ObjectComponent(args.name, args.secret,args.host,args.port) if component.connect() : print 'Component', args.name, 'connected to', args.host + ':' + str(args.port) component.process() else : print "Couldn't connect"