diff --git a/soliscloud/soliscloud.py b/soliscloud/soliscloud.py
--- a/soliscloud/soliscloud.py
+++ b/soliscloud/soliscloud.py
#
@@ -229,6 +229,8 @@ class SolisCloud:
#
"batteryTodayChargeEnergyStr" : "kWh",
#
"batteryTodayDischargeEnergy" : 1,
#
"batteryTodayDischargeEnergyStr" : "kWh",
#
@@ -455,7 +457,8 @@ def extractBatteryStats(inverter, config):
#
"inverter_id" : inverter['id'],
#
"inverter_sn" : inverter['sn'],
#
"station" : inverter['stationId'],
#
- "userId" : inverter['userId']
#
+ "userId" : inverter['userId'],
#
+ "batteryType" : inverter["batteryType"].replace(" ","\\ ")
#
@@ -488,6 +491,51 @@ def extractBatteryStats(inverter, config):
#
+def extractInverterStats(inverter, config):
#
+ ''' Receive a dict of inverter detail and extract inverter details
#
+ # TODO: it's not clear whether the API will change units
#
+ # we should probably normalise our output if it does
#
+ "device_type" : "inverter",
#
+ "inverter_id" : inverter['id'],
#
+ "inverter_sn" : inverter['sn'],
#
+ "station" : inverter['stationId'],
#
+ "userId" : inverter['userId'],
#
+ "inverter_model" : inverter['model'].replace(" ","\ "),
#
+ "inverter_name" : inverter['name'].replace(" ","\ ")
#
+ "state" : int(inverter['currentState']),
#
+ "energyToday" : float(inverter['eToday']),
#
+ "energyTodayStr" : f'"{inverter["eTodayStr"]}"',
#
+ "power_ac" : float(inverter['pac']),
#
+ "power_ac_str" : f'"{inverter["pacStr"]}"',
#
+ "temperature" : float(inverter['inverterTemperature']),
#
+ "readingAge" : f"{round(time.time() - int(inverter['dataTimestamp']))}i"
#
+ lp1 = [config['measurement']]
#
+ lp1.append(f"{tag}={tags[tag]}")
#
+ lp2.append(f"{field}={fields[field]}")
#
if __name__ == "__main__":
#
@@ -538,5 +586,7 @@ if __name__ == "__main__":
#
inverter_details = soliscloud.fetchInverterDetail(inverter['id'])
#
print(inverter_details)
#
lp = extractBatteryStats(inverter_details, config)
#
+ inverter_lp = extractInverterStats(inverter_details, config)
#
+ lp_buffer.append(inverter_lp)