pyenphase 2.2.1__tar.gz → 2.2.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. {pyenphase-2.2.1 → pyenphase-2.2.2}/PKG-INFO +1 -1
  2. {pyenphase-2.2.1 → pyenphase-2.2.2}/pyproject.toml +2 -2
  3. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/updaters/device_data_inverters.py +22 -0
  4. {pyenphase-2.2.1 → pyenphase-2.2.2}/LICENSE +0 -0
  5. {pyenphase-2.2.1 → pyenphase-2.2.2}/README.md +0 -0
  6. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/__init__.py +0 -0
  7. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/auth.py +0 -0
  8. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/const.py +0 -0
  9. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/envoy.py +0 -0
  10. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/exceptions.py +0 -0
  11. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/firmware.py +0 -0
  12. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/json.py +0 -0
  13. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/models/__init__.py +0 -0
  14. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/models/acb.py +0 -0
  15. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/models/common.py +0 -0
  16. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/models/dry_contacts.py +0 -0
  17. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/models/encharge.py +0 -0
  18. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/models/enpower.py +0 -0
  19. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/models/envoy.py +0 -0
  20. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/models/home.py +0 -0
  21. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/models/inverter.py +0 -0
  22. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/models/meters.py +0 -0
  23. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/models/storage_settings.py +0 -0
  24. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/models/system_consumption.py +0 -0
  25. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/models/system_production.py +0 -0
  26. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/models/tariff.py +0 -0
  27. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/py.typed +0 -0
  28. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/ssl.py +0 -0
  29. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/updaters/__init__.py +0 -0
  30. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/updaters/api_v1_production.py +0 -0
  31. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/updaters/api_v1_production_inverters.py +0 -0
  32. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/updaters/base.py +0 -0
  33. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/updaters/ensemble.py +0 -0
  34. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/updaters/generator.py +0 -0
  35. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/updaters/meters.py +0 -0
  36. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/updaters/production.py +0 -0
  37. {pyenphase-2.2.1 → pyenphase-2.2.2}/src/pyenphase/updaters/tariff.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pyenphase
3
- Version: 2.2.1
3
+ Version: 2.2.2
4
4
  Summary: Library to control enphase envoy
5
5
  License: MIT
6
6
  Author: pyenphase
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "pyenphase"
3
- version = "2.2.1"
3
+ version = "2.2.2"
4
4
  description = "Library to control enphase envoy"
5
5
  authors = [{ name = "pyenphase", email = "cgarwood@gmail.com" }]
6
6
  license = "MIT"
@@ -10,7 +10,7 @@ dynamic = ["classifiers", "dependencies"]
10
10
 
11
11
  [tool.poetry]
12
12
  name = "pyenphase"
13
- version = "2.2.1"
13
+ version = "2.2.2"
14
14
  description = "Library to control enphase envoy"
15
15
  authors = ["pyenphase <cgarwood@gmail.com>"]
16
16
  classifiers = [
@@ -45,6 +45,28 @@ class EnvoyDeviceDataInvertersUpdater(EnvoyUpdater):
45
45
  e,
46
46
  )
47
47
  return None
48
+ # make sure deviceCount did not reach deviceDataLimit,
49
+ # if more inverters are actually installed they will not be included
50
+ # if so fall back to inverter production page
51
+ try:
52
+ if inverters_data["deviceCount"] >= inverters_data["deviceDataLimit"]:
53
+ _LOGGER.debug(
54
+ "Disabling inverters device data endpoint "
55
+ " as deviceCount reached deviceDataLimit %s: %s - %s",
56
+ URL_DEVICE_DATA,
57
+ inverters_data["deviceCount"],
58
+ inverters_data["deviceDataLimit"],
59
+ )
60
+ return None
61
+ except KeyError as e:
62
+ # if doesn't have these keys, fall back to inverter production
63
+ _LOGGER.debug(
64
+ "Disabling inverters device data endpoint "
65
+ " as not all data fields are present %s: %s",
66
+ URL_DEVICE_DATA,
67
+ e,
68
+ )
69
+ return None
48
70
 
49
71
  # verify minimal data set to replace inverter production data is present
50
72
  try:
File without changes
File without changes