You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I just tested your script and it works well. I still have some minor questions:
Is it possible to add Bulbs manually to the internal list without using discovery?
Can i simply create a Device object by passing the right arguments to its CTOR (DeviceId, Host, Client)?
How can i disable discovery when creating the Client? Can i place the next lines into an IF block: self.discover() and the _discoverpoll calls? I would create separate methods for this (start/stop discovery)
What i'm actually looking for is a way to re-create the bulblist from a (db) store. Once it knows (dicovered) the bulbs, there is no need to discover them again. (unless you want to make sure that they are on-line). It should see changes in the bulbs (when the are on-line) as your script does now.
So my main question: Is there an easy way to store/restore bulbs?
Also, please mention in your docs that this is a Python 2.x script.
The text was updated successfully, but these errors were encountered:
If you add an if block around these lines you will have a switch for enabling/disabling discovery. I'd suggest making th switch depend on the discover argument on the constructor, for example if its set to None. I'd welcome a PR for this. Keep in mind that discovery doesn't just ensure that new devices are discovered, it is also responsible for detecting devices that may have moved to a new IP address.
As for exporting and loading the current devices this is how I would approach it:
Add a function to Client that's used to create a new device from a device_id and host and return it.
Refactor Client._servicepacket to use this new function
Add a function to Client that takes a list of device_id and host pairs creates them with the new function, then when done calls Client.poll_devices (to test availability).
Add a function to Client that exports the device_id and host pairs in the same way the other function takes them
For extra points add hooks so that the Client object itself can be serialised and deserialised with Pickle. 😄
I'll probably get around to this eventually, but I welcome a PR if you need it sooner.
Hello Smarthall,
I just tested your script and it works well. I still have some minor questions:
Is it possible to add Bulbs manually to the internal list without using discovery?
Can i simply create a Device object by passing the right arguments to its CTOR (DeviceId, Host, Client)?
How can i disable discovery when creating the Client? Can i place the next lines into an IF block: self.discover() and the _discoverpoll calls? I would create separate methods for this (start/stop discovery)
What i'm actually looking for is a way to re-create the bulblist from a (db) store. Once it knows (dicovered) the bulbs, there is no need to discover them again. (unless you want to make sure that they are on-line). It should see changes in the bulbs (when the are on-line) as your script does now.
So my main question: Is there an easy way to store/restore bulbs?
Also, please mention in your docs that this is a Python 2.x script.
The text was updated successfully, but these errors were encountered: