Commit Graph

4033 Commits

Author SHA1 Message Date
Fabio Manganiello e58f5d2fa1
[Camera] The `wait_for_either` barrier should be enabled on streaming by default.
continuous-integration/drone/push Build is passing Details
`camera.pi*` plugins are an exception, as they handle the lifecycle of
the camera streaming process through the `picamera*` libraries.

Otherwise, the streaming thread should explicitly wait on either the
plugin stop or streaming stop events and exit accordingly, or the camera
thread may be streaming indefinitely.
2024-02-26 01:28:25 +01:00
Fabio Manganiello 56a04975ae
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing Details
2024-02-26 00:20:42 +00:00
Fabio Manganiello 9df08de24f
[Carousel UI] Replaced `blur` filter with `brightness` for background.
continuous-integration/drone/push Build is passing Details
It's much less expensive on the CPU side, and the effect is similar.

Closes: #359
2024-02-26 01:18:51 +01:00
Fabio Manganiello 18f2c26725
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing Details
2024-02-25 22:12:19 +00:00
Fabio Manganiello 195a4b58b9
[chore] Updated caniuse db
continuous-integration/drone/push Build is passing Details
2024-02-25 23:10:15 +01:00
Fabio Manganiello 4ebc29a151
[UI] Added icon for `camera.pi.legacy` web panel. 2024-02-25 23:10:14 +01:00
Fabio Manganiello b246fbe328
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing Details
2024-02-25 22:08:34 +00:00
Fabio Manganiello 31528e3c0e
[UI] Added `camera.pi.legacy` web panel.
continuous-integration/drone/push Build is passing Details
2024-02-25 23:06:24 +01:00
Fabio Manganiello b6bd86794b
[Automatic] Updated components cache
continuous-integration/drone/push Build is passing Details
2024-02-25 20:42:51 +00:00
Fabio Manganiello 9445bd4dc4
Added `config.yaml` example/docs for camera streaming configuration.
continuous-integration/drone/push Build is passing Details
2024-02-25 21:39:12 +01:00
Fabio Manganiello 1c14450781 FIX: Remove `wait_for_either` barrier from the streaming thread.
continuous-integration/drone/push Build is passing Details
The `_accept_client` logic will be executed anyway at the next
iteration, unless the server socket is closed - in that case, the thread
will fail and exit anyway.

