Beispiel #1
0
 def handleJSON(self, json_obj):
     if srv.SCAN_NAV in json_obj:
         if self.seq_num % 20 is 0:
             srv.send_msg(
                 self.client, '{ "SEQ": ' + str(self.seq_num) +
                 ', "ACTION": 1, "DIST": 3, "SPEED":25 }')
         self.seq_num += 1
     return
Beispiel #2
0
 def handleJSON(self, json_obj):
     # do whatever with the incoming data...
     if 'IRDIST' in json_obj[srv.DELIV_SENSE] and json_obj[srv.DELIV_SENSE]['IRDIST'] >= 500:
         if self.recv_seq % 2 is 0:
             srv.send_msg(self.client, '{"SEQ": 0, "ACTION": 1}!')
         else:
             srv.send_msg(self.client, '{"SEQ": 0, "ACTION": 0}!')
         self.seq_num += 1
     return
Beispiel #3
0
    def handleJSON(self, json_obj):
        # do whatever with the incoming data...
        if not srv.DELIV_NAV in json_obj:
            return
        deliv_nav = json_obj[srv.DELIV_NAV]
        # update rover status
        if srv.STATUS and srv.MESSAGE in deliv_nav:
            text = srv.INFO_DB_STORE_ATT + " Data being stored: " + json.dumps(
                json_obj)
            text = re.sub('\"', '', text)
            msg = status.StatusMsg(self.name, "STORE", "COLOR", text)
            self.sendToStatusThread(msg)
            text = srv.store(
                json.loads('{ "DELIV_NAV.STATUS": { "$exists": true } }'),
                json_obj, self.col)
            text = re.sub('\"', '', text)
            msg = status.StatusMsg(self.name, "SUCCESS", "STATUS", text)
            self.sendToStatusThread(msg)

        # update position
        elif srv.X and srv.Y in deliv_nav:
            text = srv.INFO_DB_STORE_ATT + " Data being stored: " + json.dumps(
                json_obj)
            text = re.sub('\"', '', text)
            msg = status.StatusMsg(self.name, "STORE", "COLOR", text)
            self.sendToStatusThread(msg)
            text = srv.store(
                json.loads('{ "DELIV_NAV.X": { "$exists": true } }'), json_obj,
                self.col)
            text = re.sub('\"', '', text)
            msg = status.StatusMsg(self.name, "SUCCESS", "LOC", text)
            self.sendToStatusThread(msg)

        # update spped and direction
        elif srv.RIGHT_DIR and srv.LEFT_DIR and srv.RIGHT_SPEED and srv.LEFT_SPEED in deliv_nav:
            text = srv.INFO_DB_STORE_ATT + " Data being stored: " + json.dumps(
                json_obj)
            text = re.sub('\"', '', text)
            msg = status.StatusMsg(self.name, "STORE", "COLOR", text)
            self.sendToStatusThread(msg)
            text = srv.store(
                json.loads('{ "DELIV_NAV.RIGHT_DIR": { "$exists": true } }'),
                json_obj, self.col)
            text = re.sub('\"', '', text)
            msg = status.StatusMsg(self.name, "SUCCESS", "SPEED", text)
            self.sendToStatusThread(msg)

        if srv.STATUS in deliv_nav:
            if deliv_nav[srv.STATUS] is 0:
                # send message for next action (FWD, BACKWARD, etc)
                #deliv_nav_rtrn_msg = srv.retrieve(self.seq_num, self.col)
                srv.send_msg(self.client, srv.DELIV_NAV_DEFAULT_ACTION)
                self.seq_num += 1
        return
Beispiel #4
0
    def run(self):
        print("[StatusConsoleThread]: on port %s"%self.port)

        while True:
            self.initClient()
            while True:
                try:
                    recvd = status_d.popleft()
                    if self.verbose:
                        print(status.msgToString(recvd))
                    # format message into JSON
                    json_msg = status.STATUS_JSON%(recvd.origin, recvd.mtype, recvd.subj, recvd.text)
                    srv.send_msg(self.client, json_msg)
                except IndexError:
                    continue
            print("[StatusConsoleThread]: exiting...")
            sys.stdout.flush()
Beispiel #5
0
                elif SCAN_NAV in json_obj:
<<<<<<< HEAD
                	scan_nav = json_obj[SCAN_NAV]
                	# update position
                	if DISTANCE in scan_nav:
                		srv.store(json.loads('{ "SCAN_NAV.DISTANCE": { "$exists": true } }'), json_obj, scan_nav_col)
||||||| merged common ancestors
                	scan_nav = json_obj[SCAN_NAV]
                	# update position
                	if DISTANCE in scan_nav:
                		srv.store(json.loads('{ "SCAN_NAV.DISTANCE": { "$exists": true } }'), json_obj, scan_nav_col)
                
                temp_send = input("Send something to alex: ")
                if temp_send is 'y':
                	#scan_nav_rtrn_msg = srv.retrieve(seq_num, scan_nav_col)
                	srv.send_msg(client, '{ "SEQ": 0, "ACTION": 0 }!')
=======
                    scan_nav = json_obj[SCAN_NAV]
                    # update position
                    if DISTANCE in scan_nav:
                        srv.store(json.loads('{ "SCAN_NAV.DISTANCE": { "$exists": true } }'), json_obj, scan_nav_col)
                
                temp_send = input("Send something to alex: ")
                if temp_send is 'y':
                    #scan_nav_rtrn_msg = srv.retrieve(seq_num, scan_nav_col)
                    srv.send_msg(client, '{ "SEQ": 0, "ACTION": 0 }!')
>>>>>>> 9f1b06fddfd71bfe45048970fe2d7ec41d66b901

                # handle delivery rover navigation message calls
                elif DELIV_NAV in json_obj:
                    deliv_nav = json_obj[DELIV_NAV]
 def handleJSON(self, json_obj):
     if srv.SCAN_NAV in json_obj:
         if self.seq_num % 2 is 0:
             srv.send_msg(self.client, "{ a }")
         self.seq_num += 1
     return