Steven B 
							
						 
					 
					
						
						
							
						
						cddac30479 
					 
					
						
						
							
							Merge remote-tracking branch 'upstream/master' into feat/smartcam_passthrough  
						
						
						
						
					 
					
						2024-12-15 16:23:56 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						f8503e4df6 
					 
					
						
						
							
							Force single for some smartcam requests ( #1374 )  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	CI / Perform linting checks (3.13) (push) Waiting to run 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CodeQL checks / Analyze (python) (push) Waiting to run 
				
			 
		
		
	 
 
	 
						
						`onboarding` requests do not return the method key and need to be sent as single requests. 
						
						
					 
					
						2024-12-15 16:03:12 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						c439530f93 
					 
					
						
						
							
							Add bare bones homekit modules smart and smartcam devices ( #1370 )  
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	CI / Perform linting checks (3.13) (push) Has been cancelled 
				
			 
		
			
				
	CodeQL checks / Analyze (python) (push) Has been cancelled 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.11) (push) Has been cancelled 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.12) (push) Has been cancelled 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.13) (push) Has been cancelled 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.11) (push) Has been cancelled 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.12) (push) Has been cancelled 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.13) (push) Has been cancelled 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.11) (push) Has been cancelled 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.12) (push) Has been cancelled 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.13) (push) Has been cancelled 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.11) (push) Has been cancelled 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.12) (push) Has been cancelled 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.13) (push) Has been cancelled 
				
			 
		
		
	 
 
	 
						
						
					 
					
						2024-12-14 13:34:58 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B 
							
						 
					 
					
						
						
							
						
						9a25bdf7d5 
					 
					
						
						
							
							Mask hw_id and fw_id  
						
						
						
						
					 
					
						2024-12-14 11:43:23 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B 
							
						 
					 
					
						
						
							
						
						099766b9d8 
					 
					
						
						
							
							Add new methods to dump_devinfo  
						
						
						
						
					 
					
						2024-12-14 11:27:54 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						59e5073509 
					 
					
						
						
							
							Update docs for new FeatureAttribute behaviour ( #1365 )  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	CI / Perform linting checks (3.13) (push) Waiting to run 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CodeQL checks / Analyze (python) (push) Waiting to run 
				
			 
		
		
	 
 
	 
						
						Co-authored-by: Teemu R. <tpr@iki.fi > 
						
						
					 
					
						2024-12-13 22:23:58 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						2ca6d3ebe9 
					 
					
						
						
							
							Add bare-bones matter modules to smart and smartcam devices ( #1371 )  
						
						
						
						
					 
					
						2024-12-13 19:45:38 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B 
							
						 
					 
					
						
						
							
						
						2df668ee28 
					 
					
						
						
							
							Tweak log messages and method names  
						
						
						
						
					 
					
						2024-12-13 16:35:01 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B 
							
						 
					 
					
						
						
							
						
						841cb3aed4 
					 
					
						
						
							
							Cleanup experimental code  
						
						
						
						
					 
					
						2024-12-13 16:29:07 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B 
							
						 
					 
					
						
						
							
						
						6d753efb8f 
					 
					
						
						
							
							Random user-agent  
						
						
						
						
					 
					
						2024-12-13 15:42:37 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B 
							
						 
					 
					
						
						
							
						
						4e9b0ee0eb 
					 
					
						
						
							
							Fix val is None  
						
						
						
						
					 
					
						2024-12-13 15:19:20 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B 
							
						 
					 
					
						
						
							
						
						aba71744ca 
					 
					
						
						
							
							Fix local_nonce None  
						
						
						
						
					 
					
						2024-12-13 15:16:59 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B 
							
						 
					 
					
						
						
							
						
						6bfb19a748 
					 
					
						
						
							
							Try different referer  
						
						
						
						
					 
					
						2024-12-13 15:14:51 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B 
							
						 
					 
					
						
						
							
						
						25106c1b4a 
					 
					
						
						
							
							experiment- unique referrer url  
						
						
						
						
					 
					
						2024-12-13 14:40:42 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B 
							
						 
					 
					
						
						
							
						
						5782ce1029 
					 
					
						
						
							
							Handle no method in multiple response for single request  
						
						
						
						
					 
					
						2024-12-13 14:39:55 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						223f3318ea 
					 
					
						
						
							
							Use DeviceInfo consistently across devices ( #1338 )  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	CI / Perform linting checks (3.13) (push) Waiting to run 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CodeQL checks / Analyze (python) (push) Waiting to run 
				
			 
		
		
	 
 
	 
						
						- Make model exclude region for `iot` devices. This is consistent with `smart` and `smartcam` devices.
- Make region it's own attribute on `Device`.
- Ensure that devices consistently use `_get_device_info` static methods for all information relating to device models.
- Fix issue with firmware and hardware being the wrong way round for `smartcam` devices. 
						
						
					 
					
						2024-12-13 12:37:13 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						7709bb967f 
					 
					
						
						
							
							Update cli, light modules, and docs to use FeatureAttributes ( #1364 )  
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	CI / Perform linting checks (3.13) (push) Waiting to run 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CodeQL checks / Analyze (python) (push) Waiting to run 
				
			 
		
		
	 
 
	 
						
						
					 
					
						2024-12-11 15:53:35 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						9f10cd10cb 
					 
					
						
						
							
							Merge branch 'master' into feat/smartcam_passthrough  
						
						
						
						
					 
					
						2024-12-11 14:48:04 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						f8a46f74cd 
					 
					
						
						
							
							Pass raw components to SmartChildDevice init ( #1363 )  
						
						... 
						
						
						
						Clean up and consolidate the processing of raw component query responses and simplify the code paths for creating smartcam child devices when supported. 
						
						
					 
					
						2024-12-11 14:38:38 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						8cb5c2e180 
					 
					
						
						
							
							Update dump_devinfo for raw discovery json and common redactors ( #1358 )  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	CI / Perform linting checks (3.13) (push) Waiting to run 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CodeQL checks / Analyze (python) (push) Has been cancelled 
				
			 
		
		
	 
 
	 
						
						This PR does a few related things to dump_devinfo:
- Store the raw discovery result in the fixture.
- Consolidate redaction logic so it's not duplicated in dump_devinfo.
- Update existing fixtures to:
  - Store raw discovery result under `result`
  - Use `SCRUBBED_CHILD_DEVICE_ID` everywhere
  - Have correct values as per the consolidated redactors. 
						
						
					 
					
						2024-12-11 14:18:44 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B 
							
						 
					 
					
						
						
							
						
						22e4f48efa 
					 
					
						
						
							
							Handle blocked session and try less secure login for default  
						
						
						
						
					 
					
						2024-12-11 08:56:32 +00:00 
						 
				 
			
				
					
						
							
							
								Teemu R. 
							
						 
					 
					
						
						
							
						
						032cd5d2cc 
					 
					
						
						
							
							Improve overheat reporting ( #1335 )  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	CI / Perform linting checks (3.13) (push) Waiting to run 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, macos-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, ubuntu-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (false, windows-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.11) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.12) (push) Blocked by required conditions 
				
			 
		
			
				
	CI / Python ${{ matrix.python-version}} on ${{ matrix.os }}${{ fromJSON('[" (extras)", ""]')[matrix.extras == ''] }} (true, ubuntu-latest, 3.13) (push) Blocked by required conditions 
				
			 
		
			
				
	CodeQL checks / Analyze (python) (push) Waiting to run 
				
			 
		
		
	 
 
	 
						
						Different devices and different firmwares report overheated status in
different ways.
Some devices indicate support for `overheat_protect` component, but
there are devices that report `overheat_status` even when it is not
listed.
Some other devices use `overheated` boolean that was already previously
supported, but this PR adds support for much more devices that use
`overheat_status` for reporting.
The "overheated" feature is moved into its own module, and uses either
of the ways to report this information.
This will also rename `REQUIRED_KEY_ON_PARENT` to `SYSINFO_LOOKUP_KEYS`
and change its logic to check if any of the keys in the list are found
in the sysinfo.
```
tpr@lumipyry ~/c/p/tests (fix/overheated)> ag 'overheat_protect' -c|wc -l
15
tpr@lumipyry ~/c/p/tests (fix/overheated)> ag 'overheated' -c|wc -l
38
tpr@lumipyry ~/c/p/tests (fix/overheated)> ag 'overheat_status' -c|wc -l
20
```
---------
Co-authored-by: Steven B. <51370195+sdb9696@users.noreply.github.com > 
						
						
					 
					
						2024-12-11 01:01:36 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						bf8f0adabe 
					 
					
						
						
							
							Return raw discovery result in cli discover raw ( #1342 )  
						
						... 
						
						
						
						Add `on_discovered_raw` callback to Discover and adds a cli command `discover raw` which returns the raw json before serializing to a `DiscoveryResult` and attempting to create a device class. 
						
						
					 
					
						2024-12-10 22:42:14 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B 
							
						 
					 
					
						
						
							
						
						36a9823b63 
					 
					
						
						
							
							Try variations of hashing and passwords  
						
						
						
						
					 
					
						2024-12-10 17:56:20 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B 
							
						 
					 
					
						
						
							
						
						4a5bc20ee2 
					 
					
						
						
							
							Update SslAesTransport for legacy firmware versions  
						
						
						
						
					 
					
						2024-12-10 14:11:23 +00:00 
						 
				 
			
				
					
						
							
							
								Puxtril 
							
						 
					 
					
						
						
							
						
						cb89342be1 
					 
					
						
						
							
							Add LinkieTransportV2 and basic IOT.IPCAMERA support ( #1270 )  
						
						... 
						
						
						
						Add LinkieTransportV2 transport used by kasa cameras and a basic
implementation for IOT.IPCAMERA (kasacam) devices.
---------
Co-authored-by: Zach Price <pricezt@ornl.gov >
Co-authored-by: Steven B <51370195+sdb9696@users.noreply.github.com >
Co-authored-by: Teemu Rytilahti <tpr@iki.fi > 
						
						
					 
					
						2024-12-07 00:06:58 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						be8b7139b8 
					 
					
						
						
							
							Fix update errors on hubs with unsupported children ( #1344 )  
						
						
						
						
					 
					
						2024-12-06 11:01:44 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						1c9ee4d537 
					 
					
						
						
							
							Fix smartcam missing device id ( #1343 )  
						
						
						
						
					 
					
						2024-12-06 09:40:44 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						8814d94989 
					 
					
						
						
							
							Provide alternative camera urls ( #1316 )  
						
						
						
						
					 
					
						2024-12-05 16:49:35 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						4eed945e00 
					 
					
						
						
							
							Do not error when accessing smart device_type before update ( #1319 )  
						
						
						
						
					 
					
						2024-12-05 09:14:45 +00:00 
						 
				 
			
				
					
						
							
							
								Teemu R. 
							
						 
					 
					
						
						
							
						
						9966c6094a 
					 
					
						
						
							
							Add ssltransport for robovacs ( #943 )  
						
						... 
						
						
						
						This PR implements a clear-text, token-based transport protocol seen on
RV30 Plus (#937 ).
- Client sends `{"username": "email@example.com ", "password":
md5(password)}` and gets back a token in the response
- Rest of the communications are done with POST at `/app?token=<token>`
---------
Co-authored-by: Steven B. <51370195+sdb9696@users.noreply.github.com > 
						
						
					 
					
						2024-12-01 18:06:48 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						5ef8f21b4d 
					 
					
						
						
							
							Handle missing mgt_encryption_schm in discovery ( #1318 )  
						
						
						
						
					 
					
						2024-11-29 15:23:16 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						f71450b880 
					 
					
						
						
							
							Do not error on smartcam hub attached smartcam child devices ( #1314 )  
						
						
						
						
					 
					
						2024-11-26 11:37:14 +00:00 
						 
				 
			
				
					
						
							
							
								Teemu R. 
							
						 
					 
					
						
						
							
						
						0c755f7120 
					 
					
						
						
							
							Include duration when disabling smooth transition on/off ( #1313 )  
						
						... 
						
						
						
						Fixes  #1309  
					
						2024-11-26 10:39:31 +00:00 
						 
				 
			
				
					
						
							
							
								Teemu R. 
							
						 
					 
					
						
						
							
						
						69e08c2385 
					 
					
						
						
							
							Expose energy command to cli ( #1307 )  
						
						... 
						
						
						
						Co-authored-by: Steven B <51370195+sdb9696@users.noreply.github.com > 
						
						
					 
					
						2024-11-26 09:42:55 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						3dfada7575 
					 
					
						
						
							
							Add common Thermostat module ( #977 )  
						
						
						
						
					 
					
						2024-11-26 09:37:15 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						cb4e28394d 
					 
					
						
						
							
							Update docs for the new module attributes has/get feature ( #1301 )  
						
						
						
						
					 
					
						2024-11-26 08:38:20 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						2bda54fcb1 
					 
					
						
						
							
							Rename smartcamera to smartcam ( #1300 )  
						
						
						
						
					 
					
						2024-11-23 09:07:47 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						b525d6a35c 
					 
					
						
						
							
							Annotate fan_speed_level of Fan interface ( #1298 )  
						
						
						
						
					 
					
						2024-11-22 21:21:29 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						37cc4da7b6 
					 
					
						
						
							
							Allow getting Annotated features from modules ( #1018 )  
						
						... 
						
						
						
						Co-authored-by: Teemu R. <tpr@iki.fi > 
						
						
					 
					
						2024-11-22 07:52:23 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						cae9decb02 
					 
					
						
						
							
							Exclude __getattr__ for deprecated attributes from type checkers ( #1294 )  
						
						
						
						
					 
					
						2024-11-21 18:40:13 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						652b4e0bd7 
					 
					
						
						
							
							Use credentials_hash for smartcamera rtsp url ( #1293 )  
						
						
						
						
					 
					
						2024-11-21 18:39:15 +00:00 
						 
				 
			
				
					
						
							
							
								Teemu R. 
							
						 
					 
					
						
						
							
						
						f2ba23301a 
					 
					
						
						
							
							Make discovery on unsupported devices less noisy ( #1291 )  
						
						
						
						
					 
					
						2024-11-21 18:22:54 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						5221fc07ca 
					 
					
						
						
							
							Simplify omit http_client in DeviceConfig serialization ( #1292 )  
						
						... 
						
						
						
						Related explanation: https://github.com/Fatal1ty/mashumaro/issues/264  
						
						
					 
					
						2024-11-21 19:18:04 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						879aca77d1 
					 
					
						
						
							
							Update cli modify presets to support smart devices ( #1295 )  
						
						
						
						
					 
					
						2024-11-21 19:10:18 +01:00 
						 
				 
			
				
					
						
							
							
								Ryan Nitcher 
							
						 
					 
					
						
						
							
						
						dab64e5d48 
					 
					
						
						
							
							Add voltage and current monitoring to smart Devices ( #1281 )  
						
						
						
						
					 
					
						2024-11-20 18:18:30 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						0058ad9f2e 
					 
					
						
						
							
							Remove pydantic dependency ( #1289 )  
						
						... 
						
						
						
						Remove pydantic dependency in favor of mashumaro. 
						
						
					 
					
						2024-11-20 15:19:12 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						f7778aaa53 
					 
					
						
						
							
							Migrate RuleModule to mashumaro ( #1283 )  
						
						... 
						
						
						
						Also fixes a bug whereby multiple queries for the same module would overwrite each other. 
						
						
					 
					
						2024-11-20 14:59:32 +00:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						955e7ab4d0 
					 
					
						
						
							
							Migrate TurnOnBehaviours to mashumaro ( #1285 )  
						
						
						
						
					 
					
						2024-11-20 15:35:51 +01:00 
						 
				 
			
				
					
						
							
							
								Steven B. 
							
						 
					 
					
						
						
							
						
						5eca487bcb 
					 
					
						
						
							
							Migrate iot cloud module to mashumaro ( #1282 )  
						
						... 
						
						
						
						Breaking change as the CloudInfo interface is changing to snake case for
consistency with the rest of the library. 
						
						
					 
					
						2024-11-20 14:34:26 +01:00