Rework device finding for auto-IP detection, and unpack_message() retcode fix #186
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Update find() to use
select.select()
instead of a fixed wait so it processes broadcast packets as they come in. It was also moved out of XenonDevice and renamed to find_device() so you can use it without creating a device. It can also be used with an IP address instead of a device ID if you want to find out what device is at a certain IP (not sure why I added this one, this is getting into scanner territory).I also noticed
unpack_message()
was returning alist
(instead of theint
it should be) if a packet retcode is processed, so that is now fixed. I don't think anything in tinytuya ever uses the retcode, but my scanner uses it to help detect brute-force failures.