PyViCare 2.42.0__tar.gz → 2.43.0__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 (29) hide show
  1. {pyvicare-2.42.0 → pyvicare-2.43.0}/PKG-INFO +1 -1
  2. pyvicare-2.43.0/PyViCare/PyViCarePelletsBoiler.py +108 -0
  3. {pyvicare-2.42.0 → pyvicare-2.43.0}/pyproject.toml +1 -1
  4. pyvicare-2.42.0/PyViCare/PyViCarePelletsBoiler.py +0 -65
  5. {pyvicare-2.42.0 → pyvicare-2.43.0}/LICENSE +0 -0
  6. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/Feature.py +0 -0
  7. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCare.py +0 -0
  8. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCareAbstractOAuthManager.py +0 -0
  9. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCareBrowserOAuthManager.py +0 -0
  10. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCareCachedService.py +0 -0
  11. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCareDevice.py +0 -0
  12. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCareDeviceConfig.py +2 -2
  13. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCareElectricalEnergySystem.py +0 -0
  14. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCareFuelCell.py +0 -0
  15. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCareGateway.py +0 -0
  16. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCareGazBoiler.py +0 -0
  17. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCareHeatCurveCalculation.py +0 -0
  18. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCareHeatPump.py +0 -0
  19. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCareHeatingDevice.py +0 -0
  20. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCareHybrid.py +0 -0
  21. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCareOAuthManager.py +0 -0
  22. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCareOilBoiler.py +0 -0
  23. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCareRadiatorActuator.py +0 -0
  24. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCareRoomSensor.py +0 -0
  25. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCareService.py +0 -0
  26. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCareUtils.py +0 -0
  27. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/PyViCareVentilationDevice.py +0 -0
  28. {pyvicare-2.42.0 → pyvicare-2.43.0}/PyViCare/__init__.py +0 -0
  29. {pyvicare-2.42.0 → pyvicare-2.43.0}/README.md +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: PyViCare
3
- Version: 2.42.0
3
+ Version: 2.43.0
4
4
  Summary: Library to communicate with the Viessmann ViCare API.
5
5
  License: Apache-2.0
6
6
  Keywords: viessmann,vicare,api
