Fix decora_wifi residences (#17228)
* Fix decora multiple residences * Fix typo * Update decora_wifi.py
This commit is contained in:
parent
7b3b7d2eec
commit
2f07e92cc2
1 changed files with 9 additions and 2 deletions
|
@ -40,6 +40,7 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
|
|||
from decora_wifi import DecoraWiFiSession
|
||||
from decora_wifi.models.person import Person
|
||||
from decora_wifi.models.residential_account import ResidentialAccount
|
||||
from decora_wifi.models.residence import Residence
|
||||
|
||||
email = config.get(CONF_USERNAME)
|
||||
password = config.get(CONF_PASSWORD)
|
||||
|
@ -60,10 +61,16 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
|
|||
perms = session.user.get_residential_permissions()
|
||||
all_switches = []
|
||||
for permission in perms:
|
||||
acct = ResidentialAccount(session, permission.residentialAccountId)
|
||||
if permission.residentialAccountId is not None:
|
||||
acct = ResidentialAccount(
|
||||
session, permission.residentialAccountId)
|
||||
for residence in acct.get_residences():
|
||||
for switch in residence.get_iot_switches():
|
||||
all_switches.append(switch)
|
||||
elif permission.residenceId is not None:
|
||||
residence = Residence(session, permission.residenceId)
|
||||
for switch in residence.get_iot_switches():
|
||||
all_switches.append(switch)
|
||||
|
||||
add_entities(DecoraWifiLight(sw) for sw in all_switches)
|
||||
except ValueError:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue