Mbonea's picture
added streaming
07fd3f6
raw
history blame
1.08 kB
from telethon import TelegramClient
from fastapi import Request
class Sanity:
client: TelegramClient
media = None
chat_id: int = -1001925049183
file_id: int
req: Request
limit: int
offset: int
async def file_exists(self):
try:
self.media = await self.client.get_messages(
entity=self.chat_id, ids=self.file_id
)
return self.media
except Exception as e:
pass
def check_ranges(self):
range_header = self.req.headers.get("Range")
if range_header:
offset = range_header.split("=")[1].split("-")[0] or 0
limit = range_header.split("=")[1].split("-")[1] or self.media.file.size
else:
offset = 0
limit = self.media.file.size
self.offset = int(offset)
self.limit = int(limit)
if (
(limit > self.media.file.size)
or (self.offset < 0)
or (self.limit < self.offset)
):
return False
else:
return True