Exemple #1
0
    try:
        if (len(sys.argv) >= 3):
              print sys.argv
              parser = argparse.ArgumentParser(description='Nao Robot Behavior')
              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:
                  ROBOT_IP = parameter_utils.getParam(node,"ROBOTIP", "127.0.0.1")
                  ROBOT_PORT =  int(parameter_utils.getParam(node,"ROBOTPORT", "9559"))
                  pub = parameter_utils.getPublisherInfo(node,"JointValueVector")
                  if pub != None:
                    PUB_IP = pub.host.encode('utf-8')
                    PUB_PORT = pub.port
                    PUB_TOPIC = pub.topic.encode('utf-8')
                  pub2 = parameter_utils.getPublisherInfo(node,"AbsolutePosition")
                  if pub2 != None:
                    PUB2_IP = pub2.host.encode('utf-8')
                    PUB2_PORT = pub2.port
                    PUB2_TOPIC = pub2.topic.encode('utf-8')
        else:
              print "Start locally"

        if ROBOT_IP == '127.0.0.1':
      PORT = 55241
      if (len(sys.argv) >= 3):
          print sys.argv
          parser = argparse.ArgumentParser(description='Nao Robot Behavior')
          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:
              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)
      PORT = 55241
      if (len(sys.argv) >= 3):
          print sys.argv
          parser = argparse.ArgumentParser(description='Nao Robot Behavior')
          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:
              ROBOTIP = parameter_utils.getParam(node,"ROBOTIP", "127.0.0.1")
              PORT =  int(parameter_utils.getParam(node,"ROBOTPORT", "9559"))
              BEHAVIOR_PORT = int(parameter_utils.getParam(node,"RequestServerPort", "5590"))
              BEHAVIOR_IP = parameter_utils.getParam(node,"RequestServerIP", "*")
              ROBOTNAME = parameter_utils.getParam(node,"ROBOTNAME", "ROBOTX")
              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,ROBOTNAME,paramServer,behaviors)
              thread.start_new_thread(behavior_server2,(module,BEHAVIOR_IP,BEHAVIOR_PORT))
      else:
          print "Start locally"

      time.sleep(1)

      # do nothing 
Exemple #4
0
    try:
        if (len(sys.argv) >= 3):
            print sys.argv
            parser = argparse.ArgumentParser(description='Main program')
            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:
                context_server = parameter_utils.getParam(node,"ContextClientHost","tcp://localhost")
                context_port = parameter_utils.getParam(node,"ContextServerPort","5800")
        else:
            print "Start locally"

        # create a lock object for synchronization
        lock = thread.allocate_lock()

        # client listener
        thread.start_new_thread(context_client,(lock,context_server,context_port));
        
        # starting a test server to test the communication. need to be commented when working with real server
        # thread.start_new_thread(localization_server,(ip,port));

    except:
        # printing on exception