Compare commits
	
		
			3 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 84000fb76c | |||
| 26528a7310 | |||
| 11988c73a6 | 
| @ -302,8 +302,6 @@ class HonAppliance: | |||||||
|             "statistics": self.statistics, |             "statistics": self.statistics, | ||||||
|             "additional_data": self._additional_data, |             "additional_data": self._additional_data, | ||||||
|         } |         } | ||||||
|         if self._extra and data.get("attributes"): |  | ||||||
|             data = self._extra.data(data) |  | ||||||
|         if command_only: |         if command_only: | ||||||
|             data.pop("attributes") |             data.pop("attributes") | ||||||
|             data.pop("appliance") |             data.pop("appliance") | ||||||
|  | |||||||
							
								
								
									
										5
									
								
								pyhon/appliances/wc.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								pyhon/appliances/wc.py
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,5 @@ | |||||||
|  | from pyhon.appliances.base import ApplianceBase | ||||||
|  |  | ||||||
|  |  | ||||||
|  | class Appliance(ApplianceBase): | ||||||
|  |     pass | ||||||
| @ -2,6 +2,7 @@ import logging | |||||||
| from typing import Optional, Dict, Any, List, TYPE_CHECKING, Union | from typing import Optional, Dict, Any, List, TYPE_CHECKING, Union | ||||||
|  |  | ||||||
| from pyhon import exceptions | from pyhon import exceptions | ||||||
|  | from pyhon.exceptions import ApiError | ||||||
| from pyhon.parameter.base import HonParameter | from pyhon.parameter.base import HonParameter | ||||||
| from pyhon.parameter.enum import HonParameterEnum | from pyhon.parameter.enum import HonParameterEnum | ||||||
| from pyhon.parameter.fixed import HonParameterFixed | from pyhon.parameter.fixed import HonParameterFixed | ||||||
| @ -110,10 +111,14 @@ class HonCommand: | |||||||
|     async def send(self) -> bool: |     async def send(self) -> bool: | ||||||
|         params = self.parameter_groups.get("parameters", {}) |         params = self.parameter_groups.get("parameters", {}) | ||||||
|         ancillary_params = self.parameter_groups.get("ancillaryParameters", {}) |         ancillary_params = self.parameter_groups.get("ancillaryParameters", {}) | ||||||
|  |         ancillary_params.pop("programRules", None) | ||||||
|         self.appliance.sync_to_params(self.name) |         self.appliance.sync_to_params(self.name) | ||||||
|         return await self.api.send_command( |         result = await self.api.send_command( | ||||||
|             self._appliance, self._name, params, ancillary_params |             self._appliance, self._name, params, ancillary_params | ||||||
|         ) |         ) | ||||||
|  |         if not result: | ||||||
|  |             raise ApiError("Can't send command") | ||||||
|  |         return result | ||||||
|  |  | ||||||
|     @property |     @property | ||||||
|     def categories(self) -> Dict[str, "HonCommand"]: |     def categories(self) -> Dict[str, "HonCommand"]: | ||||||
|  | |||||||
| @ -1,6 +1,7 @@ | |||||||
| import json | import json | ||||||
| import logging | import logging | ||||||
| from datetime import datetime | from datetime import datetime | ||||||
|  | from pprint import pformat | ||||||
| from typing import Dict, Optional | from typing import Dict, Optional | ||||||
|  |  | ||||||
| from aiohttp import ClientSession | from aiohttp import ClientSession | ||||||
| @ -188,6 +189,7 @@ class HonAPI: | |||||||
|             if json_data.get("payload", {}).get("resultCode") == "0": |             if json_data.get("payload", {}).get("resultCode") == "0": | ||||||
|                 return True |                 return True | ||||||
|             _LOGGER.error(await response.text()) |             _LOGGER.error(await response.text()) | ||||||
|  |             _LOGGER.error("%s - Payload:\n%s", url, pformat(data)) | ||||||
|         return False |         return False | ||||||
|  |  | ||||||
|     async def appliance_configuration(self) -> Dict: |     async def appliance_configuration(self) -> Dict: | ||||||
|  | |||||||
| @ -12,3 +12,7 @@ class NoSessionException(Exception): | |||||||
|  |  | ||||||
| class NoAuthenticationException(Exception): | class NoAuthenticationException(Exception): | ||||||
|     pass |     pass | ||||||
|  |  | ||||||
|  |  | ||||||
|  | class ApiError(Exception): | ||||||
|  |     pass | ||||||
|  | |||||||
| @ -28,8 +28,8 @@ class HonParameter: | |||||||
|         self.check_trigger(value) |         self.check_trigger(value) | ||||||
|  |  | ||||||
|     @property |     @property | ||||||
|     def intern_value(self) -> str | float: |     def intern_value(self) -> str: | ||||||
|         return str(self._value) if self._value is not None else "" |         return str(self.value) | ||||||
|  |  | ||||||
|     @property |     @property | ||||||
|     def values(self) -> List[str]: |     def values(self) -> List[str]: | ||||||
|  | |||||||
| @ -27,6 +27,10 @@ class HonParameterEnum(HonParameter): | |||||||
|     def values(self, values) -> None: |     def values(self, values) -> None: | ||||||
|         self._values = values |         self._values = values | ||||||
|  |  | ||||||
|  |     @property | ||||||
|  |     def intern_value(self) -> str: | ||||||
|  |         return str(self._value) if self._value is not None else str(self.values[0]) | ||||||
|  |  | ||||||
|     @property |     @property | ||||||
|     def value(self) -> str | float: |     def value(self) -> str | float: | ||||||
|         return clean_value(self._value) if self._value is not None else self.values[0] |         return clean_value(self._value) if self._value is not None else self.values[0] | ||||||
|  | |||||||
							
								
								
									
										2
									
								
								setup.py
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								setup.py
									
									
									
									
									
								
							| @ -7,7 +7,7 @@ with open("README.md", "r") as f: | |||||||
|  |  | ||||||
| setup( | setup( | ||||||
|     name="pyhOn", |     name="pyhOn", | ||||||
|     version="0.12.2", |     version="0.12.4", | ||||||
|     author="Andre Basche", |     author="Andre Basche", | ||||||
|     description="Control hOn devices with python", |     description="Control hOn devices with python", | ||||||
|     long_description=long_description, |     long_description=long_description, | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user
	