diff --git a/davtelepot/__init__.py b/davtelepot/__init__.py index 4894770..e8ca8b4 100644 --- a/davtelepot/__init__.py +++ b/davtelepot/__init__.py @@ -11,7 +11,7 @@ __author__ = "Davide Testa" __email__ = "davide@davte.it" __credits__ = ["Marco Origlia", "Nick Lee @Nickoala"] __license__ = "GNU General Public License v3.0" -__version__ = "2.9.10" +__version__ = "2.9.11" __maintainer__ = "Davide Testa" __contact__ = "t.me/davte" diff --git a/davtelepot/api.py b/davtelepot/api.py index 60a16c2..b78dfdb 100644 --- a/davtelepot/api.py +++ b/davtelepot/api.py @@ -358,7 +358,7 @@ class TelegramBot: All mirrored methods are camelCase. """ _loop = None - _api_url = "https://api.telegram.org/bot" + _api_url = "https://api.telegram.org" app = aiohttp.web.Application() sessions_timeouts = { diff --git a/davtelepot/bot.py b/davtelepot/bot.py index 6242409..1348d57 100644 --- a/davtelepot/bot.py +++ b/davtelepot/bot.py @@ -2138,26 +2138,29 @@ class Bot(TelegramBot, ObjectWithDatabase, MultiLanguageObject): if file is None or isinstance(file, Exception): logging.error(f"{file}") return file - file_bytes = await async_get( - url=( - f"{self.api_url}/file/" - f"bot{self.token}/" - f"{file['file_path']}" - ), - mode='raw' - ) - path = path or self.path - if file_name is None: - file_name = get_secure_key(length=10) - file_complete_path = os.path.join(path, file_name) - while os.path.exists(file_complete_path): - file_complete_path = file_complete_path + '1' - try: - with open(file_complete_path, 'wb') as local_file: - local_file.write(file_bytes) - except Exception as e: - logging.error(f"File download failed due to {e}") - return e + if self.api_url == 'https://api.telegram.org': + file_bytes = await async_get( + url=( + f"{self.api_url}/file/" + f"bot{self.token}/" + f"{file['file_path']}" + ), + mode='raw' + ) + path = path or self.path + if file_name is None: + file_name = get_secure_key(length=10) + file_complete_path = os.path.join(path, file_name) + while os.path.exists(file_complete_path): + file_complete_path = file_complete_path + '1' + try: + with open(file_complete_path, 'wb') as local_file: + local_file.write(file_bytes) + except Exception as e: + logging.error(f"File download failed due to {e}") + return e + else: + file_complete_path = file['file_path'] return dict(file_id=file_id, file_name=file_name, path=path,