diff --git a/octoprint_mystromswitch/__init__.py b/octoprint_mystromswitch/__init__.py index 9d0adbe..8956d99 100644 --- a/octoprint_mystromswitch/__init__.py +++ b/octoprint_mystromswitch/__init__.py @@ -56,8 +56,12 @@ class MyStromSwitchPlugin(octoprint.plugin.SettingsPlugin, try: request = requests.get( 'http://{}/report'.format(self.ip), timeout=1) - self._plugin_manager.send_plugin_message(self._identifier, - request.json()) + if request.status_code == 200: + self._logger.debug("update view") + self._logger.debug(request.json()) + + self._plugin_manager.send_plugin_message(self._identifier, + request.json()) except (requests.exceptions.ConnectionError, ValueError): self._logger.info('Connection Error Host: {}'.format(self.ip)) # Do all Staff here diff --git a/octoprint_mystromswitch/static/js/mystromswitch.js b/octoprint_mystromswitch/static/js/mystromswitch.js index fb48df3..e998258 100644 --- a/octoprint_mystromswitch/static/js/mystromswitch.js +++ b/octoprint_mystromswitch/static/js/mystromswitch.js @@ -129,14 +129,20 @@ $(function() { } } + self.onEventPrinterStateChanged = function(payload) { + if (payload.state_id == "PRINTING" || payload.state_id == "PAUSED"){ + self.testButtonChangeStatus(true); + } else { + self.testButtonChangeStatus(false); + } + } + self.mystromswitchEnabled.subscribe(self.onmystromswitchEvent, self); self.onDataUpdaterPluginMessage = function(plugin, data) { if (plugin != "mystromswitch" && plugin != "octoprint_mystromswitch") { return; } - - self.mystromswitchEnabled(data.mystromswitchEnabled); if (data.power != null) { self.timeoutPopupOptions.text = self.timeoutPopupText + data.power; if (typeof self.timeoutPopup != "undefined") {