Eric Callahan
dfa38a0ddc
power: uhubctl Pi 4 bugfix
...
Default the port option to None if omitted.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2024-06-23 05:39:20 -04:00
Eric Callahan
ddc0e76ffc
power: add support for uhubctl devices
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2024-05-06 06:46:53 -04:00
Eric Callahan
5570ab02ee
power: remove state check when performing job queue requests
...
Allow the device to refresh the state in the event that its stale.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2024-04-28 12:08:30 -04:00
Eric Callahan
f0ae51792f
power: add support for custom Homeseer ports
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2024-03-01 05:50:03 -05:00
Eric Callahan
60f4a82873
confighelper: avoid direct import of JinjaTemplate
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2024-01-15 06:03:35 -05:00
Eric Callahan
ddd735feba
refactor: convert klippy_connection into a component
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2024-01-13 15:15:15 -05:00
wollew
7fc571643d
power: enable HTTP port option for Zigbee/Hue devices
...
Signed-off-by: Wolfgang Miller-Reichling <wolfgang+github@miller-reichling.de>
2023-12-22 18:19:05 -05:00
Eric Callahan
7de61eb113
klippy_connection: track connection state with an enum
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2023-12-16 16:21:21 -05:00
Eric Callahan
b18e9cc222
all: Replace strings with RequestType flags
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2023-12-16 16:21:20 -05:00
Eric Callahan
6c6b7dcff0
power: process bound services when initial_state is set
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2023-11-15 18:09:56 -05:00
Eric Callahan
a28c7c3f93
power: fix linter errors
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2023-10-07 10:33:20 -04:00
Eric Callahan
f99e5b0bea
utils: add support for msgspec with stdlib json fallback
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2023-10-06 18:20:28 -04:00
Eric Callahan
d3bab5de94
klippy_apis: support subscription callbacks
...
This callback will only fire after a component has requested
a subscription, preventing early updates while the component
is waiting for the subscription request to complete. It is still
valid for components to register the "server:status_update"
event handler if this behavior is not a concern.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2023-07-30 16:30:00 -04:00
Eric Callahan
7c8d68c0a1
components: fix pycodestyle E721 warnings
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2023-07-30 15:34:56 -04:00
mista-funky
fe52bc5b6d
power: tplink smartstrip fix
...
Correct the procedure for setting the child id for devices that control more than one outlet.
Signed-off-by: Rick Marino <rcmarino@gmail.com>
2023-07-22 06:34:29 -04:00
Eric Callahan
204e7ca4ff
power: add support for generic http sensors
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2023-04-14 07:43:28 -04:00
Eric Callahan
6d73c60a38
moonraker: move common classes to common.py
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2023-02-24 07:08:41 -05:00
Eric Callahan
0f8638fec7
components: correct imports
...
All imports must now be relative to work correctly with the
moonraker parent package.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2023-02-22 12:16:27 -05:00
Eric Callahan
55ebe120c5
power: resolve url encoding issues
...
Dynamic parts of the url must be encoded individually to
guarantee correct url generation.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2023-02-11 11:43:15 -05:00
cmerkle
0de712e822
power: add support for Hue device groups
...
Signed-off-by: Clayton Merkle <clay.merkle@gmail.com>
2023-02-09 11:15:27 -05:00
Eric Callahan
1be19be747
klippy_connection: rework klippy initialization
...
Handle a race condition where a shutdown event could be received
from the webhooks subscription during initialization.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2023-02-04 16:43:35 -05:00
Eric Callahan
2ad7a6a087
power: log the traceback on device init errors
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2023-01-18 19:31:47 -05:00
Eric Callahan
ecf7fb9267
klippy_connection: add is_printing() and is_ready() methods
...
Several components throughout Moonraker determine whether or not
Klipper is printing or is ready before taking action. This centralizes
queries in one area. The checks do not query Klipper directly but
rather rely on subscriptions to push state to Moonraker.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2023-01-06 12:20:52 -05:00
Eric Callahan
b3a9447392
power: add support for multiple bound services
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2023-01-02 06:30:18 -05:00
Eric Callahan
aeea9a2efd
power: introduce "force" argument for remote method calls
...
The "force" argument may be used turn on a device during a print
that is otherwise locked for normal requests.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2022-12-23 19:13:11 -05:00
Eric Callahan
38b035389d
power: improve logging
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2022-10-19 16:35:49 -04:00
Eric Callahan
1f1c590409
power: add initial state support for all devices
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2022-10-19 13:43:14 -04:00
Eric Callahan
be9aff8b5e
power: loosen bound service requirement
...
Specifically check against the detected service unit, otherwise
allow a power device to bind to any available service.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2022-10-14 15:15:41 -04:00
olli-t
9fea1634b1
power: fix Hue implementation
...
Signed-off-by: Oliver Tetz olli.codes.some.lines@gmail.com
2022-07-18 08:17:16 -04:00
Eric Callahan
bcb7a55996
power: fix type/checking formatting for Hue device
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2022-07-17 06:38:38 -04:00
lie_ink
4d803ec9e5
power: add support for hue devices
...
Signed-off-by: Oliver Tetz <olli.codes.some.lines@gmail.com>
2022-07-17 06:26:26 -04:00
Eric Callahan
d37f91c9c8
power: type checking fix
...
For legacy purposes its possible that "initialize()" may be an
awaitable. Ignore the type as it consues mypy.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2022-06-29 12:06:36 -04:00
Eric Callahan
31d4335e3e
power: allow indefinite remote device init
...
Remote devices, such as the tplink smartplug and http
based devices, may not be immediately available when
Moonraker starts. Previously this would result in an error.
Remote switches that requiring polling for state will now
reattempt initialization indefinitely. This behavior brings
them in line with devices that are updated asynchronously.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2022-06-29 08:07:46 -04:00
Eric Callahan
b85f3081ab
power: add retries to custom http requests
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2022-03-29 15:39:04 -04:00
Eric Callahan
1bdedd009f
power: fix tasmota command encoding
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2022-03-24 14:46:46 -04:00
Eric Callahan
5bf112bcbc
power: use the http_client component
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2022-03-23 10:37:10 -04:00
Eric Callahan
c165c40146
power: improve device initialization
...
Refactor the PowerDevice initialize() method so that it acquires the
request lock. Always register the "klippy_started" event if the
"restart_klipper" option is set, and always check if Klipper is is
the ready state before performing the restart. Remove stale
PowerDevice methods no longer used.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2022-02-27 07:47:12 -05:00
Eric Callahan
970c8a4181
power: move process_request to the device class
...
Perform the entire request within a lock to prevent rentry until
the request completes.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2022-02-26 20:10:27 -05:00
Eric Callahan
7ab1dda772
power: change behavior of "on when queued"
...
Rename the "on_when_upload_queued" option to "on_when_job_queued",
deprecate the former. This option now applies to any queued job while
the device is off.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2022-02-22 14:36:46 -05:00
Eric Callahan
10703321b0
power: fetch the Smart Things token option as a template
...
This allows users to store their token in a "secrets" file
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2022-02-14 06:19:37 -05:00
Mitch Gallman
d01b8a9763
power: add support for smartthings switch
...
power: add support for smartthings switch
Signed-off-by: Mitch Gallman <mitchell.gallman@gmail.com>
2022-02-14 06:12:52 -05:00
Eric Callahan
0b13e2da44
power: add support for gcode_macro Klipper devices
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2022-02-03 08:14:48 -05:00
Matthew Humphrey
aca7cb78b9
module: power
...
Add separate output_id configuration attribute for TPLink Smartplug device.
Signed-off-by: Matthew Humphrey <mhumphrey@gmail.com>
2022-02-02 17:35:18 -05:00
Pedro Lamas
287982acdd
power: initial support for Klipper Devices
...
Signed-off-by: Pedro Lamas <pedrolamas@gmail.com>
2022-01-29 07:53:30 -05:00
Eric Callahan
209bdc18da
power: sleep for 1 second between failed retries
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2022-01-28 06:12:56 -05:00
Eric Callahan
7fcd84bbe4
power: add retries to http requests
...
This is an attempt to mitigate 599 errors raised by tornado's
curl based http client.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2022-01-27 17:00:08 -05:00
Lukas Fink
3cbc2c2ca8
power: add 'off_when_shutdown_delay' option
...
This option allows to delay switching off a power source after klippy
shuts down.
Signed-off-by: Lukas Fink <lukas.fink1@gmail.com>
2022-01-12 19:58:25 -05:00
Eric Callahan
c5fd863bb7
power: add support for secrets
...
The "user", "password", and "token" options are templates
that can resolve items stored in the secrets file.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-12-24 14:23:05 -05:00
Eric Callahan
d0b1621bd5
power: add mqtt device support
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-12-19 08:00:13 -05:00
Eric Callahan
511c91829a
power: use native asyncio socket streams
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2021-12-10 11:37:51 -05:00