Commit graph

3081 commits

Author SHA1 Message Date
Fabio Manganiello a98a5f0980
typo fix 2023-02-08 01:09:25 +01:00
Fabio Manganiello e49a0aec4d
Various improvements.
- Better synchronization logic on stop for `AsyncRunnablePlugin`.
- Fixed several thread names by dropping `prctl.set_name` in favour of
  specifying the name directly on thread creation.
- Several LINT fixes.
2023-02-08 00:46:50 +01:00
Fabio Manganiello 9d028af524
Removed last reference of SwitchPlugin 2023-02-05 23:10:35 +01:00
Fabio Manganiello 419a0cec61
More LINTing
Better prototype for `MultiLevelSwitchEntityManager.set_value`
2023-02-05 23:07:43 +01:00
Fabio Manganiello fde834c1b1
More LINT fixes + refactors 2023-02-05 22:00:50 +01:00
Fabio Manganiello 4849e14414
LINT fixes for the utils module + additional documentation 2023-02-05 18:05:41 +01:00
Fabio Manganiello b8fca97891
Default poll_interval for RunnablePlugin set to 30 seconds 2023-02-05 17:31:43 +01:00
Fabio Manganiello 06dfd1a152
Added support for more entities in switchbot 2023-02-05 15:34:50 +01:00
Fabio Manganiello 64e9bf17cf
Updated dist files 2023-02-05 14:53:36 +01:00
Fabio Manganiello 2047b9b76c
[WIP] Refactoring switchbot plugin as a runnable plugin + entity manager 2023-02-04 22:22:51 +01:00
Fabio Manganiello 65827aa0cd
Updated dist files 2023-02-04 17:36:46 +01:00
Fabio Manganiello b96838a856
Major LINT fixes/refactor for the Config class 2023-02-04 17:35:48 +01:00
Fabio Manganiello db5846d296
Add the unit to the Dimmer display value if it's available 2023-02-04 17:28:54 +01:00
Fabio Manganiello 0311d87bc3
The switch.wemo integration now extends SwitchEntityManager 2023-02-04 00:58:28 +01:00
Fabio Manganiello de2849546a
LINT fixes 2023-02-04 00:26:48 +01:00
Fabio Manganiello a160d3217e
Removed legacy get_sensor_plugins and get_switch_plugins actions 2023-02-03 22:54:42 +01:00
Fabio Manganiello a8fcbef1b5
gitignore 2023-02-03 22:49:50 +01:00
Fabio Manganiello b6814b4f16
Removed legacy Switches integration [frontend] 2023-02-03 22:49:09 +01:00
Fabio Manganiello 6ef2feea71
LINT fixes for utils plugin 2023-02-03 18:08:19 +01:00
Fabio Manganiello 3db9c58d31
[WIP] Converted switch.tplink plugin.
`switch.tplink` converted to a `RunnablePlugin` that implements
`SwitchEntityManager`.
2023-02-03 02:20:20 +01:00
Fabio Manganiello be3b99326f
[WIP] Refactoring @manages annotation into a proper EntityManager hierarchy 2023-02-02 23:21:12 +01:00
Fabio Manganiello 63d6920716
Updated dist files 2023-02-02 18:07:44 +01:00
Fabio Manganiello 59eb0742a1
s/warnings/logger.debug/ if publish_entities is called with no engine registered 2023-01-29 21:52:12 +01:00
Fabio Manganiello 8aff181956
Merged zwave.mqtt backend into the zwave.mqtt plugin 2023-01-29 02:34:48 +01:00
Fabio Manganiello 0e56d0fff6
Double-check if self._thread != None on stop on the ntfy thread
Race conditions may occur here
2023-01-27 22:12:34 +01:00
Fabio Manganiello 341e749d23
Merged the zigbee.mqtt backend into the plugin.
- Deprecated the old `zigbee.mqtt` backend
- Black style for the `mqtt` backend
2023-01-27 01:59:57 +01:00
Fabio Manganiello afdeb91f66
Implemented remaining supported entities for the smartthings integration 2023-01-26 22:10:02 +01:00
Fabio Manganiello 334ccc35a2
Don't serialize I/O wrappers
This removes warnings on `config.get`, where the `logging` configuration
key may also contain the current logging stream and we end up with a
JSONDecodeError when trying to serialize it.
2023-01-25 00:52:37 +01:00
Fabio Manganiello ba31dff06a
Major refactor + fixes for smartthings 2023-01-24 23:56:28 +01:00
Fabio Manganiello 147f36c86c
All Sensor instances should have is_read_only=True by default 2023-01-22 21:05:14 +01:00
Fabio Manganiello fd76642082
Added Volume and Muted entities 2023-01-22 21:04:46 +01:00
Fabio Manganiello bb637a1411
Defined a unique stop_timeout (default=5) for RunnablePlugin 2023-01-22 14:28:16 +01:00
Fabio Manganiello 6d4cf64253
More work on smartthings.
- Added support for `Battery` entities
- Fixed saturation range for `Light` entities
- Parsing `min`/`max`/`unit` from the status attributes, if available
2023-01-22 01:01:47 +01:00
Fabio Manganiello ddd516a677
Added polling/RunnablePlugin logic to smartthings 2023-01-22 00:09:10 +01:00
Fabio Manganiello dabbe031ab
Don't show the entity modal unless the user clicks on the name or icon 2023-01-21 23:46:38 +01:00
Fabio Manganiello 32e4e60579
A more robust handling of events in the zwave.mqtt backend 2023-01-21 23:44:51 +01:00
Fabio Manganiello 3940288396
Use the new bus notification helpers 2023-01-21 16:59:18 +01:00
Fabio Manganiello 241670c9d0
Handle parent/child update events through broadcast bus events 2023-01-21 16:58:28 +01:00
Fabio Manganiello 3923a09831
- Expose methods on the bus module to publish/subscribe to notifications and entity updates
- Removed some redundant `pass` statements in Z-Wave derived event classes
2023-01-21 16:56:27 +01:00
Fabio Manganiello fb562bb415
Propagate the @update event to the parent entities 2023-01-21 14:55:06 +01:00
Fabio Manganiello 4d762b81dc
EntityUpdateEvent traces can now be logged on INFO level
The EntityUpdateEvents generated by light.hue are now less noisy.
2023-01-21 14:50:05 +01:00
Fabio Manganiello 247912799f
Refactored light.hue integration so EntityUpdateEvents won't be triggered on every call to _get_lights 2023-01-21 14:48:33 +01:00
Fabio Manganiello dfb13127ee
Added MotionSensor entities 2023-01-21 14:47:18 +01:00
Fabio Manganiello a892bad34c
Refactoring smartthings plugin to support more entity types 2023-01-21 14:09:26 +01:00
Fabio Manganiello 22b8b03cb2
Refactored EntityIcon component 2023-01-15 20:02:50 +01:00
Fabio Manganiello 9a5e2899e8
Support for external_url and image_url on entities 2023-01-15 20:01:47 +01:00
Fabio Manganiello 2cc5e3f726
UI tweaks 2023-01-15 15:46:25 +01:00
Fabio Manganiello 9e4fbc6a21
Defined the collapsed data property on EntityMixin level 2023-01-15 15:29:26 +01:00
Fabio Manganiello 78e250186b
Deallocate the color converter when the light component is unmounted 2023-01-15 15:25:04 +01:00
Fabio Manganiello e9371ac5d0
Improved entity collapse logic
- Toggle collapsed state also if clicked on the gap between the entity
  name and the right edge, instead of opening the entity modal. The
  entity configuration modal should open only when clicking on the
  entity name or icon (and these should be highlighted on hover as links
  as well).

- The collapsed state update should be propagated to the wrapped
  component as well, if applicable.
2023-01-15 15:03:53 +01:00