Просмотр исходного кода

feat(worker): auto-exit when room empty, cleanup task

wenhongquan 3 недель назад
Родитель
Сommit
6e57864dd8
1 измененных файлов с 4 добавлено и 0 удалено
  1. 4 0
      asr_agent/worker.py

+ 4 - 0
asr_agent/worker.py

@@ -502,6 +502,10 @@ class Worker:
         x = self.tasks.pop(p.sid, None)
         if x:
             x.cancel()
+        # Auto-exit when last participant leaves
+        if not self.room.remote_participants:
+            logger.info("Room empty, exiting")
+            asyncio.create_task(self.room.disconnect())
 
     async def _run(self, sid, track):
         logger.info("_run %s", sid)