webhooks: Add klippy state to webhooks get_status() method

Clients can now subscribe to the webhooks get_status() info to
determine if the printer state changes.  It is no longer needed to
send a message to all clients on a shutdown transition.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
Kevin O'Connor 2020-08-11 21:33:50 -04:00
parent b0e3effb53
commit 1ae671f61f
1 changed files with 4 additions and 11 deletions

View File

@ -262,13 +262,6 @@ class WebHooks:
self.register_endpoint("emergency_stop", self._handle_estop_request)
self.sconn = ServerSocket(self, printer)
# Register Events
printer.register_event_handler(
"klippy:shutdown", self._notify_shutdown)
def _notify_shutdown(self):
self.call_remote_method("set_klippy_shutdown")
def register_endpoint(self, path, callback):
if path in self._endpoints:
raise WebRequestError("Path already registered to an endpoint")
@ -310,10 +303,10 @@ class WebHooks:
self.call_remote_method(method, **kwargs)
return ""
def get_status(self, eventtime=0.):
return {
"action_call_remote_method": self._action_call_remote_method
}
def get_status(self, eventtime):
state_message, state = self.printer.get_state_message()
return {'state': state, 'state_message': state_message,
"action_call_remote_method": self._action_call_remote_method}
class GCodeHelper:
def __init__(self, printer):