diff --git a/test_tube_scanner/home/management/commands/start_workers.py b/test_tube_scanner/home/management/commands/start_workers.py index 84f18ef..4448892 100644 --- a/test_tube_scanner/home/management/commands/start_workers.py +++ b/test_tube_scanner/home/management/commands/start_workers.py @@ -7,7 +7,6 @@ from django.core.management.base import BaseCommand from scanner import tasks as scanner_tasks - class Command(BaseCommand): help = "Démarre les tâches Celery." @@ -18,9 +17,9 @@ class Command(BaseCommand): def handle(self, *args, **options): # @UnusedVariable #task = options['task'] try: - scanner_tasks.scanner_start.delay() # @UndefinedVariable - scanner_tasks.replay_start.delay() # @UndefinedVariable + scanner_tasks.replay_start.delay() # @UndefinedVariable + except Exception as e: print(e) diff --git a/test_tube_scanner/scanner/consumers.py b/test_tube_scanner/scanner/consumers.py index 0fc6abf..3daf173 100644 --- a/test_tube_scanner/scanner/consumers.py +++ b/test_tube_scanner/scanner/consumers.py @@ -24,6 +24,7 @@ class ScannerConsumer(AsyncWebsocketConsumer): logger.info( f"==== Disconnect from {self.this_group}") async def scanner_message(self, event): + logger.info( f"===={event.get('type')}") await self.send(text_data=json.dumps(event["text"])) ## Receive message from WebSocket @@ -33,9 +34,6 @@ class ScannerConsumer(AsyncWebsocketConsumer): if msg_type in ["scanner", "calibrate"]: redisDB.publish(self.this_group, json.dumps(data)) - async def replay_message(self, event): - await self.send(text_data=json.dumps(event["text"])) - class ReplayConsumer(AsyncWebsocketConsumer): diff --git a/test_tube_scanner/scanner/models.py b/test_tube_scanner/scanner/models.py index da3a86e..45054af 100644 --- a/test_tube_scanner/scanner/models.py +++ b/test_tube_scanner/scanner/models.py @@ -38,6 +38,12 @@ CAPTURE_TYPE = [ ('file', _("mp4")), ] + +class TaskID(models.Model): + code = models.CharField(unique=True, max_length=64, null=True, blank=False) + task_id = models.CharField(max_length=250, null=True, blank=False, default="") + + class Configuration(models.Model): name = models.CharField(_("Nom de la Configuration"), help_text=_("Nom de la configuration"), max_length=100, null=True, blank=False, default=_("Configuration par défaut")) author = models.ForeignKey(User, on_delete=models.CASCADE, verbose_name="Auteur", null=True, blank=True) @@ -279,8 +285,8 @@ class Session(models.Model): class Meta: ordering = ['-created', ] - verbose_name = _("Session d'expérience") - verbose_name_plural = _("Sessions d'expériences") + verbose_name = _("Session") + verbose_name_plural = _("Sessions") def __str__(self): state = _("Terminée") if not self.active else _("Active") diff --git a/test_tube_scanner/scanner/process.py b/test_tube_scanner/scanner/process.py index f46dee5..8d15098 100644 --- a/test_tube_scanner/scanner/process.py +++ b/test_tube_scanner/scanner/process.py @@ -139,11 +139,12 @@ class CameraRecordManager(): class ScannerProcess(Task): - + name='scanner.scanner_process' def __init__(self): super().__init__() + self.channel_layer = get_channel_layer() - self.group = f'scanner_proc' + self.group = 'scanner_proc' self.stop_event = Event() self.cam = None self.grbl = None @@ -162,6 +163,8 @@ class ScannerProcess(Task): def start(self, *args, **kwargs): try: + logger.warning("ScannerProcess==================", self.name) + self.conf = ScannerConstants().get() self.use_tracking = self.conf.tracking @@ -234,6 +237,8 @@ class ScannerProcess(Task): self.stop_event.clear() self.start_services() + + return self.name except Exception as e: logger.error(f"Scanner started error: {e}") raise Ignore() @@ -254,6 +259,7 @@ class ScannerProcess(Task): Thread(target=self._recording, daemon=True).start() Thread(target=self._init_grbl, daemon=True).start() self.cam.start() + logger.warning(f"Scanner services started ...") def _send(self, **payload): async_to_sync(self.channel_layer.group_send)( @@ -335,6 +341,8 @@ class ScannerProcess(Task): self.grbl.go_origin(feed=self.manager.feed) elif topic == 'scan': + + logger.info(f"==== Scan {cmd}") sid = cmd.get("session", '0') if sid == "0": self._send(state='error', msg=str(_('La session est nulle!...'))) diff --git a/test_tube_scanner/scanner/static/scanner/js/main.js b/test_tube_scanner/scanner/static/scanner/js/main.js index 4530138..e8c3b75 100644 --- a/test_tube_scanner/scanner/static/scanner/js/main.js +++ b/test_tube_scanner/scanner/static/scanner/js/main.js @@ -43,7 +43,7 @@ class ScannerManager { if (payload.xy) { this.x.textContent=payload.x.toFixed(2); this.y.textContent=payload.y.toFixed(2); } if (payload.state) { this.debug.insertAdjacentHTML('afterbegin', `