if (len(sys.argv) >= 3): print sys.argv parser = argparse.ArgumentParser(description='Kinect state listener') parser.add_argument('-p','--param', help='Parameter server address', required=True) parser.add_argument('-n','--name', help='Name of the node', required=True) args = vars(parser.parse_args()) name = args["name"] paramServer = args["param"] # Utils import parameter_utils node = parameter_utils.getNodeParameters(name,paramServer,1000) if node != None: print node sub = parameter_utils.getSubscriberInfo(node,"KinectBodies") if sub != None: SUB_IP = sub.host.encode('utf-8') SUB_PORT = sub.port SUB_TOPIC = sub.topic.encode('utf-8') print "Subscriber info retrieved" else: print "Start locally" context = zmq.Context() sock = context.socket(zmq.SUB) sock.connect("%s:%s" % (SUB_IP,SUB_PORT)) sock.setsockopt(zmq.SUBSCRIBE, SUB_TOPIC) while True: topic = sock.recv()
name = args["name"] paramServer = args["param"] # Utils import parameter_utils node = parameter_utils.getNodeParameters(name,paramServer,1000) if node != None: ROBOTIP = parameter_utils.getParam(node,"ROBOTIP", "127.0.0.1") PORT = int(parameter_utils.getParam(node,"ROBOTPORT", "9559")) CTX_IP = parameter_utils.getParam(node,"ContextClientHost", "tcp://localhost") CTX_PORT = int(parameter_utils.getParam(node,"ContextServerPort", "5800")) module = NaoBehaviorModule.NaoBehaviorModule(ROBOTIP,PORT) behaviors = module.getCapabilities() #parameter_utils.register_behaviors(node,paramServer,["crouch","stand","hand_wave","greet","wish","introduction"]) parameter_utils.register_behaviors(node,paramServer,behaviors) #thread.start_new_thread(imitate_client,(module,CTX_IP,CTX_PORT)) subscriber = parameter_utils.getSubscriberInfo(node,'ParamList') thread.start_new_thread(imitate_subscriber,(module,str(subscriber.host),int(subscriber.port),str(subscriber.topic))) else: print "Start locally" time.sleep(1) # do nothing while 1: pass except: print "Exception occurred : ", sys.exc_info() raw_input("Press enter to continue ... ")