Eric Callahan
b4ddffd5d1
moonraker: refactor KlippyConnection
...
Move the KlippyConnection class into its own module. Refactor
init to use loops rather than callbacks, this reduces complexity
of tracking and cancelling callback handles.
All Klippy state previously tracked by the Server is now in the
KlippyConnection. This improves testing and makes the code
less ambiguous, ie: the `server.make_request()` method is not
as clear as `klippy.request()`.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2022-02-09 19:15:11 -05:00
Eric Callahan
4c087612d8
mqtt: allow internal access to API endpoints
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2022-01-12 08:05:17 -05:00
Pedro Lamas
05af4babb9
mqtt: fixes minor typo
...
Signed-off-by: Pedro Lamas <pedrolamas@gmail.com>
2021-12-28 14:13:27 -05:00
Eric Callahan
1e440741da
mqtt: add support for "secret" credentials
...
Deprecate the "password_file" option in favor of "password".
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-12-24 14:23:05 -05:00
Eric Callahan
92954245fa
mqtt: implement a "publish_mqtt_topic" remote method
...
Allow Klipper to publish MQTT topics from gcode macros.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-12-22 19:31:00 -05:00
Eric Callahan
f57bddfe4a
mqtt: send connect and disconnect events
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-12-14 17:51:12 -05:00
Eric Callahan
3ac8f8cd81
mqtt: add method to report instance name
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-12-14 17:51:12 -05:00
Eric Callahan
a4abec43d5
mqtt: fix non-threadsafe on_socket_open callback
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-12-11 14:31:10 -05:00
Eric Callahan
1ad83cec97
mqtt: fix connect/reconnect issues
...
Handle all potential exceptions. Run the connect/disconnect
in another thread, as its possible for some calls to block
the event loop.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-12-06 08:38:27 -05:00
Eric Callahan
9ebae5fd5a
mqtt: use extended confighelper methods
...
SIgned-off-by: Eric Callahan <arksine.code@gmail.com>
2021-11-20 11:40:57 -05:00
Pedro Lamas
d51d65ef30
mqtt: retry connection if failed to resolve hostname
...
Signed-off-by: Pedro Lamas <pedrolamas@gmail.com>
2021-11-18 06:00:51 -05:00
Pedro Lamas
bed239c90a
mqtt: implements last will and testament
...
Signed-off-by: Pedro Lamas <pedrolamas@gmail.com>
2021-11-13 11:00:26 -05:00
Eric Callahan
799e763050
mqtt: use component_init for post initalization
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-11-12 10:11:39 -05:00
Eric Callahan
6a39bbd0c3
mqtt: don't publish status updates when disconnected
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-11-03 08:49:40 -04:00
Eric Callahan
0ed367d734
mqtt: support specifying fields in "status_objects" option
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-10-10 12:21:27 -04:00
Eric Callahan
0c311aeef4
mqtt: add support for publishing klipper status updates
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-10-08 14:17:13 -04:00
Eric Callahan
05e2389dc1
mqtt: replace references to ioloop with eventloop
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-07-12 06:16:18 -04:00
Eric Callahan
ecc0fbdae9
mqtt: return a boolean in the wait_connection method
...
Rather than require consumers handle the TimeoutError, handle it directly and return the connection state.
SIgned-off-by: Eric Callahan <arksine.code@gmail.com>
2021-06-28 12:45:50 -04:00
Eric Callahan
0126aa794f
mqtt: initial support for mqtt connections
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-06-26 08:10:32 -04:00