Commit Graph

199 Commits

Author SHA1 Message Date
d11e79cdfa Devices now keep type in lua
All checks were successful
Build and deploy / Build application (push) Successful in 4m5s
Build and deploy / Build container (push) Successful in 1m9s
Build and deploy / Deploy container (push) Successful in 37s
2024-08-08 01:36:11 +02:00
23e78fe5a7 Small cleanup
All checks were successful
Build and deploy / Build application (push) Successful in 4m43s
Check / Run checks (push) Successful in 2m24s
Build and deploy / Build container (push) Successful in 58s
Build and deploy / Deploy container (push) Has been skipped
2024-07-30 00:06:49 +02:00
14e14ca479 No need for Arc<RwLock<_>> inside the device wrapper anymore
All checks were successful
Build and deploy / Build application (push) Successful in 4m27s
Check / Run checks (push) Successful in 2m14s
Build and deploy / Build container (push) Successful in 55s
Build and deploy / Deploy container (push) Has been skipped
2024-07-26 01:17:12 +02:00
3fd8dddeb2 No more cast_mut() 2024-07-26 00:37:53 +02:00
6c797820dc Updated to newest rust nightly 2024-07-26 00:25:49 +02:00
2cf4e40ad5 Devices are now clonable 2024-07-26 00:25:30 +02:00
98ab265fed Improved Lua macro situation
All checks were successful
Build and deploy / Build application (push) Successful in 6m20s
Check / Run checks (push) Successful in 2m19s
Build and deploy / Build container (push) Successful in 1m16s
Build and deploy / Deploy container (push) Has been skipped
2024-07-25 00:49:10 +02:00
006320be18 Added trash light automation
All checks were successful
Build and deploy / Build application (push) Successful in 3m49s
Check / Run checks (push) Successful in 2m16s
Build and deploy / Build container (push) Successful in 49s
Build and deploy / Deploy container (push) Successful in 32s
2024-07-15 00:37:24 +02:00
3b8f15eb88 Fixed activating scene
All checks were successful
Build and deploy / Build application (push) Successful in 3m51s
Check / Run checks (push) Successful in 2m37s
Build and deploy / Build container (push) Successful in 1m8s
Build and deploy / Deploy container (push) Successful in 36s
2024-07-10 02:02:43 +02:00
f7b709a2c7 Added temperature to air_filter
All checks were successful
Build and deploy / Build application (push) Successful in 3m49s
Check / Run checks (push) Successful in 2m11s
Build and deploy / Build container (push) Successful in 56s
Build and deploy / Deploy container (push) Successful in 37s
2024-07-09 02:37:33 +02:00
bab85a092e SpeedValues -> SpeedValue 2024-07-09 02:36:39 +02:00
758500a071 Cleanup 2024-07-09 00:00:00 +02:00
9aa16e3ef8 Started actually using the google home trait macro 2024-07-09 00:00:00 +02:00
794b8eef19 Quickly hacked in is_on function on devices in lua
All checks were successful
Build and deploy automation_rs / Build automation_rs (push) Successful in 5m48s
Build and deploy automation_rs / Build Docker image (push) Successful in 47s
Build and deploy automation_rs / Deploy Docker container (push) Successful in 30s
In order to get feature parity with pre-lua the is_on function is
manually implemented on all wrapped devices in lua
This implementation will need to be improved in the future.
2024-05-07 00:05:38 +02:00
c7fc25d239 Fix: Scheduled function can not run async functions
Since Lua is not Send, this turned out to be a bit more complicated.
In order to make it work the async function needs to be pinned to a
single thread.
It works now, but the implementation looks a bit messy. Not sure it can
be improved through.
2024-05-07 00:05:38 +02:00
bf3d757710 Added lua function to get the current hostname
This makes it possible to set options depending on what machine we are
running
2024-05-07 00:05:38 +02:00
02d6630ac6 Started work on reimplementing schedules 2024-05-07 00:05:37 +02:00
456d7a359b Fixed spelling mistakes 2024-05-07 00:05:37 +02:00
2ff59872b2 Moved last config items to lua + small cleanup 2024-05-07 00:05:37 +02:00
2a3b14267b Fixed visibility of device configs 2024-05-07 00:05:37 +02:00
44a40d4dfa LuaDevice macro now uses LuaDeviceCreate trait to create devices from configs 2024-05-07 00:05:37 +02:00
9f636a2572 mqtt client is now created in lua 2024-05-07 00:05:37 +02:00
fcd0b370d6 DeviceManager no longer handles subscribing and filtering topics, each device has to do this themselves now 2024-05-07 00:05:37 +02:00
3e4ea8952a Improved how devices are created, ntfy and presence are now treated like any other device 2024-05-07 00:05:36 +02:00
5069d1b0e7 Moved schedule config from yml to lua 2024-05-07 00:05:36 +02:00
3225dbdda9 Set lua warning function 2024-05-07 00:05:36 +02:00
55237a2ba2 Improved the internals of the LuaDeviceConfig macro and improve the
usability of the macro
2024-05-07 00:05:36 +02:00
024b9c9dbc Use helper types to process config input into the right type 2024-05-07 00:05:36 +02:00
51f689b199 Added helper type to convert from ip addr to socketaddr with the correct port 2024-05-07 00:05:36 +02:00
f4a1b507e5 Everything needed to construct a new device is passed in through lua 2024-05-07 00:05:36 +02:00
bfc73c7bd3 Device config is now done through lua 2024-05-07 00:05:36 +02:00
f50bc4bd0c Replaced impl_cast with a new and improved trait
With this trait the impl_cast macros are no longer needed, simplifying
everything.
This commit also improved how the actual casting itself is handled.
2024-05-07 00:05:32 +02:00
3689a52afd Replaced impl_cast with a new and improved trait
All checks were successful
Build and deploy automation_rs / Build automation_rs (push) Successful in 4m0s
Build and deploy automation_rs / Build Docker image (push) Successful in 52s
Build and deploy automation_rs / Deploy Docker container (push) Successful in 28s
With this trait the impl_cast macros are no longer needed, simplifying
everything.
This commit also improved how the actual casting itself is handled.
2024-05-05 00:33:21 +02:00
cde9654a78 Fix: Memory leak
All checks were successful
Build and deploy automation_rs / Build automation_rs (push) Successful in 4m19s
Build and deploy automation_rs / Build Docker image (push) Successful in 1m3s
Build and deploy automation_rs / Deploy Docker container (push) Successful in 31s
It turns out that console-subscriber has a memory leak, this is fixed in
main, but there has not been a new release yet. So for now we go back
to tracing subscriber.
2024-05-03 01:07:24 +02:00
40ba4c47cf Fix: contact sensor turns off lights even if they were already on
All checks were successful
Build and deploy automation_rs / Build automation_rs (push) Successful in 3m57s
Build and deploy automation_rs / Build Docker image (push) Successful in 45s
Build and deploy automation_rs / Deploy Docker container (push) Successful in 29s
2024-04-26 06:00:53 +02:00
8b0c1ae352 Report AirFilter humidity
All checks were successful
Build and deploy automation_rs / Build automation_rs (push) Successful in 3m57s
Build and deploy automation_rs / Build Docker image (push) Successful in 44s
Build and deploy automation_rs / Deploy Docker container (push) Successful in 29s
2024-04-23 02:47:10 +02:00
476688e3cb Always turn all the lights on when a contact sensor is activated, not matter the previous state
All checks were successful
Build and deploy automation_rs / Build automation_rs (push) Successful in 7m25s
Build and deploy automation_rs / Build Docker image (push) Successful in 2m45s
Build and deploy automation_rs / Deploy Docker container (push) Successful in 37s
2024-03-05 20:06:00 +01:00
73a2b077ed Fmt: Added cargofmt config and reformatted files
All checks were successful
continuous-integration/drone/push Build is passing
2023-11-20 23:27:48 +01:00
5333d8042f Fixed formatting
All checks were successful
continuous-integration/drone/push Build is passing
2023-11-17 01:10:45 +01:00
db17b68e90 Feature: Schedule devices turning on/off
All checks were successful
continuous-integration/drone/push Build is passing
2023-11-17 00:01:13 +01:00
dd4be4a2ee Switched from toml to yaml for configuration
Some checks failed
continuous-integration/drone/push Build is failing
2023-11-05 22:41:48 +01:00
b12b76bd50 Added Air Filter support
All checks were successful
continuous-integration/drone/push Build is passing
2023-10-07 05:34:33 +02:00
15cde02a8d You can now add remotes to IkeaOutlets
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-24 02:21:16 +02:00
1ba20c3390 You can now add remotes to HueGroups 2023-08-24 02:20:58 +02:00
5d6faddce1 Increased mqtt queue size as a temporary fix 2023-08-24 01:48:10 +02:00
9628b8a94b HueLight is now HueGroup and uses a scene to turn the light on, the contact sensor will also not override the current light state if it is already on
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-18 05:56:45 +02:00
044c38ba86 More refactoring 2023-08-18 03:07:16 +02:00
3134891751 Adjusted internal washer hysteresis to prevent false positives
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-17 01:47:45 +02:00
cff9cb4bf6 Further improvements to how devices are created 2023-08-17 01:47:05 +02:00
b1506f8e63 Improved the way devices are instantiated from their respective configs
All checks were successful
continuous-integration/drone/push Build is passing
2023-08-16 02:17:21 +02:00