Fabio Manganiello
a72c32cb00
Added battery entity support to system
plugin.
2023-04-23 00:41:21 +02:00
Fabio Manganiello
b3440ab96b
Added support for fan sensors on the system
plugin.
2023-04-23 00:08:27 +02:00
Fabio Manganiello
45d5f439be
Added support for system temperature sensor entities.
2023-04-22 22:42:11 +02:00
Fabio Manganiello
1b048e1952
s/net_connections/network_connections/g
2023-04-22 17:19:24 +02:00
Fabio Manganiello
374f936c1f
Merged network_stats
into NetworkInterface
model.
2023-04-22 17:19:24 +02:00
Fabio Manganiello
f4036be52b
Extracted and refactored more common elements of the Entity components.
2023-04-22 17:19:23 +02:00
Fabio Manganiello
e213941791
s/net_io_counters/network_info/g
2023-04-22 17:19:23 +02:00
Fabio Manganiello
977b55dea9
Merged network addresses into NetworkInterface
model.
2023-04-22 17:19:23 +02:00
Fabio Manganiello
ebe79ac29a
Refactored system schema dataclasses.
...
- `percent_field` should be declared on `platypush.schemas.dataclasses`
level, since it's not specific to the `system` plugin.
- Added a common `SystemBaseSchema` that takes care of calling
`_asdict()` if the object is passed as a `psutil` object instead of a
dict.
2023-04-22 17:19:23 +02:00
Fabio Manganiello
2d618188c8
Print the full exception stack trace if .status
fails.
2023-04-22 17:19:23 +02:00
Fabio Manganiello
b3a0896485
Converted NetworkConnection
schema/response.
2023-04-22 17:19:22 +02:00
Fabio Manganiello
d473b5d836
Make the recursive entity merger/column set logic more resilient against ObjectDeletedError
2023-04-22 10:40:30 +02:00
Fabio Manganiello
98a300c4b1
Added NetworkInterface
entities to system
plugin.
...
Plus, `platypush.schemas.system` has now been split into multiple
submodules to avoid a single-file mega-module with all the system
schemas definitions.
2023-04-21 00:45:15 +02:00
Fabio Manganiello
44b8fd4b34
Support for disk
entities in the system
integration.
2023-04-20 16:26:51 +02:00
Fabio Manganiello
6b03451386
Better responsive alignment for the collapse toggler.
2023-04-20 16:26:05 +02:00
Fabio Manganiello
e8c96ad35d
Added convertTime
utility function
2023-04-20 02:27:58 +02:00
Fabio Manganiello
153d03d43f
Moved CPU percentage on the level of the CPU entity instead of a child entity.
2023-04-19 01:48:05 +02:00
Fabio Manganiello
4ebfbf3851
Added memory stats entities.
2023-04-19 01:31:11 +02:00
Fabio Manganiello
0073239a40
Support for CPU load_average
entity.
2023-04-18 18:26:02 +02:00
Fabio Manganiello
1cee0459cf
Added CpuFrequency
entity to system
.
2023-04-18 01:49:36 +02:00
Fabio Manganiello
a5b0a524f6
Added CpuStats
entity to system
.
2023-04-18 01:19:06 +02:00
Fabio Manganiello
b4fbd3e915
Added percent
entity to cpu
.
2023-04-17 02:25:04 +02:00
Fabio Manganiello
711cc2b239
Removed (now unused) CpuTimesResponse
.
2023-04-17 02:25:03 +02:00
Fabio Manganiello
b9286f50b0
Added support for CpuTimes
as an entity of the system
plugin.
...
Also, there is now a single `Cpu` entity being exported, with a nested
hierarchy structured like:
```
cpu
-> cpu_info
-> cpu_times
-> idle
-> user
-> system
-> ...
-> cpu_load
-> ...
```
2023-04-17 02:25:03 +02:00
Fabio Manganiello
4842c1911b
Frontend entities should have a reference to allEntities
.
...
There are probably more optimal ways of achieving this other than
passing a reference to the full list of entities to each of the
entities, such as running a BFS to recursively expand all the entities
within the child hierarchy of an entity.
This is needed because the entity needs to know which entities aren't
direct children, but are two or more layers down in the hierarchy, so
they should be passed to their own child entities.
2023-04-17 02:25:03 +02:00
Fabio Manganiello
6e65783feb
Added schemas for CpuTimes
.
2023-04-17 02:25:03 +02:00
Fabio Manganiello
e810025a6d
Added Cpu
and CpuTimes
entities.
2023-04-17 02:25:03 +02:00
Fabio Manganiello
65481dc6b4
Added PercentSensor
entity type.
2023-04-17 02:25:02 +02:00
Fabio Manganiello
e7f64843a5
Added include_children
parameter to _merge_columns
.
...
We need to recursively merge the columns of children entities if a child
entity isn't a leaf node.
2023-04-17 02:25:02 +02:00
Fabio Manganiello
b43017ef01
Refactoring the system
plugin to support entities.
2023-04-17 02:25:02 +02:00
Fabio Manganiello
3e3c48d779
Defined new entity and schema for CpuInfo.
2023-04-17 02:25:02 +02:00
Fabio Manganiello
186a21f715
Added CpuInfo entity frontend components.
2023-04-17 02:25:01 +02:00
Fabio Manganiello
74aeca5c34
Trigger a sensor event only if abs(old_data - new_data) > tolerance
...
Not if abs(old_data - new_data) >= tolerance, otherwise events will
always be triggered when tolerance=0, even if the data hasn't changed.
2023-04-17 02:25:01 +02:00
Fabio Manganiello
4c19535612
A more resilient logic on entity copy/serialization to prevent ObjectDeletedError
2023-04-13 17:16:21 +02:00
Fabio Manganiello
a499b7bc2f
Deprecated poll_seconds
in light.hue
.
...
For sake of naming consistency with other plugins, we should use
`poll_interval` instead.
2023-04-03 01:36:12 +02:00
Fabio Manganiello
10955dad72
Fixed some documentation glitches in switchbot
.
2023-04-03 01:36:12 +02:00
Fabio Manganiello
f9ce4b75e8
Updated docs
2023-04-03 01:36:12 +02:00
Fabio Manganiello
d5de38975d
generate_missing_docs 2.0
2023-04-03 01:36:12 +02:00
Fabio Manganiello
6e5f746dbe
Removed deprecated gpio.sensor
base plugin.
...
Now all the plugins that used to implement it have been moved to
`SensorPlugin`.
2023-04-03 01:36:12 +02:00
Fabio Manganiello
8852cb8db4
Fixed new class name for sensor.mcp3008
plugin.
2023-04-03 01:36:12 +02:00
Fabio Manganiello
d5ddc0c65e
Migrated arduino
integration to the new SensorPlugin
API.
2023-04-03 01:36:12 +02:00
Fabio Manganiello
cf16076bce
Added icons for new entity sensor sources.
2023-04-03 01:36:11 +02:00
Fabio Manganiello
ac2ec58f89
Migrated mcp3008
integration to the new SensorPlugin
API.
2023-04-03 01:36:11 +02:00
Fabio Manganiello
45e5ca47e7
Fallback for sensor._has_changes
2023-04-02 15:38:49 +02:00
Fabio Manganiello
962c55937d
Migrated sensor.distance
integration.
...
Remove `backend.sensor.distance` and `gpio.sensor.distance`. They are
now replaced by the `sensor.hcsr04` integration, which is compatible
with the new `SensorPlugin` API.
2023-04-02 14:20:12 +02:00
Fabio Manganiello
92578a17c9
Added small docstring portion
2023-04-02 13:55:00 +02:00
Fabio Manganiello
beff88986a
Migrated dht
integration.
...
Removed `backend.sensor.dht` and `gpio.sensor.dht`. They have been
merged into the new `sensor.dht` integration, which supports the new
`SensorPlugin` API.
2023-04-02 13:38:53 +02:00
Fabio Manganiello
8f604445a2
Migrated old sensor.accelerometer
integration.
...
Removed `backend.sensor.accelerometer` and `gpio.sensor.accelerometer`.
The logic has now been merged in the new `sensor.lis3dh` integration,
which is compatible with the new `SensorPlugin` API.
2023-04-02 13:22:28 +02:00
Fabio Manganiello
44cf25271c
Migrated pmw3901
integration.
...
Removed legacy `backend.sensor.motion.pmw3901` and
`gpio.sensor.motion.pmw3901`. They have been merged in the new
`sensor.pmw3901` integration, compatible with the new `SensorPlugin`
API.
2023-04-02 12:36:08 +02:00
Fabio Manganiello
fcdda40c4a
Update the _last_measurement
only if some events were processed from the new data.
2023-04-02 12:09:45 +02:00