@@ -0,0 +1,108 @@
1
+ from __future__ import annotations
2
+ from typing import List
3
+
4
+ from PyViCare.PyViCareHeatingDevice import (HeatingDevice, HeatingDeviceWithComponent, get_available_burners)
5
+ from PyViCare.PyViCareUtils import handleNotSupported
6
+
7
+
8
+ class PelletsBoiler(HeatingDevice):
9
+
10
+ @property
11
+ def burners(self) -> List[PelletsBurner]:
12
+ return list([self.getBurner(x) for x in self.getAvailableBurners()])
13
+
14
+ def getBurner(self, burner) -> PelletsBurner:
15
+ return PelletsBurner(self, burner)
16
+
17
+ @handleNotSupported
18
+ def getAvailableBurners(self):
19
+ return get_available_burners(self.service)
20
+
21
+ @handleNotSupported
22
+ def getBoilerTemperature(self):
23
+ return self.service.getProperty("heating.boiler.sensors.temperature.main")["properties"]["value"]["value"]
24
+
25
+ @handleNotSupported
26
+ def getAshLevel(self):
27
+ return self.service.getProperty('heating.boiler.ash.level.current')['properties']['value']['value']
28
+
29
+ @handleNotSupported
30
+ def getAirFlapsPrimaryPosition(self):
31
+ return self.service.getProperty('heating.boiler.airflaps.0.position.current')['properties']['value']['value']
32
+
33
+ @handleNotSupported
34
+ def getAirFlapsSecondaryPosition(self):
35
+ return self.service.getProperty('heating.boiler.airflaps.1.position.current')['properties']['value']['value']
36
+
37
+ @handleNotSupported
38
+ def getExhaustO2Level(self):
39
+ return self.service.getProperty('heating.flue.sensors.o2.lambda')['properties']['value']['value']
40
+
41
+ @handleNotSupported
42
+ def getBoilerCuircuitPumpCurrentLevel(self):
43
+ return self.service.getProperty('heating.boiler.pumps.circuit.power.current')['properties']['value']['value']
44
+
45
+ @handleNotSupported
46
+ def getBoilerReturnTemperature(self):
47
+ return self.service.getProperty('heating.sensors.temperature.return')['properties']['value']['value']
48
+
49
+ @handleNotSupported
50
+ def getFlueTemperature(self):
51
+ return self.service.getProperty('heating.flue.sensors.temperature.main')['properties']['value']['value']
52
+
53
+ @handleNotSupported
54
+ def getFuelNeed(self):
55
+ return self.service.getProperty('heating.configuration.fuel.need')['properties']['value']['value']
56
+
57
+ @handleNotSupported
58
+ def getFuelUnit(self) -> str:
59
+ return str(self.service.getProperty('heating.configuration.fuel.need')['properties']['value']['unit'])
60
+
61
+ @handleNotSupported
62
+ def getBoilerState(self):
63
+ return self.service.getProperty('heating.boiler.operating.phase')['properties']['value']['value']
64
+
65
+ @handleNotSupported
66
+ def getBoilerCuircuitPumpStatus(self):
67
+ return self.service.getProperty('heating.boiler.pumps.circuit')['properties']['status']['value']
68
+ @handleNotSupported
69
+ def getBufferMainTemperature(self):
70
+ return self.service.getProperty("heating.bufferCylinder.sensors.temperature.main")["properties"]['value']['value']
71
+
72
+ @handleNotSupported
73
+ def getBufferTopTemperature(self):
74
+ return self.service.getProperty("heating.bufferCylinder.sensors.temperature.top")["properties"]['value']['value']
75
+
76
+ @handleNotSupported
77
+ def getBufferMidTopTemperature(self):
78
+ return self.service.getProperty("heating.bufferCylinder.sensors.temperature.midTop")["properties"]['value']['value']
79
+
80
+ @handleNotSupported
81
+ def getBufferMiddleTemperature(self):
82
+ return self.service.getProperty("heating.bufferCylinder.sensors.temperature.middle")["properties"]['value']['value']
83
+
84
+ @handleNotSupported
85
+ def getBufferMidBottomTemperature(self):
86
+ return self.service.getProperty("heating.bufferCylinder.sensors.temperature.midBottom")["properties"]['value']['value']
87
+
88
+ @handleNotSupported
89
+ def getBufferBottomTemperature(self):
90
+ return self.service.getProperty("heating.bufferCylinder.sensors.temperature.bottom")["properties"]['value']['value']
91
+
92
+ class PelletsBurner(HeatingDeviceWithComponent):
93
+
94
+ @property
95
+ def burner(self) -> str:
96
+ return self.component
97
+
98
+ @handleNotSupported
99
+ def getActive(self) -> bool:
100
+ return bool(self.service.getProperty(f"heating.burners.{self.burner}")["properties"]["active"]["value"])
101
+
102
+ @handleNotSupported
103
+ def getHours(self) -> float:
104
+ return float(self.service.getProperty(f"heating.burners.{self.burner}.statistics")["properties"]["hours"]["value"])
105
+
106
+ @handleNotSupported
107
+ def getStarts(self) -> int:
108
+ return int(self.service.getProperty(f"heating.burners.{self.burner}.statistics")["properties"]["starts"]["value"])
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "PyViCare"
3
- version = "2.42.0"
3
+ version = "2.43.0"
4
4
  description = "Library to communicate with the Viessmann ViCare API."
