Dreaded_X
c2ba4ffbb5
feat(config)!: Reworked how configuration is loaded
...
Build and deploy / build (push) Successful in 11m1s
Build and deploy / Deploy container (push) Successful in 40s
The environment variable `AUTOMATION_CONFIG` has been renamed to
`AUTOMATION__ENTRYPOINT` and can now also be set in `automation.toml` by
specifying:
```
automation = "<path>"
```
Directly accessing the environment variables in lua in no longer
possible. To pass in configuration or secrets you can now instead make
use of the `variables` and `secrets` modules.
To set values in these modules you can either specify them in
`automation.toml`:
```
[variables]
<name> = <value>
[secrets]
<name> = <value>
```
Note that these values will get converted to a string.
You can also specify the environment variables
`AUTOMATION__VARIABLES__<name>` and `AUTOMATION__SECRETS__<name>` to
set variables and secrets respectively. By adding the suffix `__FILE` to
the environment variable name the contents of a file can be loaded into
the variable or secret.
Note that variables and secrets are identical in functionality and the
name difference exists purely to make it clear that secret values are
meant to be kept secret.
2025-09-05 03:14:44 +02:00
Dreaded_X
7a9f464e61
feat(config)!: Move new_mqtt_client out of global automation table into separate module
...
Build and deploy / build (push) Successful in 10m30s
Build and deploy / Deploy container (push) Successful in 45s
The function `new_mqtt_client` was the last remaining entry in the
global `automation` table. The function was renamed to `new` and placed
in the new `mqtt` module. As `automation` is now empty, it has been
removed.
2025-09-04 04:28:03 +02:00
Dreaded_X
3d5f6c308c
feat(config)!: Move device_manager out of global automation table into separate module
...
Moved `automation.device_manager` into a separate module called
`device_manager`
2025-09-04 04:28:03 +02:00
Dreaded_X
c6a6265d6c
feat(config)!: Move util out of global automation table into separate module
...
Move `automation.util` into a separate module called `utils`.
2025-09-04 04:28:02 +02:00
Dreaded_X
d6816bc693
feat(config)!: Fulfillment config is now returned at the end of the config
...
Previously the fulfillment config was set by setting
`automation.fulfillment`, this will no longer work in the future when
the global automation gets split into modules.
2025-09-04 04:28:02 +02:00
Dreaded_X
c8d5df753f
style: Sort crates by name
2025-09-04 04:28:02 +02:00
Dreaded_X
96cb814495
style: Enforce conventional commits formatting
2025-09-04 04:28:02 +02:00
Dreaded_X
aa22132dd6
chore: Put typos config in Cargo.toml
2025-09-04 04:28:02 +02:00
Dreaded_X
1db269f65e
chore: Update pre-commit hooks
2025-09-04 04:28:02 +02:00
Dreaded_X
77d7881a57
chore: Update/upgrade dependencies
...
There was a potential vulnerability in tracing-subscriber, so I took
this as an opportunity to update/upgrade all dependencies
2025-09-04 04:28:02 +02:00
Dreaded_X
f3b1854beb
fix: Crash if hallway automation is called before door/trash have been initialized
...
Resolves : #4
2025-09-04 04:27:49 +02:00
Dreaded_X
8109dcf2f5
feat: Added low battery notification and made mqtt message parsing more robust
...
Resolves : #1
2025-09-04 04:26:34 +02:00
Dreaded_X
1b8566e593
refactor: Switch to async closures
2025-09-04 04:15:08 +02:00
Dreaded_X
e21ea0f34e
Implement custom lua print function that calls info
Build and deploy / build (push) Successful in 11m54s
Build and deploy / Deploy container (push) Successful in 45s
2025-09-01 02:47:47 +02:00
Dreaded_X
fb7e1f1472
Small cleanup
2025-09-01 02:47:29 +02:00
Dreaded_X
45de83ef2f
Removed old presence system
2025-08-31 23:57:59 +02:00
Dreaded_X
2a1f75f158
Move front door presence logic to lua
2025-08-31 23:57:59 +02:00
Dreaded_X
74568b4e1f
Handle turning off devices when away through lua
2025-08-31 23:57:59 +02:00
Dreaded_X
fefccf03d7
Removed DebugBridge as it no longer served a purpose
2025-08-31 23:57:59 +02:00
Dreaded_X
b56a16d0d7
Moved presence debug mqtt message to lua
2025-08-31 23:57:59 +02:00
Dreaded_X
1530875045
Presence and light sensor call all function in array
2025-08-31 23:57:58 +02:00
Dreaded_X
9616017c8f
Print lua version on startup
2025-08-31 23:57:56 +02:00
Dreaded_X
6db5831571
Removed old darkness system
2025-08-31 23:56:28 +02:00
Dreaded_X
aa730c9738
Moved darkness debug mqtt message to lua
2025-08-31 05:41:49 +02:00
Dreaded_X
c362952f7c
Feature: Get current ms since unix epoch in lua
2025-08-31 05:41:49 +02:00
Dreaded_X
dd379e4077
Feature: Send mqtt messages from lua
2025-08-31 05:41:48 +02:00
Dreaded_X
549d821e3a
Moved hue bridge on darkness to lua
2025-08-31 05:41:46 +02:00
Dreaded_X
4980f4888e
Removed unused event code
2025-08-31 05:01:56 +02:00
Dreaded_X
eb36d41f17
Move ntfy and presence to automation_devices
2025-08-31 04:57:31 +02:00
Dreaded_X
03dcd44e0e
Removed old notification system
Build and deploy / build (push) Successful in 8m50s
Build and deploy / Deploy container (push) Successful in 39s
2025-08-31 03:55:08 +02:00
Dreaded_X
6c9d2c16c1
Converted presence notification into lua callback
2025-08-31 03:55:08 +02:00
Dreaded_X
2d9e3d26f2
Send laundy notification from lua
2025-08-31 03:55:08 +02:00
Dreaded_X
64c7d950c5
Make it possible to send notifications from lua
2025-08-31 03:55:07 +02:00
Dreaded_X
5d342afb1f
Converted macro to derive macro
2025-08-31 03:54:20 +02:00
Dreaded_X
d2b01123b8
Made the impl_device macro more explicit about the implemented traits
...
This also converts impl_device into a procedural macro and get rid of a
lot of "magic" that was happening.
2025-08-31 00:38:58 +02:00
Dreaded_X
c5262dcf35
Update to rust 1.89 and edition 2024
2025-08-31 00:38:58 +02:00
Dreaded_X
01e88eeb3b
Use new and improved rust workflow and Dockerfile
2025-08-31 00:38:58 +02:00
Dreaded_X
d6ab38f690
Improve pre-commit hooks
2025-08-31 00:38:58 +02:00
Dreaded_X
9f3b927cb6
Update dependencies and remove unused dependencies
2025-08-31 00:38:56 +02:00
Dreaded_X
7f41132965
Switch workbench light to new color temperature light
Build and deploy / Build application (push) Successful in 5m55s
Build and deploy / Build container (push) Successful in 2m16s
Build and deploy / Deploy container (push) Successful in 34s
2025-08-22 23:27:05 +02:00
Dreaded_X
3c5bd9ffb8
Add color temperature light
2025-08-22 23:27:05 +02:00
Dreaded_X
73218bb9b9
Store brightness in f32 instead of f64
2025-08-22 23:27:05 +02:00
Dreaded_X
fe83568839
Added color temperature support with ColorSetting
2025-08-22 23:27:05 +02:00
Dreaded_X
e27412339c
Allow timeout to be a fraction of a second instead of always whole seconds
2025-08-22 23:27:05 +02:00
Dreaded_X
8f858e9b42
Removed cargo config that is no longer necessary
2025-08-22 23:27:01 +02:00
Dreaded_X
5730d9db03
Fixed struct name for temperature control
2025-08-22 02:15:26 +02:00
Dreaded_X
d9e83a49a1
Improved long press behaviour when there is no long press callback
Build and deploy / Build application (push) Successful in 3m23s
Build and deploy / Build container (push) Successful in 52s
Build and deploy / Deploy container (push) Successful in 47s
2025-01-29 00:55:00 +01:00
Dreaded_X
00cd0366fd
Added hue groups for bedroom lights controlled by hue switch
Build and deploy / Build application (push) Successful in 3m34s
Build and deploy / Build container (push) Successful in 57s
Build and deploy / Deploy container (push) Successful in 32s
2025-01-28 23:33:30 +01:00
Dreaded_X
68684d9410
Added hue groups for kitchen and living room lights controlled by hue switch
Build and deploy / Build application (push) Successful in 3m50s
Build and deploy / Build container (push) Successful in 1m21s
Build and deploy / Deploy container (push) Successful in 35s
2025-01-28 22:49:37 +01:00
Dreaded_X
746e19eb8c
Use own struct to deserialize hue switch state and added hold actions
2025-01-28 22:48:02 +01:00