diff --git a/sorteerhoed/central_management.py b/sorteerhoed/central_management.py index c0296a5..f545179 100644 --- a/sorteerhoed/central_management.py +++ b/sorteerhoed/central_management.py @@ -164,7 +164,7 @@ class CentralManagement(): # park always triggers a plotter.finished after being processed elif signal.name[:4] == 'sqs.': - if signal.params['event']['HITId'] != self.currentHit.id: + if signal.params['event']['HITId'] != self.currentHit.hit_id: self.logger.warning(f"SQS hit.info hit_id != currenthit.id: {signal}, update status for older HIT") sqsHit = self.store.getHitByRemoteId(signal.params['event']['HITId']) updateStatus = False @@ -268,6 +268,8 @@ class CentralManagement(): # TODO: have HITStore/HIT take care of this by emitting a signal self.server.statusPage.set('hit_id', new_hit['HIT']['HITId']) self.server.statusPage.set('hit_created', self.currentHit.created_at) + self.server.statusPage.set('fee', f"${self.currentHit.fee:.2f}") + self.server.statusPage.set('state', self.currentHit.getStatus()) # mturk.send_test_event_notification() if self.config['amazon']['sqs_url']: @@ -325,7 +327,7 @@ class CentralManagement(): cmd = [ 'sudo', 'scanimage', '-d', 'epkowa', '--format', 'jpeg', - '--resolution=100', '-l','20','-t','30','-x',str(185), + '--resolution=100', '-l','18','-t','30','-x',str(185), '-y',str(245) ] self.logger.info(f"{cmd}") @@ -343,7 +345,7 @@ class CentralManagement(): try: f = io.BytesIO(o) img = Image.open(f) - img = img.transpose(Image.ROTATE_90) + img = img.transpose(Image.ROTATE_90).transpose(Image.FLIP_TOP_BOTTOM) img.save(filename) except Exception as e: self.logger.critical("Cannot create image from scan. Did scanner work?") diff --git a/sorteerhoed/plotter.py b/sorteerhoed/plotter.py index f9f4221..9b555c0 100644 --- a/sorteerhoed/plotter.py +++ b/sorteerhoed/plotter.py @@ -29,7 +29,11 @@ class Plotter: def park(self): self.logger.info("Queue to park plotter") self.goPark = True - self.q.put([(1/2.54)/self.plotWidth + 1,0,0]) + #self.q.put([(1/2.54)/self.plotWidth + 1,0,0]) + absPlotWidth = 26.5/2.54 + topLeft = absPlotWidth / self.plotWidth #ignore changes in config plotwidth + self.q.put([(1/2.54)/absPlotWidth + topLeft,0,0]) + def start(self): try: @@ -130,8 +134,8 @@ class Plotter: # if no info comes in for .5sec, plot that segment segment = self.q.get(True, .5) - if self.goPark: - print("seg",segment) + #if self.goPark: + # print("seg",segment) # change of pen state? draw previous segments! if (segment[2] == 1 and not self.pen_down) or (segment[2] == 0 and self.pen_down) or len(segments) > 150: diff --git a/sorteerhoed/webserver.py b/sorteerhoed/webserver.py index 3e0f6d2..1731131 100644 --- a/sorteerhoed/webserver.py +++ b/sorteerhoed/webserver.py @@ -312,7 +312,6 @@ class BackendHandler(tornado.web.RequestHandler): seconds = (hit.submit_hit_at - hit.accept_time).total_seconds() duration_m = int(seconds/60) duration_s = max(int(seconds%60), 0) - print(duration_m, duration_s) duration = (f"{duration_m}m" if duration_m else "") + f"{duration_s:02d}s" else: duration = "-" @@ -321,7 +320,7 @@ class BackendHandler(tornado.web.RequestHandler): rows.append( f""" -