5
5
  authors = [
6
6
  "Simon Gillet <mail+pyvicare@gillet.ninja>"
@@ -1,65 +0,0 @@
1
- from PyViCare.PyViCareHeatingDevice import HeatingDevice
2
- from PyViCare.PyViCareUtils import handleNotSupported
3
-
4
-
5
- class PelletsBoiler(HeatingDevice):
6
-
7
- @handleNotSupported
8
- def getActive(self):
9
- return self.service.getProperty("heating.burner")["properties"]["active"]["value"]
10
-
11
- @handleNotSupported
12
- def getBurnerModulation(self):
13
- return self.service.getProperty('heating.burner.modulation')["properties"]["value"]["value"]
14
-
15
- @handleNotSupported
16
- def getBoilerTemperature(self):
17
- return self.service.getProperty("heating.boiler.sensors.temperature.main")["properties"]["value"]["value"]
18
-
19
- @handleNotSupported
20
- def getBurnerHours(self):
21
- return self.service.getProperty('heating.burner.statistics')['properties']['hours']['value']
22
-
23
- @handleNotSupported
24
- def getBurnerStarts(self):
25
- return self.service.getProperty('heating.burner.statistics')['properties']['starts']['value']
26
-
27
- @handleNotSupported
28
- def getAshLevel(self):
29
- return self.service.getProperty('heating.boiler.ash.level.current')['properties']['value']['value']
30
-
31
- @handleNotSupported
32
- def getAirFlapsPrimaryPosition(self):
33
- return self.service.getProperty('heating.boiler.airflaps.0.position.current')['properties']['value']['value']
34
-
35
- @handleNotSupported
36
- def getAirFlapsSecondaryPosition(self):
37
- return self.service.getProperty('heating.boiler.airflaps.0.position.current')['properties']['value']['value']
38
-
39
- @handleNotSupported
40
- def getExhaustO2Level(self):
41
- return self.service.getProperty('heating.flue.sensors.o2.lambda')['properties']['value']['value']
42
-
43
- @handleNotSupported
44
- def getBoilerCuircuitPumpCurrentLevel(self):
45
- return self.service.getProperty('heating.boiler.pumps.circuit.power.current')['properties']['value']['value']
46
-
47
- @handleNotSupported
48
- def getBoilerReturnTemperature(self):
49
- return self.service.getProperty('heating.sensors.temperature.return')['properties']['value']['value']
50
-
51
- @handleNotSupported
52
- def getFlueTemperature(self):
53
- return self.service.getProperty('heating.flue.sensors.temperature.main')['properties']['value']['value']
54
-
55
- @handleNotSupported
56
- def getFuelNeed(self):
57
- return self.service.getProperty('heating.configuration.fuel.need')['properties']['value']['value']
58
-
59
- @handleNotSupported
60
- def getBoilerState(self):
61
- return self.service.getProperty('heating.boiler.operating.phase')['properties']['value']['value']
62
-
63
- @handleNotSupported
64
- def getBoilerCuircuitPumpStatus(self):
65
- return self.service.getProperty('heating.boiler.pumps.circuit')['properties']['status']['value']
File without changes
File without changes
@@ -78,10 +78,10 @@ class PyViCareDeviceConfig:
78
78
  def asAutoDetectDevice(self):
79
79
  device_types = [
80
80
  (self.asFuelCell, r"Vitovalor|Vitocharge|Vitoblo", []),
81
+ (self.asPelletsBoiler, r"Vitoligno|Ecotronic|VBC550P", []),
82
+ (self.asOilBoiler, r"Vitoladens|Vitoradial|Vitorondens|VPlusH|V200KW2_6", []),
81
83
  (self.asGazBoiler, r"Vitodens|VScotH|Vitocrossal|VDensH|Vitopend|VPendH|OT_Heating_System", ["type:boiler"]),
82
84
  (self.asHeatPump, r"Vitocal|VBC70|V200WO1A|CU401B", ["type:heatpump"]),
83
- (self.asOilBoiler, r"Vitoladens|Vitoradial|Vitorondens|VPlusH|V200KW2_6", []),
84
- (self.asPelletsBoiler, r"Vitoligno|Ecotronic|VBC550P", []),
85
85
  (self.asElectricalEnergySystem, r"E3_VitoCharge_03", ["type:ees"]), # ees, it this a typo?
86
86
  (self.asElectricalEnergySystem, r"E3_VitoCharge_05", ["type:ess"]),
87
87
  (self.asVentilation, r"E3_ViAir", ["type:ventilation"]),
File without changes