Index: README.md ================================================================== --- README.md +++ README.md @@ -16,10 +16,16 @@ limitlessled_rf.Remote.off(zone = None, dim = True) -> boolean limitlessled_rf.Remote.max_brightness(zone = None) -> boolean limitlessled_rf.Remote.white(zone = None) -> boolean limitlessled_rf.Remote.pair(zone) -> boolean limitlessled_rf.Remote.unpair(zone) -> boolean + limitlessled_rf.Remote.get_zone_ids() -> list of ints + limitlessled_rf.Remote.get_type() -> string + limitlessled_rf.Remote.get_id() -> int + limitlessled_rf.Remote.get_message_id() -> int + limitlessled_rf.Remote.get_brightness_range() -> list of ints + limitlessled_rf.Remote.get_temperature_range() -> llist of ints ### Constructor Construct a LimitlessLED object that uses the specified radio to act as a specific numeric remote for a specific type of LimitlessLED bulb system. Index: limitlessled_rf/__init__.py ================================================================== --- limitlessled_rf/__init__.py +++ limitlessled_rf/__init__.py @@ -654,5 +654,33 @@ message = { 'button': 'zone_white', 'zone': zone } return self._send_button(message) + + # Methods to query remote identity and state + def get_zone_ids(self): + # All current remotes have 4 zones + # XXX Make this a property + return [1, 2, 3, 4] + + def get_type(self): + return self._type + + def get_id(self): + return self._id + + def get_message_id(self): + return self._message_id + + def get_brightness_range(self): + # Brightness is always a fixed range + return [0, 255] + + def get_temperature_range(self): + # If the remote has no control over the temperature this + # query gets a null response + if 'temperature_input_range' not in self._config: + return None + + # Otherwise return with what we accept as temperature ranges + return self._config['temperature_input_range'] Index: setup.py ================================================================== --- setup.py +++ setup.py @@ -3,11 +3,11 @@ with open("README.md", "r") as fh: long_description = fh.read() setuptools.setup( name="limitlessled_rf", - version="0.3", + version="0.4", author="Roy Keene", author_email="pypi@rkeene.org", description="Python LimitlessLED via RF", long_description=long_description, long_description_content_type="text/markdown",