Merge pull request #26 from admoya/master

fix(attributes): handle missing attributes and duplicate key
This commit is contained in:
Yordan Suarez
2022-05-18 10:35:51 -04:00
committed by GitHub
2 changed files with 16 additions and 14 deletions

View File

@@ -296,13 +296,15 @@ class FplApi(object):
): ):
dailyUsage.append( dailyUsage.append(
{ {
"usage": daily["kwhUsed"], "usage": daily.get("kwhUsed"),
"cost": daily["billingCharge"], "cost": daily.get("billingCharge"),
"date": daily["date"], "date": daily.get("date"),
"max_temperature": daily["averageHighTemperature"], "max_temperature": daily.get(
"netDeliveredKwh": daily["netDeliveredKwh"], "averageHighTemperature"
"netReceivedKwh": daily["netReceivedKwh"], ),
"readTime": daily["readTime"], "netDeliveredKwh": daily.get("netDeliveredKwh"),
"netReceivedKwh": daily.get("netReceivedKwh"),
"readTime": daily.get("readTime"),
} }
) )
# totalPowerUsage += int(daily["kwhUsed"]) # totalPowerUsage += int(daily["kwhUsed"])
@@ -310,12 +312,12 @@ class FplApi(object):
# data["total_power_usage"] = totalPowerUsage # data["total_power_usage"] = totalPowerUsage
data["daily_usage"] = dailyUsage data["daily_usage"] = dailyUsage
data["projectedKWH"] = r["CurrentUsage"]["projectedKWH"] data["projectedKWH"] = r["CurrentUsage"].get("projectedKWH")
data["dailyAverageKWH"] = r["CurrentUsage"]["dailyAverageKWH"] data["dailyAverageKWH"] = r["CurrentUsage"].get("dailyAverageKWH")
data["billToDateKWH"] = r["CurrentUsage"]["billToDateKWH"] data["billToDateKWH"] = r["CurrentUsage"].get("billToDateKWH")
data["recMtrReading"] = r["CurrentUsage"]["recMtrReading"] data["recMtrReading"] = r["CurrentUsage"].get("recMtrReading")
data["delMtrReading"] = r["CurrentUsage"]["delMtrReading"] data["delMtrReading"] = r["CurrentUsage"].get("delMtrReading")
data["billStartDate"] = r["CurrentUsage"]["billStartDate"] data["billStartDate"] = r["CurrentUsage"].get("billStartDate")
return data return data
async def __getDataFromApplianceUsage(self, account, lastBilledDate) -> dict: async def __getDataFromApplianceUsage(self, account, lastBilledDate) -> dict:

View File

@@ -29,7 +29,7 @@ class ProjectedKWHSensor(FplEntity):
class DailyAverageKWHSensor(FplEntity): class DailyAverageKWHSensor(FplEntity):
def __init__(self, coordinator, config, account): def __init__(self, coordinator, config, account):
super().__init__(coordinator, config, account, "Daily Average") super().__init__(coordinator, config, account, "Daily Average KWH")
@property @property
def state(self): def state(self):