changeset 23:9e56e86a6814

server supports downloading into a given folder
author drewp@bigasterisk.com
date Mon, 17 Apr 2023 13:33:59 -0700
parents ff73b95fc72f
children 1a9a8af1aa19
files video.py video_ingest.py
diffstat 2 files changed, 5 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/video.py	Mon Apr 17 13:33:05 2023 -0700
+++ b/video.py	Mon Apr 17 13:33:59 2023 -0700
@@ -43,8 +43,9 @@
 
 
 async def ingestVideoUrl(req: Request) -> Response:
+    folder = req.query_params['folder']
     url = await req.body()
-    await svc.ingestUrl(url.decode('utf8'))
+    await svc.ingestUrl(url.decode('utf8'), folder)
     return Response(status_code=202)
 
 
--- a/video_ingest.py	Mon Apr 17 13:33:05 2023 -0700
+++ b/video_ingest.py	Mon Apr 17 13:33:59 2023 -0700
@@ -13,8 +13,9 @@
     async def addContent(self, name: str, body: Coroutine[Any, Any, bytes]):
         await self.store.save(name, iter([await body]))
 
-    async def ingestUrl(self, url: str):
-        dl_queue.queue.put({'url': url, 'outDir': str(self.store.top)})
+    async def ingestUrl(self, url: str, folder:str):
+        outDir = self.store.top / folder.lstrip('/') #danger user input
+        dl_queue.queue.put({'url': url, 'outDir': str(outDir)})
 
     async def events(self):
         prev = None