Home Assistant Unofficial Reference 2024.12.1
homeassistant.components.synology_dsm.common.SynoApi Class Reference

Public Member Functions

None __init__ (self, HomeAssistant hass, ConfigEntry entry)
 
None async_login (self)
 
None async_reboot (self)
 
None async_setup (self)
 
None async_shutdown (self)
 
None async_unload (self)
 
None async_update (self)
 
Callable[[], None] subscribe (self, str api_key, str unique_id)
 

Public Attributes

 config_url
 
 dsm
 
 information
 
 network
 
 photos
 
 security
 
 storage
 
 surveillance_station
 
 system
 
 upgrade
 
 utilisation
 

Private Member Functions

None _fetch_device_configuration (self)
 
None _setup_api_requests (self)
 
None _syno_api_executer (self, Callable api_call)
 
None _update (self)
 

Private Attributes

 _entry
 
 _hass
 
 _login_future
 
 _with_information
 
 _with_photos
 
 _with_security
 
 _with_storage
 
 _with_surveillance_station
 
 _with_system
 
 _with_upgrade
 
 _with_utilisation
 

Detailed Description

Class to interface with Synology DSM API.

Definition at line 50 of file common.py.

Constructor & Destructor Documentation

◆ __init__()

None homeassistant.components.synology_dsm.common.SynoApi.__init__ (   self,
HomeAssistant  hass,
ConfigEntry  entry 
)
Initialize the API wrapper class.

Definition at line 55 of file common.py.

Member Function Documentation

◆ _fetch_device_configuration()

None homeassistant.components.synology_dsm.common.SynoApi._fetch_device_configuration (   self)
private
Fetch initial device config.

Definition at line 269 of file common.py.

◆ _setup_api_requests()

None homeassistant.components.synology_dsm.common.SynoApi._setup_api_requests (   self)
private
Determine if we should fetch each API, if one entity needs it.

Definition at line 190 of file common.py.

◆ _syno_api_executer()

None homeassistant.components.synology_dsm.common.SynoApi._syno_api_executer (   self,
Callable  api_call 
)
private
Synology api call wrapper.

Definition at line 308 of file common.py.

◆ _update()

None homeassistant.components.synology_dsm.common.SynoApi._update (   self)
private
Update function for updating API information.

Definition at line 338 of file common.py.

◆ async_login()

None homeassistant.components.synology_dsm.common.SynoApi.async_login (   self)
Login to the Synology DSM API.

This function will only login once if called multiple times
by multiple different callers.

If a login is already in progress, the function will await the
login to complete before returning.

Definition at line 88 of file common.py.

◆ async_reboot()

None homeassistant.components.synology_dsm.common.SynoApi.async_reboot (   self)
Reboot NAS.

Definition at line 318 of file common.py.

◆ async_setup()

None homeassistant.components.synology_dsm.common.SynoApi.async_setup (   self)
Start interacting with the NAS.

Definition at line 116 of file common.py.

◆ async_shutdown()

None homeassistant.components.synology_dsm.common.SynoApi.async_shutdown (   self)
Shutdown NAS.

Definition at line 323 of file common.py.

◆ async_unload()

None homeassistant.components.synology_dsm.common.SynoApi.async_unload (   self)
Stop interacting with the NAS and prepare for removal from hass.

Definition at line 328 of file common.py.

◆ async_update()

None homeassistant.components.synology_dsm.common.SynoApi.async_update (   self)
Update function for updating API information.

Definition at line 334 of file common.py.

◆ subscribe()

Callable[[], None] homeassistant.components.synology_dsm.common.SynoApi.subscribe (   self,
str  api_key,
str  unique_id 
)
Subscribe an entity to API fetches.

Definition at line 173 of file common.py.

Member Data Documentation

◆ _entry

homeassistant.components.synology_dsm.common.SynoApi._entry
private

Definition at line 58 of file common.py.

◆ _hass

homeassistant.components.synology_dsm.common.SynoApi._hass
private

Definition at line 57 of file common.py.

◆ _login_future

homeassistant.components.synology_dsm.common.SynoApi._login_future
private

Definition at line 100 of file common.py.

◆ _with_information

homeassistant.components.synology_dsm.common.SynoApi._with_information
private

Definition at line 77 of file common.py.

◆ _with_photos

homeassistant.components.synology_dsm.common.SynoApi._with_photos
private

Definition at line 80 of file common.py.

◆ _with_security

homeassistant.components.synology_dsm.common.SynoApi._with_security
private

Definition at line 78 of file common.py.

◆ _with_storage

homeassistant.components.synology_dsm.common.SynoApi._with_storage
private

Definition at line 79 of file common.py.

◆ _with_surveillance_station

homeassistant.components.synology_dsm.common.SynoApi._with_surveillance_station
private

Definition at line 81 of file common.py.

◆ _with_system

homeassistant.components.synology_dsm.common.SynoApi._with_system
private

Definition at line 82 of file common.py.

◆ _with_upgrade

homeassistant.components.synology_dsm.common.SynoApi._with_upgrade
private

Definition at line 83 of file common.py.

◆ _with_utilisation

homeassistant.components.synology_dsm.common.SynoApi._with_utilisation
private

Definition at line 84 of file common.py.

◆ config_url

homeassistant.components.synology_dsm.common.SynoApi.config_url

Definition at line 60 of file common.py.

◆ dsm

homeassistant.components.synology_dsm.common.SynoApi.dsm

Definition at line 119 of file common.py.

◆ information

homeassistant.components.synology_dsm.common.SynoApi.information

Definition at line 271 of file common.py.

◆ network

homeassistant.components.synology_dsm.common.SynoApi.network

Definition at line 272 of file common.py.

◆ photos

homeassistant.components.synology_dsm.common.SynoApi.photos

Definition at line 234 of file common.py.

◆ security

homeassistant.components.synology_dsm.common.SynoApi.security

Definition at line 226 of file common.py.

◆ storage

homeassistant.components.synology_dsm.common.SynoApi.storage

Definition at line 242 of file common.py.

◆ surveillance_station

homeassistant.components.synology_dsm.common.SynoApi.surveillance_station

Definition at line 306 of file common.py.

◆ system

homeassistant.components.synology_dsm.common.SynoApi.system

Definition at line 250 of file common.py.

◆ upgrade

homeassistant.components.synology_dsm.common.SynoApi.upgrade

Definition at line 258 of file common.py.

◆ utilisation

homeassistant.components.synology_dsm.common.SynoApi.utilisation

Definition at line 267 of file common.py.


The documentation for this class was generated from the following file: