Commit Graph

43 Commits

Author SHA1 Message Date
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
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
9aa16e3ef8
Started actually using the google home trait macro 2024-07-09 00:00:00 +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
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
55237a2ba2
Improved the internals of the LuaDeviceConfig macro and improve the
usability of the macro
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
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
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
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
e38c5eed31
AudioSetup now takes the name of two already created devices and stores a reference to the devices instead of creating and owning the devices directly 2023-08-14 01:56:00 +02:00
522fe27f11
Converted google home traits to be async
Some checks failed
continuous-integration/drone/push Build is failing
2023-08-11 03:46:44 +02:00
40c0ac5144
Moved quasi-devices into the devices module and made event related device traits part of the event module
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-24 04:28:17 +02:00
28ce9c9d82
Moved mqtt messages to a seperate file 2023-04-24 02:50:30 +02:00
0ad42c029e
Small refactor related to device creation
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-14 22:35:15 +02:00
1a9d99fed9
Moved traits into seperate module 2023-04-14 22:34:40 +02:00
b7329b58ee
Everything is now implemented as a Device using device_traits with all events going through a single place
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-14 05:46:04 +02:00
72ab48df42
The device create function is now standarized using a trait
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-13 05:46:17 +02:00
f4c1ac5c9b
Moved most config structs to be in the same file as what they are for 2023-04-13 05:12:39 +02:00
11aa15b59d
Moved the mqtt topic check up one leve into Devices
Some checks failed
continuous-integration/drone/push Build is failing
2023-04-12 04:49:45 +02:00
92c8f3074f
Devices now handles subscribing to mqtt topics 2023-04-12 04:37:16 +02:00
b54c9512b9
Improved impl_cast and made all traits Sync + Send + 'static
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-10 23:51:22 +02:00
3645b53f7c
Applied rust fmt
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-10 01:33:39 +02:00
3613c2cbdf
Changed how TODO notes are marked to properly highlight in vim 2023-04-09 23:01:21 +02:00
6c8b73f60f
Use format macro instead of directly concating
All checks were successful
continuous-integration/drone/push Build is passing
2023-01-20 16:44:49 +01:00
a0cefa8302
Improved error handling
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone Build is passing
2023-01-18 22:37:57 +01:00
06389d83f7 Use &str instead of String whenever possible 2023-01-12 23:43:45 +01:00
13f5c87c03 Improved error handling 2023-01-12 02:20:09 +01:00
220c68cd65 Converted more of the codebase to async 2023-01-10 00:37:13 +01:00
5b9d24e82f Switched to channels for communication between different parts of the code 2023-01-09 23:50:50 +01:00
21b96c2925 Added OnPresence handler for AudioSetup 2023-01-07 05:06:14 +01:00
a638de42c1 AudioSetup now stores children as OnOff instead of Device as that is all that is required 2023-01-07 05:00:59 +01:00
99ff60a505
AudioSetup now takes two devices that implement the OnOff trait instead of being tied to KasaOutlet 2023-01-06 23:24:25 +01:00
47afda8dee
Improved how mqtt topics are handled 2023-01-06 05:25:39 +01:00
d0c92e8e18
Changed some logging 2023-01-05 03:01:31 +01:00
69abaf98d7
Switched to proper Ipv4Addr type 2023-01-05 02:09:36 +01:00
cfd10a7daf
Refactored how we deal with blocking code and added AudioSetup 2023-01-03 05:26:00 +01:00