Skip to content

Commit

Permalink
python 3
Browse files Browse the repository at this point in the history
  • Loading branch information
kmarkley committed Sep 18, 2022
1 parent 6fbcc50 commit cb71189
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 19 deletions.
4 changes: 2 additions & 2 deletions Mac Apps.indigoPlugin/Contents/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@
<plist version="1.0">
<dict>
<key>PluginVersion</key>
<string>0.0.9</string>
<string>0.1.0</string>
<key>ServerApiVersion</key>
<string>2.0</string>
<string>3.0</string>
<key>IwsApiVersion</key>
<string>1.0.0</string>
<key>CFBundleDisplayName</key>
Expand Down
34 changes: 17 additions & 17 deletions Mac Apps.indigoPlugin/Contents/Server Plugin/plugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ def validatePrefsConfigUi(self, valuesDict):
errorsDict = indigo.Dict()

if len(errorsDict) > 0:
self.logger.debug('validate prefs config error: \n{0}'.format(str(errorsDict)))
self.logger.debug(f'validate prefs config error: \n{str(errorsDict)}')
return (False, valuesDict, errorsDict)
return (True, valuesDict)

Expand Down Expand Up @@ -129,7 +129,7 @@ def psResults(self):
if self._psRefresh:
success, data = do_shell_script(k_psGetDataCmd)
if success:
self._psData = data
self._psData = data.decode('utf-8')
self._psRefresh = False
return self._psData

Expand Down Expand Up @@ -193,7 +193,7 @@ def validateDeviceConfigUi(self, valuesDict, deviceTypeId, devId, runtime=False)
valuesDict['processName'] = valuesDict['applicationName']

if len(errorsDict) > 0:
self.logger.debug('validate device config error: \n{0}'.format(str(errorsDict)))
self.logger.debug(f'validate device config error: \n{str(errorsDict)}')
return (False, valuesDict, errorsDict)
else:
return (True, valuesDict)
Expand Down Expand Up @@ -227,12 +227,12 @@ def actionControlDimmerRelay(self, action, dev):
appDev.onState = not appDev.onState
# STATUS REQUEST
elif action.deviceAction == indigo.kUniversalAction.RequestStatus:
self.logger.info('"{0}" status update'.format(dev.name))
self.logger.info(f'"{dev.name}" status update')
self.refresh_data()
appDev.update(True)
# UNKNOWN
else:
self.logger.debug('"{0}" {1} request ignored'.format(dev.name, str(action.deviceAction)))
self.logger.debug(f'"{dev.name}" {str(action.deviceAction)} request ignored')

#-------------------------------------------------------------------------------
# Menu Methods
Expand Down Expand Up @@ -295,22 +295,22 @@ def update(self, doStats=False):
for key, value in self.states.iteritems():
if self.states[key] != self.dev.states[key]:
if key in ['percent_cpu','percent_mem']:
newStates.append({'key':key,'value':value, 'uiValue': '{0}%'.format(value), 'decimalPlaces':1})
newStates.append({'key':key,'value':value, 'uiValue': '{value}%', 'decimalPlaces':1})
elif key == 'elapsed_secs':
newStates.append({'key':key,'value':value, 'uiValue': '{0} sec'.format(value)})
newStates.append({'key':key,'value':value, 'uiValue': '{value} sec'})
else:
newStates.append({'key':key,'value':value})

if key == 'onOffState':
self.logger.info('"{0}" {1}'.format(self.name, ['off','on'][value]))
self.logger.info(f'"{self.name}" {["off","on"][value]}')
elif key == 'process_status':
self.dev.updateStateImageOnServer(k_processStatusDict[self.status]['img'])

if len(newStates) > 0:
if self.plugin.debug: # don't fill up plugin log unless actively debugging
self.logger.debug('updating states on device "{0}":'.format(self.name))
self.logger.debug(f'updating states on device "{self.name}":')
for item in newStates:
self.logger.debug('{:>16}: {}'.format(item['key'],item['value']))
self.logger.debug(f'{item["key"]:>16}: {value}')
self.dev.updateStatesOnServer(newStates)
self.states = self.dev.states

Expand All @@ -324,12 +324,12 @@ def onStateSet(self,newState):
if newState != self.onState:
success, response = do_shell_script([self.offCmd,self.onCmd][newState])
if success:
self.logger.info('{0} {1} "{2}"'.format(['quitting','launching'][newState], self.type, self.props['applicationName']))
self.logger.info(f'{["quitting","launching"][newState]} {self.type} "{self.props["applicationName"]}"')
self.plugin.refresh_data()
self.plugin.sleep(0.25)
self.update(True)
else:
self.logger.error('failed to {0} {1} "{2}"'.format(['quit','launch'][newState], self.type, self.props['applicationName']))
self.logger.error(f'failed to {["quit","launch"][newState]} {self.type} "{self.props["applicationName"]}"')
self.logger.debug(response)

onState = property(onStateGet, onStateSet)
Expand Down Expand Up @@ -434,21 +434,21 @@ def update(self, doStats=False):
psData = self.plugin.psResults
self.states['percent_cpu'] = sumColumn(psData, k_psInfoGroupsKeys.index('pcpu'))/self.plugin.divisor
self.states['percent_mem'] = sumColumn(psData, k_psInfoGroupsKeys.index('pmem'))
self.states['displayState'] = "{:.1f}% | {:.1f}%".format(self.states['percent_cpu'],self.states['percent_mem'])
self.states['displayState'] = f"{self.states['percent_cpu']:.1f}% | {self.states['percent_mem']:.1f}%"

newStates = list()
for key, value in self.states.iteritems():
if self.states[key] != self.dev.states[key]:
if key in ['percent_cpu','percent_mem']:
newStates.append({'key':key,'value':value, 'uiValue': '{0}%'.format(value), 'decimalPlaces':1})
newStates.append({'key':key,'value':value, 'uiValue': f'{value}%', 'decimalPlaces':1})
else:
newStates.append({'key':key,'value':value})

if len(newStates) > 0:
if self.plugin.debug: # don't fill up plugin log unless actively debugging
self.logger.debug('updating states on device "{0}":'.format(self.name))
self.logger.debug(f'updating states on device "{self.name}":')
for item in newStates:
self.logger.debug('{:>16}: {}'.format(item['key'].rjust(16),item['value']))
self.logger.debug(f'{item["key"].rjust(16):>16}: {value}')
self.dev.updateStatesOnServer(newStates)
self.states = self.dev.states

Expand All @@ -458,7 +458,7 @@ def update(self, doStats=False):
def onStateGet(self):
return None
def onStateSet(self,newState):
self.logger.error('{0} command not supported for "{1}"'.format(['off','on'][newState], self.name))
self.logger.error(f'{["off","on"][newState]} command not supported for "{self.name}"')
onState = property(onStateGet, onStateSet)

###############################################################################
Expand Down

0 comments on commit cb71189

Please sign in to comment.