How do you automatically refresh the plugin properties after adding a new field in the PluginConfig.xml? I have my devices refresh if I makes changes but haven't figured out how to refresh the plugin itself.
Thanks.
self.validatePrefsConfigUi(pluginPrefs) # Validate the Plugin Config
if "missedPollLimit" in valuesDict:
try:
self.globals['polling']['missedPollLimit'] = int(valuesDict["missedPollLimit"])
except:
errorDict = indigo.Dict()
errorDict["missedPollLimit"] = "Invalid number for missed polls limit"
errorDict["showAlertText"] = "The number of missed polls limit must be specified as an integer e.g 2, 5 etc."
return (False, valuesDict, errorDict)
else:
self.globals['polling']['missedPollLimit'] = int(360) # Default to 6 minutes
bkmar1192 wrote:How do you automatically refresh the plugin properties after adding a new field in the PluginConfig.xml? I have my devices refresh if I makes changes but haven't figured out how to refresh the plugin itself.
self.some_prop = pluginPrefs.get("someProp", SOME_GOOD_DEFAULT_VALUE)
def closedPrefsConfigUi(self, valuesDict, userCancelled):
if not userCancelled:
self.some_prop = valuesDict.get("test3", "true")
instanceVers = int(device.pluginProps.get('devVersCount', 0))
if instanceVers == kCurDevVersCount:
self.logger.threaddebug(u"%s: Device is current version: %d" % (device.name ,instanceVers))
elif instanceVers < kCurDevVersCount:
newProps = device.pluginProps
# do version specific updates here
newProps["devVersCount"] = kCurDevVersCount
device.replacePluginPropsOnServer(newProps)
device.stateListOrDisplayStateIdChanged()
self.logger.debug(u"%s: Updated device version: %d -> %d" % (device.name, instanceVers, kCurDevVersCount))
else:
self.logger.warning(u"%s: Invalid device version: %d" % (device.name, instanceVers))
self.prop_d = pluginPrefs.get("d", "true")
if "d" not in pluginPrefs:
pluginPrefs["d"] = "true"
Users browsing this forum: No registered users and 2 guests