From 8b8fda6102c3059c5b9fd5a2198d4d5b1db13b75 Mon Sep 17 00:00:00 2001 From: Clinton Hall Date: Thu, 12 Aug 2021 22:14:00 +1200 Subject: [PATCH] Syno api version detection (#1841) * Get max api version for login. #1840 --- libs/custom/syno/auth.py | 5 +++-- libs/custom/syno/downloadstation.py | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/libs/custom/syno/auth.py b/libs/custom/syno/auth.py index fb3a4927..2c089a77 100644 --- a/libs/custom/syno/auth.py +++ b/libs/custom/syno/auth.py @@ -15,8 +15,9 @@ class Authentication: self.app_api_list = {} def login(self, application): + self.get_api_list('SYNO.API.Auth') login_api = 'auth.cgi?api=SYNO.API.Auth' - param = {'version': '2', 'method': 'login', 'account': self._username, + param = {'version': self.app_api_list['SYNO.API.Auth']['maxVersion'], 'method': 'login', 'account': self._username, 'passwd': self._password, 'session': application, 'format': 'cookie'} if not self._session_expire: @@ -31,7 +32,7 @@ class Authentication: def logout(self, application): logout_api = 'auth.cgi?api=SYNO.API.Auth' - param = {'version': '2', 'method': 'logout', 'session': application} + param = {'version': self.app_api_list['SYNO.API.Auth']['maxVersion'], 'method': 'logout', 'session': application} response = requests.get(self._base_url + logout_api, param) if response.json()['success'] is True: diff --git a/libs/custom/syno/downloadstation.py b/libs/custom/syno/downloadstation.py index b7021368..1cf92268 100644 --- a/libs/custom/syno/downloadstation.py +++ b/libs/custom/syno/downloadstation.py @@ -12,7 +12,7 @@ class DownloadStation: self.session.get_api_list('DownloadStation') self.request_data = self.session.request_data - self.download_list = self.session.app_api_list + self.download_list = self.session.full_api_list self._sid = self.session.sid self.base_url = self.session.base_url