The `wait_for_either` barrier in the streaming thread may instead
prevent other connections from being established after the first one is
closed.
2024-02-25 16:02:52 +01:00
Fabio Manganiello 4c92bdd11c
FIX: Handle `stop_streaming` exceptions in the main loop of the camera plugin.
continuous-integration/drone/push Build is passing Details
Otherwise camera process teardown errors may bubble up and prevent the
plugin from restarting the streaming.
2024-02-24 21:36:08 +01:00
Fabio Manganiello 8999a226b1
[WIP] Updated documentation for `camera.pi`.
continuous-integration/drone/push Build is passing Details
2024-02-24 21:16:43 +01:00
Fabio Manganiello e46704010b
[WIP] Rewritten `camera.pi.legacy` plugin.
continuous-integration/drone/push Build is passing Details
2024-02-24 14:07:07 +01:00
Fabio Manganiello 9ad9bd20e4
Added `stream_on_start` argument to `camera` plugins.
continuous-integration/drone/push Build is passing Details
It replaces the functionalities of the deprecated `camera` backends.
2024-02-24 01:31:05 +01:00
Fabio Manganiello 9cf95125a6 [WIP] Added streaming support to camera.pi using new picamera2 API
continuous-integration/drone/push Build is passing Details
2024-02-22 22:52:52 +01:00
Fabio Manganiello 659c33837e [WIP] Using new picamera2 module for camera.pi, and moved old picamera integration to camera.pi.legacy
continuous-integration/drone/push Build is passing Details
2024-02-19 00:07:29 +00:00
Fabio Manganiello d0f1ee0582
[Automatic] Updated components cache
continuous-integration/drone/push Build is passing Details
2024-02-16 23:03:08 +00:00
Fabio Manganiello c59446fdb1
Fixed setting of `output_file` on `FfmpegWriter`.
continuous-integration/drone/push Build is passing Details
Also, fixed parameters passed to camera
writer objects.
2024-02-17 00:01:47 +01:00
Fabio Manganiello a38ef6bc7a Workaround for possible `multiple camera parameter` error.
continuous-integration/drone/push Build was killed Details
2024-02-15 00:51:04 +00:00
Fabio Manganiello 191d7a75ea
[Automatic] Updated components cache
continuous-integration/drone/push Build is passing Details
2024-02-06 22:29:48 +00:00
Fabio Manganiello 8f7aad2af7
google-assistant-sdk is no longer a dependency for the Google Assistant integration
continuous-integration/drone/push Build is passing Details
2024-02-06 20:08:57 +01:00
Fabio Manganiello 48756e6287
[Automatic] Updated components cache
continuous-integration/drone/push Build is passing Details
2024-02-05 01:19:21 +00:00
Fabio Manganiello 2b595623b3
[#348] Converted `gps` backend into a plugin.
continuous-integration/drone/push Build is passing Details
Closes: #348
2024-02-05 02:16:02 +01:00
Fabio Manganiello 8351463a11
[Automatic] Updated components cache
continuous-integration/drone/push Build is passing Details
2024-02-03 21:11:01 +00:00
Fabio Manganiello c8944feca4 [#348] Merge + refactor for the `mail` backend/plugin (#362)
continuous-integration/drone/push Build is passing Details
Closes: #348

Reviewed-on: #362
2024-02-03 22:09:40 +01:00
Fabio Manganiello 5badc935ac
[Automatic] Updated components cache
continuous-integration/drone/push Build is passing Details
2024-02-03 21:08:07 +00:00
Fabio Manganiello 7d362cae1a
FIX: Redis pub/sub error can also raise a `ValueError` on close.
continuous-integration/drone/push Build is passing Details
2024-02-03 22:06:36 +01:00
Fabio Manganiello 39d5c48088
[Automatic] Updated components cache
continuous-integration/drone/push Build is passing Details
2024-01-19 20:59:26 +00:00
Fabio Manganiello 746423a113 [#356] Merged `adafruit.io` plugin and backend. 2024-01-19 20:58:35 +00:00
Fabio Manganiello f21a1dd8e6
[Automatic] Updated components cache
continuous-integration/drone/push Build is passing Details
2024-01-19 02:15:39 +00:00
Fabio Manganiello eb47f9ded0 [#351] Merged `google.pubsub` plugin and backend.
Closes: #351
2024-01-19 02:14:49 +00:00
Fabio Manganiello 2e9cb44caf
[Automatic] Updated components cache
continuous-integration/drone/push Build is passing Details
2024-01-19 00:50:24 +00:00
Fabio Manganiello 1323156838
Fixed `google.credentials` script order of arguments in the docstring.
continuous-integration/drone/push Build is passing Details
2024-01-19 01:48:33 +01:00
Fabio Manganiello a5b7e2b52e
[CI/CD] Fixed version format for the `platypush-git` Arch package.
continuous-integration/drone/push Build is passing Details
The format should be `<MAJ>.<MIN>.<PATCH>.r<REVISION>.g<HEAD>`.

The `g` prefix was missing.
2024-01-19 01:06:47 +01:00
Fabio Manganiello aceb9b940a
[Automatic] Updated components cache
continuous-integration/drone/push Build is passing Details
2024-01-18 23:32:23 +00:00
Fabio Manganiello 6775208b2e Fixed minor docstring typo. 2024-01-18 23:31:27 +00:00
Fabio Manganiello f9bd5b3abc [#350] Merge `google.fit` backend and plugin.
Closes: #350.
2024-01-18 23:31:27 +00:00
Fabio Manganiello e3c04d9316 Fixed bullet points indentation in Google plugins docstrings. 2024-01-18 23:31:27 +00:00
Fabio Manganiello e022712b7b [Google] Updated authorization flow for Google plugins.
The new authorization flow also requires the user to input a code
returned on the browser's authorization page.

Since the Google authentication libraries seem to use a simple `input()`
to read this code, things are likely to fail quite badly if Platypush is
run in non-interactive mode - e.g. through a systemd service or in a
Docker container.

Thus we need to go with Google's automatic flow only if `DISPLAY` or
`BROWSER` are set (thus the interactive flow can proceed), and throw an
`AssertionError` with the command to execute if no display/browser are
detected.
2024-01-18 23:31:27 +00:00
Fabio Manganiello 31de917631 [Google] Updated documentation of Google plugins.
Expanded explanation of the desktop vs. headless authentication process
and where the credential files are supposed to be copied if the user
opts for a non-automatic authentication flow.
2024-01-18 23:31:27 +00:00
Fabio Manganiello dec2a54740
[Automatic] Updated components cache
continuous-integration/drone/push Build is passing Details
2024-01-18 23:29:13 +00:00
Fabio Manganiello 998b7be7b8
[media.vlc] Always add `--play-and-exit` to args.
continuous-integration/drone/push Build is passing Details
Without this option VLC seems to hang in the background, and it may
cause PulseAudio failures or memory issues after several videos have
been played - each in its own session.
2024-01-18 21:21:15 +01:00
Fabio Manganiello a47f9f1852
[Automatic] Updated components cache
continuous-integration/drone/push Build is passing Details
2024-01-18 01:29:46 +00:00
Fabio Manganiello 95c15f3f5f [#347] Merge `kafka` backend and plugin.
Closes: #347
2024-01-18 01:28:56 +00:00
Fabio Manganiello a596ed80a2
[Automatic] Updated components cache
continuous-integration/drone/push Build is passing Details
2024-01-17 23:27:34 +00:00
Fabio Manganiello 1c5956c38b
Fixed some docstring warnings.
continuous-integration/drone/push Build was killed Details
2024-01-18 00:26:22 +01:00
Fabio Manganiello 85db77bb7b
[#298] Merged `nextcloud` backend and plugin.
Closes: #298
2024-01-18 00:26:22 +01:00
Fabio Manganiello dd5bc7639b
Added `disable_monitor` flag to `RunnablePlugin`.
This is useful when users want to use a runnable plugin in a stateless
way. In some cases (for example systems with high latency or limited
quotas for API calls) the user may want to leverage the actions of a
plugin, but without running monitoring/polling logic nor generating
events.
2024-01-18 00:26:22 +01:00
Fabio Manganiello fb91be7628
[Automatic] Updated components cache
continuous-integration/drone/push Build is passing Details
2024-01-15 23:56:02 +00:00