Spaces:
Running
Running
import os | |
import json | |
import logging | |
import asyncio | |
import traceback | |
from aiohttp import web | |
from pyrogram import raw | |
from aiohttp.http_exceptions import BadStatusLine | |
from FileStream.utils.FileProcessors.human_readable import humanbytes | |
from FileStream.Database import Database | |
from FileStream.config import Telegram, Server | |
db = Database(Telegram.DATABASE_URL, Telegram.SESSION_NAME) | |
async def searchAll(request: web.Request): | |
data = await request.get() | |
query = data.get('query') | |
offset = data.get('offset') | |
results = [] | |
offset = int(offset or 0) | |
files, next_offset = await db.get_search_results(query,file_type=None,max_results=10,offset=offset) | |
for file in files: | |
results.append( | |
{ | |
"title": file['file']['file_name'], | |
"document_file_id" :file['file']['file_id'], | |
"caption" : file['file']['file_name'] or "", | |
"description": f"Size: {humanbytes(file['file']['file_size'])}\nType:{file['file']['mime_type']} ", | |
} | |
) | |
return {results,next_offset} |