Teemu R. 
							
						 
					 
					
						
						
							
						
						5cde7cba27 
					 
					
						
						
							
							Add S200D button fixtures ( #1161 )  
						
						... 
						
						
						
						Co-authored-by: Steven B <51370195+sdb9696@users.noreply.github.com > 
						
						
					 
					
						2024-10-29 09:37:34 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						4aec9d302f 
					 
					
						
						
							
							Allow enabling experimental devices from environment variable ( #1194 )  
						
						
						
						
					 
					
						2024-10-29 09:30:30 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						ad6472c05d 
					 
					
						
						
							
							Add H200(EU) fw 1.3.2 fixture ( #1204 )  
						
						
						
						
					 
					
						2024-10-29 09:18:17 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						fdadeebaa9 
					 
					
						
						
							
							Add S200B(EU) fw 1.11.0 fixture ( #1205 )  
						
						... 
						
						
						
						Adds a note about button presses not being supported. 
						
						
					 
					
						2024-10-29 09:58:47 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						e7f921299a 
					 
					
						
						
							
							Fix smartcamera childdevice module ( #1206 )  
						
						... 
						
						
						
						Unlike most `smartcamera` queries, the child info query request and response have
different section names, i.e. `controlChild` and `child_device_list` respectively. 
						
						
					 
					
						2024-10-29 07:11:31 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						440b2d153b 
					 
					
						
						
							
							Fix SslAesTransport default login and add tests ( #1202 )  
						
						... 
						
						
						
						Co-authored-by: Teemu R. <tpr@iki.fi > 
						
						
					 
					
						2024-10-28 16:36:34 +00:00 
						 
				 
			
				
					
						
							
							
								Teemu R. 
							
						 
					 
					
						
						
							
						
						0287606235 
					 
					
						
						
							
							Add TC65 fixture ( #1200 )  
						
						
						
						
					 
					
						2024-10-28 13:47:24 +01:00 
						 
				 
			
				
					
						
							
							
								Fulch36 
							
						 
					 
					
						
						
							
						
						c051e75d1d 
					 
					
						
						
							
							Add P304M(UK) test fixture ( #1185 )  
						
						... 
						
						
						
						P304M supports energy monitoring on child SMART devices. 
						
						
					 
					
						2024-10-27 12:15:13 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						5161115621 
					 
					
						
						
							
							Update SMART test framework to use fake child protocols ( #1199 )  
						
						
						
						
					 
					
						2024-10-27 12:08:02 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						88b7951fee 
					 
					
						
						
							
							Allow passing an aiohttp client session during discover try_connect_all ( #1198 )  
						
						
						
						
					 
					
						2024-10-25 19:43:37 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						7eb8d45b6e 
					 
					
						
						
							
							Try default logon credentials in SslAesTransport ( #1195 )  
						
						... 
						
						
						
						Also ensure `AuthenticationErrors` are raised during handshake1. 
						
						
					 
					
						2024-10-25 19:27:40 +01:00 
						 
				 
			
				
					
						
							
							
								Fulch36 
							
						 
					 
					
						
						
							
						
						8b95b7d557 
					 
					
						
						
							
							Fallback to get_current_power if get_energy_usage does not provide current_power ( #1186 )  
						
						
						
						
					 
					
						2024-10-25 19:24:43 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						1e0ca799bc 
					 
					
						
						
							
							Add stream_rtsp_url to camera module ( #1197 )  
						
						
						
						
					 
					
						2024-10-25 18:30:21 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						91e219f467 
					 
					
						
						
							
							Fix device_config serialisation of https value ( #1196 )  
						
						
						
						
					 
					
						2024-10-25 18:04:43 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						e3610cf37e 
					 
					
						
						
							
							Add Time module to SmartCamera devices ( #1182 )  
						
						
						
						
					 
					
						2024-10-24 19:11:21 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						28361c1727 
					 
					
						
						
							
							Add core device, child and camera modules to smartcamera ( #1193 )  
						
						... 
						
						
						
						Co-authored-by: Teemu R. <tpr@iki.fi > 
						
						
					 
					
						2024-10-24 17:22:45 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						8ee8c17bdc 
					 
					
						
						
							
							Update smartcamera to support single get/set/do requests ( #1187 )  
						
						... 
						
						
						
						Not supported by H200 hub 
						
						
					 
					
						2024-10-24 13:11:28 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						c839aaa1dd 
					 
					
						
						
							
							Add test framework for smartcamera ( #1192 )  
						
						
						
						
					 
					
						2024-10-24 09:36:18 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						51958d8078 
					 
					
						
						
							
							Allow deriving from SmartModule without being registered ( #1189 )  
						
						
						
						
					 
					
						2024-10-23 21:42:01 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						a88b677776 
					 
					
						
						
							
							Combine smartcamera error codes into SmartErrorCode ( #1190 )  
						
						... 
						
						
						
						Having these in a seperate place complicates the code unnecessarily. 
						
						
					 
					
						2024-10-23 20:07:32 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						a0f3f016a2 
					 
					
						
						
							
							Rename experimental fixtures folder to smartcamera ( #1191 )  
						
						
						
						
					 
					
						2024-10-23 19:26:11 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						cd0a74ca96 
					 
					
						
						
							
							Improve supported module checks for hub children ( #1188 )  
						
						... 
						
						
						
						No devices in `fixtures/smart/child` support the `get_device_time` or
`get_device_usage` methods so this PR tests for whether the device is a
hub child and marks those modules/methods as not supported. This
prevents features being erroneously created on child devices.
It also moves the logic for getting the time from the parent module
behind getting it from the child module which was masking the creation
of these unsupported modules. 
						
						
					 
					
						2024-10-23 17:17:27 +02:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						048c84d72c 
					 
					
						
						
							
							Add https parameter to device class factory ( #1184 )  
						
						... 
						
						
						
						`SMART.TAPOHUB` resolves to different device classes based on the https value 
						
						
					 
					
						2024-10-22 18:09:35 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						3c865b5fb6 
					 
					
						
						
							
							Add try_connect_all to allow initialisation without udp broadcast ( #1171 )  
						
						... 
						
						
						
						- Try all valid combinations of protocol/transport/device class and attempt to connect. 
- Add cli command `discover config` to return the connection options after connecting via `try_connect_all`.
- The cli command does not return the actual device for processing as this is not a recommended way to regularly connect to devices. 
						
						
					 
					
						2024-10-22 14:33:46 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						852116795c 
					 
					
						
						
							
							Add discovery list command to cli ( #1183 )  
						
						... 
						
						
						
						Report discovered devices in a concise table format. 
						
						
					 
					
						2024-10-22 12:15:08 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						53fafc3994 
					 
					
						
						
							
							Add T110(US), T310(US) and T315(US) sensor fixtures ( #1179 )  
						
						... 
						
						
						
						Many thanks to @SirWaddles for the fixtures! 
						
						
					 
					
						2024-10-18 16:05:53 +02:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						d5450d89ff 
					 
					
						
						
							
							Add H200 experimental fixture ( #1180 )  
						
						
						
						
					 
					
						2024-10-18 14:02:08 +01:00 
						 
				 
			
				
					
						
							
							
								Teemu R. 
							
						 
					 
					
						
						
							
						
						6ba7c4ac05 
					 
					
						
						
							
							Convert fixtures to use unix newlines ( #1177 )  
						
						... 
						
						
						
						Also, add a .gitattributes entry to let git handle this automatically
for json files 
						
						
					 
					
						2024-10-18 14:00:23 +02:00 
						 
				 
			
				
					
						
							
							
								Teemu R. 
							
						 
					 
					
						
						
							
						
						8a17752ae2 
					 
					
						
						
							
							Add waterleak alert timestamp ( #1162 )  
						
						... 
						
						
						
						The T300 reports the timestamp of the last alarm, this exposes it to
consumers. 
						
						
					 
					
						2024-10-18 13:18:12 +02:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						acd0202cab 
					 
					
						
						
							
							Update dump_devinfo for smart camera protocol ( #1169 )  
						
						... 
						
						
						
						Introduces the child camera protocol wrapper, required to get the child device info with the new protocol. 
						
						
					 
					
						2024-10-18 12:06:22 +01:00 
						 
				 
			
				
					
						
							
							
								Teemu R. 
							
						 
					 
					
						
						
							
						
						486984fff8 
					 
					
						
						
							
							Add motion sensor to known categories ( #1176 )  
						
						... 
						
						
						
						Also, improve device type warning on unknown devices 
						
						
					 
					
						2024-10-18 12:31:52 +02:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						2dd621675a 
					 
					
						
						
							
							Drop urllib3 dependency and create ssl context in executor thread ( #1175 )  
						
						
						
						
					 
					
						2024-10-18 11:40:17 +02:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						c6f2d89d44 
					 
					
						
						
							
							Expose smart child device map as a class constant ( #1173 )  
						
						... 
						
						
						
						To facilitate distinguishing between smart and smart camera child devices. 
						
						
					 
					
						2024-10-18 09:55:07 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						dcc36e1dfe 
					 
					
						
						
							
							Initial TapoCamera support ( #1165 )  
						
						... 
						
						
						
						Adds experimental support for the Tapo Camera protocol also used by the H200 hub.
Creates a new SslAesTransport and a derived SmartCamera and SmartCameraProtocol. 
						
						
					 
					
						2024-10-16 16:53:52 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						380fbb93c3 
					 
					
						
						
							
							Enable newer encrypted discovery protocol ( #1168 )  
						
						
						
						
					 
					
						2024-10-16 15:28:27 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						7fd8c14c1f 
					 
					
						
						
							
							Create common Time module and add time set cli command ( #1157 )  
						
						
						
						
					 
					
						2024-10-15 08:59:25 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						bd5a24b0ed 
					 
					
						
						
							
							Use tzinfo in time constructor instead of astime for iot devices ( #1158 )  
						
						... 
						
						
						
						Fixes using `astime` on a non tzinfo aware object which causes issues with daylight saving. 
						
						
					 
					
						2024-10-08 12:33:19 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						7c1686d3ae 
					 
					
						
						
							
							Cache zoneinfo for smart devices ( #1156 )  
						
						
						
						
					 
					
						2024-10-08 12:21:01 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						9641edcbc0 
					 
					
						
						
							
							Make iot time timezone aware ( #1147 )  
						
						... 
						
						
						
						Also makes on_since for iot devices use device time.
Changes the return value for device.timezone to be tzinfo instead of a dict. 
						
						
					 
					
						2024-10-08 08:16:51 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						8bb2cca7cf 
					 
					
						
						
							
							Remove async magic patch from tests ( #1146 )  
						
						... 
						
						
						
						Not required since AsyncMock available in python 3.8 and probably better
to keep magic to a minimum. 
						
						
					 
					
						2024-10-02 17:12:10 +02:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						1026e890a1 
					 
					
						
						
							
							Correctly define SmartModule.call as an async function ( #1148 )  
						
						
						
						
					 
					
						2024-10-02 16:00:27 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						1fcf3e44c2 
					 
					
						
						
							
							Stabilise on_since value for smart devices ( #1144 )  
						
						... 
						
						
						
						Caches the `on_since` value to prevent jitter caused by the device calculations. 
						
						
					 
					
						2024-10-02 15:04:16 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						81e2685605 
					 
					
						
						
							
							Send empty dictionary instead of null for iot queries ( #1145 )  
						
						
						
						
					 
					
						2024-10-01 12:47:36 +01:00 
						 
				 
			
				
					
						
							
							
								Teemu R. 
							
						 
					 
					
						
						
							
						
						d897503b58 
					 
					
						
						
							
							Move feature initialization from __init__ to _initialize_features ( #1140 )  
						
						
						
						
					 
					
						2024-09-28 20:14:31 +02:00 
						 
				 
			
				
					
						
							
							
								Teemu R. 
							
						 
					 
					
						
						
							
						
						1ce5af2494 
					 
					
						
						
							
							Add factory_reset() to iotdevice ( #1125 )  
						
						... 
						
						
						
						Also extend the base device class API to make factory_reset() part of the common API. 
						
						
					 
					
						2024-09-27 17:42:22 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						d1b43f5408 
					 
					
						
						
							
							Fix cli command for device off ( #1121 )  
						
						... 
						
						
						
						Was previously missed when using the full `kasa device off` command as
opposed to the shortcut. 
						
						
					 
					
						2024-09-27 17:36:45 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						b4aba36b73 
					 
					
						
						
							
							Use pytest-socket to ensure no tests are performing io ( #1133 )  
						
						
						
						
					 
					
						2024-09-27 17:20:25 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						936e45cad7 
					 
					
						
						
							
							Enable ruff lint pycodestyle warnings ( #1132 )  
						
						... 
						
						
						
						Addresses repeated SyntaxWarnings when running linters:
```
kasa/tests/test_bulb.py:254: SyntaxWarning: invalid escape sequence '\d'
  ValueError, match="Temperature should be between \d+ and \d+, was 1000"
kasa/tests/test_bulb.py:258: SyntaxWarning: invalid escape sequence '\d'
  ValueError, match="Temperature should be between \d+ and \d+, was 10000"
kasa/tests/test_common_modules.py:216: SyntaxWarning: invalid escape sequence '\d'
  with pytest.raises(ValueError, match="Temperature should be between \d+ and \d+"):
kasa/tests/test_common_modules.py:219: SyntaxWarning: invalid escape sequence '\d'
  with pytest.raises(ValueError, match="Temperature should be between \d+ and \d+"):
``` 
						
						
					 
					
						2024-09-27 17:36:41 +02:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						db686e191a 
					 
					
						
						
							
							Add autouse fixture to patch asyncio.sleep ( #1131 )  
						
						
						
						
					 
					
						2024-09-27 10:57:23 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						038b6993ca 
					 
					
						
						
							
							Speed up and simplify github workflows ( #1128 )  
						
						... 
						
						
						
						- Enable parallel tests in the CI with pytest-xdist
- Migrate to the official `astral-sh/setup-uv` github action
- Call `pre-commit` run as a single job in CI instead of relisting each
check
- Use `uv` version 0.4.16
- Fix bug with pre-commit cache
- Update `publish.yml` to use  `astral-sh/setup-uv` 
						
						
					 
					
						2024-09-27 10:27:53 +01:00