EspHome
This commit is contained in:
47
synology_api/usb_copy.py
Normal file
47
synology_api/usb_copy.py
Normal file
@@ -0,0 +1,47 @@
|
||||
from __future__ import annotations
|
||||
from typing import Optional
|
||||
from . import base_api
|
||||
|
||||
|
||||
class USBCopy(base_api.BaseApi):
|
||||
|
||||
def usb_copy_info(self, id: int = 1) -> dict[str, object] | str:
|
||||
api_name = 'SYNO.USBCopy'
|
||||
info = self.gen_list[api_name]
|
||||
api_path = info['path']
|
||||
req_param = {'version': info['maxVersion'], 'method': 'get', 'id': id}
|
||||
|
||||
return self.request_data(api_name, api_path, req_param)
|
||||
|
||||
def toggle_usb_copy(self, enable: bool = True, id: int = 1) -> dict[str, object] | str:
|
||||
api_name = 'SYNO.USBCopy'
|
||||
info = self.gen_list[api_name]
|
||||
api_path = info['path']
|
||||
|
||||
if enable:
|
||||
enable = 'enable'
|
||||
elif not enable:
|
||||
enable = 'disable'
|
||||
else:
|
||||
return 'enable must be True or False'
|
||||
|
||||
req_param = {'version': info['maxVersion'], 'method': enable, 'id': id}
|
||||
|
||||
return self.request_data(api_name, api_path, req_param)
|
||||
|
||||
def logs(self, offset: int = 0, limit: int = 200) -> dict[str, object] | str:
|
||||
api_name = 'SYNO.USBCopy'
|
||||
info = self.gen_list[api_name]
|
||||
api_path = info['path']
|
||||
req_param = {'version': info['maxVersion'], 'method': 'get_log_list', 'offset': offset, 'limit': limit,
|
||||
'log_filter': '{"log_desc_id_list":[0,1,2,3,10,11,100,101,102,103,104,105,1000]}'}
|
||||
|
||||
return self.request_data(api_name, api_path, req_param)
|
||||
|
||||
def global_settings(self) -> dict[str, object] | str:
|
||||
api_name = 'SYNO.USBCopy'
|
||||
info = self.gen_list[api_name]
|
||||
api_path = info['path']
|
||||
req_param = {'version': info['maxVersion'], 'method': 'get_global_setting'}
|
||||
|
||||
return self.request_data(api_name, api_path, req_param)
|
||||
Reference in New Issue
Block a user