bf75eb73ac
Added an abstract base SensorDataEvent
for sensor events.
2023-03-31 22:51:35 +02:00
6a3ade3304
Added common.sensors
package.
...
The package contains the base types and constants shared across
sensor-based integrations.
2023-03-31 22:50:47 +02:00
42d468c895
get_lock
should raise a TimeoutError if lock.acquire
is False
2023-03-31 22:31:32 +02:00
9693becb9e
Removed LGTM badges from the README.
...
LGTM is now merged into Github and the badges are no longer available.
2023-03-31 14:31:45 +02:00
7bdd877e49
Support the binary
flag both on serial.read
and serial.write
.
2023-03-31 14:31:45 +02:00
1efaff878e
Rewritten serial
plugin.
...
`backend.serial` has been removed and the polling logic merged into the
`serial` plugin.
The `serial` plugin now supports the new entity engine as well.
2023-03-31 14:31:45 +02:00
4f15758de9
black fixes
2023-03-31 14:31:38 +02:00
2a8a3f4394
Removed legacy sensor.distance.vl53l1x backend
2023-03-31 14:26:14 +02:00
a3e8c7c155
Rewritten vl53l1x integration as a runnable plugin with entity support
2023-03-31 14:25:05 +02:00
226034946f
Added distance_sensor
entity
2023-03-31 14:22:28 +02:00
6fb362a6fb
gpio.sensor.distance.vl53l1x -> sensor.distance.vl53l1x
2023-03-31 14:21:48 +02:00
e198f2a175
Replaced .title
in get_plugin
with .upper
on the first character.
...
`str.title` capitalizes any alphabetic letter after any non-alphabetic
letter. That's a problem for Platypush plugins' naming convention,
because plugins like `sensor.distance.vl53l1x` may be broken into
`sensor.distance.vl53.l1.x`.
2023-03-31 14:09:43 +02:00
c2f9ebf4ed
Updated dist files
2023-03-27 01:47:29 +02:00
2781eb1fb1
Merge branch 'master' into 29-generic-entities-support
2023-03-27 00:36:50 +02:00
792a65df8b
Merge pull request '[ #240 ] Migrated clipboard
plugin from pyperclip
to pyclip
' ( #241 ) from 240-migrate-clipboard-integration-to-pyclip into master
...
Reviewed-on: platypush/platypush#241
2023-03-26 23:56:51 +02:00
7a368ebbb8
[ #240 ] Migrated clipboard
plugin from pyperclip
to pyclip
.
...
Closes : #240
2023-03-26 23:52:15 +02:00
bce2fdee25
Replaced deprecated asyncio.wait([])
with asyncio.gather(*[])
.
2023-03-26 23:15:53 +02:00
cf91ab90df
Increased default width of nav
on desktop+
2023-03-26 23:10:46 +02:00
c0251ef2f7
s/instance/instance_name/g
in LinodeInstanceStatusChanged
.
...
For sake of consistency - we also have `instance_id` and having the
instance name assigned to the `instance` attribute is quite ambiguous.
2023-03-26 22:58:20 +02:00
efe400f921
Fixed maxdepth
attribute in generate docs.
2023-03-26 22:55:22 +02:00
6d674fef21
Fixed small JSON syntax error in the docstring of ntfy.send_message
.
2023-03-26 22:53:42 +02:00
30124e7cef
Fixed docstring of Event.__init__
.
2023-03-26 22:53:11 +02:00
276aff757b
Removed circular dependency.
...
Workaround for the circular dependency between
`platypush.entities.bluetooth` and `platypush.plugins.bluetooth.model`.
Unentangling the circular dependency would require way too much work,
since the entity model provides several helpers and properties that
depend on the plugin's model.
The workaround in this commit is to simply push those imports down in
the methods that use them, so they won't be imported until those methods
are called, as well as removing some type annotations that depended on
those objects.
2023-03-26 15:30:57 +02:00
3bb2336b3a
Updated docs
2023-03-26 15:13:48 +02:00
89bc54da22
Updated dist files
2023-03-26 12:30:46 +02:00
295758bb20
Added frontend components for cloud instances.
2023-03-26 12:27:17 +02:00
bc2730c841
Rewritten linode
integration.
...
- Support for cloud instances as native entities.
- Using Marshmallow dataclasses+schemas instead of custom `Response`
objects.
- Merge `linode` backend into `linode` plugin.
2023-03-26 11:23:33 +02:00
4b9c5a0203
Support for schema EnumField
.
2023-03-26 03:48:32 +02:00
026662f6b6
Added base schema for Marshmallow dataclasses.
2023-03-26 03:47:44 +02:00
7bbae55e44
platypush.entities._managers
-> platypush.entities.managers
.
...
It's better for entity managers to be stored in their own public
package, instead of cluttering too much the namespace of their parent
package.
2023-03-26 03:46:06 +02:00
f5d9895521
Added marshmallow_dataclass
to the requirements.
2023-03-26 03:44:57 +02:00
89d85baa6d
Support for implicit serialization of Enum values in JSONAble.
2023-03-26 03:43:04 +02:00
a71017df33
Updated web app files
2023-03-24 16:45:55 +01:00
567e9d4e21
Removed legacy bluetooth
backends.
...
No replacements have been made for the OBEX backends (push and file
services). PyOBEX is too broken and unmaintained, and there are too many
poorly documented steps required to get an unprivileged user to run an
SDP service.
2023-03-24 16:41:30 +01:00
3c355352c5
Using the new StoppableThread
API.
2023-03-24 16:39:30 +01:00
5ebf4e912e
Added wait_stop
and shoud_stop
methods to StoppableThread
.
2023-03-24 16:05:18 +01:00
998793e94f
Added OBEX_FILE_TRANSFER
constant to directory
stub.
2023-03-24 15:41:20 +01:00
4b4db5b3c7
Added StoppableThread
common interface.
2023-03-24 15:40:16 +01:00
2f49ddf33a
Fallback logic that uses DBus to disconnect from a BT device.
...
This logic will be used if the connection wasn't opened by the current
process and therefore a call to DBus is required to terminate it.
2023-03-24 01:57:05 +01:00
913ef6f8cd
Refresh BluetoothDevice.reachable
when a device is found/lost.
2023-03-24 01:56:19 +01:00
d46d4e2300
Added support for Bluetooth devices blacklist.
...
Based on device address, name or manufacturer.
2023-03-24 01:52:39 +01:00
0cebcf4f9b
switchbot.bluetooth
integration migrated to a bluetooth
plugin.
2023-03-23 17:46:54 +01:00
4fac110bb8
Added bluetooth.set
method, whose execution is delegated to the plugins.
2023-03-23 17:45:02 +01:00
cd219f44c4
Pass the list of plugins when creating Bluetooth managers.
2023-03-23 17:42:16 +01:00
43289a3b55
Scan always at least for 10 seconds before failing on get_device
.
2023-03-23 17:41:37 +01:00
6267943786
Wrap BleakError
exceptions into AssertionError
.
2023-03-23 17:40:30 +01:00
d6805a8b18
Added support for custom Bluetooth device plugins.
2023-03-23 17:10:37 +01:00
af125347d6
If no matching services are found when connecting to a device, default to BLEManager.
...
GATT characteristics are not necessarily exposed as services.
2023-03-23 13:00:26 +01:00
d1cd6dd2af
get_plugin with reload=True should stop the existing plugin if it's running
2023-03-23 01:11:54 +01:00
a2a5fce6cb
Added Apple Continuity
to the list of blacklisted manufacturers/models
2023-03-22 22:55:19 +01:00