Commit Graph

3721 Commits

Author SHA1 Message Date
Fabio Manganiello 266ee3cadf Expose `run` on the base package level.
This enables a syntax like:

```
from platypush import run

run('application.restart')
```
2023-11-03 20:54:46 +00:00
Fabio Manganiello 5e2973dd5f [UI] Removed `<tt>` tag. 2023-11-03 20:54:46 +00:00
Fabio Manganiello ba5d505c9b [`youtube`] Black/LINT pass. 2023-11-03 20:54:46 +00:00
Fabio Manganiello f6cb1fa4a7 Added `utils.get_default_downloads_dir`. 2023-11-03 20:54:46 +00:00
Fabio Manganiello fd1f93799d [An empty commit to re-trigger the CI/CD pipeline] 2023-11-03 20:54:46 +00:00
Fabio Manganiello 81f7eca319 Better styling of the docs. 2023-11-01 02:30:25 +00:00
Fabio Manganiello 0e29e770fb Updated sample config snippet for `tts.mimic3`. 2023-11-01 02:30:25 +00:00
Fabio Manganiello f3fe249ae9 [An empty commit to re-trigger the CI/CD pipeline] 2023-11-01 02:30:25 +00:00
Fabio Manganiello d9c4634ce8 [`tts.mimic3`] Plugin rewrite.
The plugin now leverages the `sound` plugin for playback, like all other
`tts` plugins now do, instead of an external `media` plugin.

This also removes the need for the `/tts/mimic3/say` endpoint.
2023-10-31 00:44:05 +00:00
Fabio Manganiello f960ec4bf4 [`sound`] Plugin refactor.
- Added `input_format`/`output_format` options to both input and output
  audio streams.

- Replaced the previous (confusing) occurrences of `ffmpeg_format` and
  `format`.

- Added custom `dtype` option for `sound.play`.

- Added `join` flag (default: false) to `sound.play` to wait for the
  playback to finish.
2023-10-31 00:44:05 +00:00
Fabio Manganiello d5514d7f27 Added `utils.is_debug_enabled`. 2023-10-31 00:44:05 +00:00
Fabio Manganiello ef3b1d20f2 Updated `MediaPlugin` documentation snippet. 2023-10-31 00:44:05 +00:00
Fabio Manganiello 0cbd0a94d6 tts` plugins should leverage `sound`, not an external media player. 2023-10-31 00:44:05 +00:00
Fabio Manganiello 72b2625425 Updated `tts` plugin dependencies, as they now leverage the `sound` plugin. 2023-10-31 00:44:05 +00:00
Fabio Manganiello 68c73fa181 [`tts.mimic3`] Added timeout to `requests.post` proxy. 2023-10-31 00:44:05 +00:00
Fabio Manganiello faacbfd84f [An empty commit to re-trigger the CI/CD pipeline] 2023-10-31 00:44:05 +00:00
Fabio Manganiello 42912581f9 [Fix] Always initialize `AssistantPlugin._conversation_start_sound`. 2023-10-23 21:30:49 +00:00
Fabio Manganiello 4a881c33d0 [An empty commit to re-trigger the CI/CD pipeline] 2023-10-23 21:30:49 +00:00
Fabio Manganiello 23e53f13f0 Removed/commented references to `numpy.typing`.
That module isn't available yet on the numpy version installed on Debian
`oldstable`.
2023-10-23 20:23:57 +00:00
Fabio Manganiello 193314fcd0 [An empty commit to re-trigger the CI/CD pipeline] 2023-10-23 20:23:57 +00:00
Fabio Manganiello fc869bf5db [Fix] sounddevice arguments fix.
Different versions of the `sounddevice` dependency may or may not return
the `index` parameter when querying the available sound devices.

Thus, the code should be ready for both cases.
2023-10-23 20:11:14 +00:00
Fabio Manganiello b91d544b89 [An empty commit to re-trigger the CI/CD pipeline] 2023-10-23 20:11:14 +00:00
Fabio Manganiello 74ff0f8e33 [An empty commit to re-trigger the CI/CD pipeline] 2023-10-23 19:49:16 +00:00
Fabio Manganiello acf0e0f34f [CI/CD] Moved the chmod commands outside of the if. 2023-10-23 19:46:07 +00:00
Fabio Manganiello d7db55cf90 [An empty commit to re-trigger the CI/CD pipeline] 2023-10-23 19:46:06 +00:00
Fabio Manganiello 5c857038cf [An empty commit to re-trigger the CI/CD pipeline] 2023-10-23 19:40:45 +00:00
Fabio Manganiello f9ce5e3cd2 [CI/CD] chmod should always be the final step in `update-apt-repo`. 2023-10-23 19:38:51 +00:00
Fabio Manganiello 3a5be7211b [An empty commit to re-trigger the CI/CD pipeline] 2023-10-23 19:38:51 +00:00
Fabio Manganiello 905ca1855b [An empty commit to re-trigger the CI/CD pipeline] 2023-10-23 19:35:28 +00:00
Fabio Manganiello 532427eeb5 [CI/CD] The chmod section should be on the `update-apt-repo` step. 2023-10-23 19:30:26 +00:00
Fabio Manganiello 4afd1b68d0 [Fix] s/chown/chmod/g typo fix 2023-10-23 19:26:21 +00:00
Fabio Manganiello 8c0c551aa5 [CI/CD] Ensure that public repo dirs are always readable by everyone. 2023-10-23 19:23:23 +00:00
Fabio Manganiello cea3055369 Indent pre- and post-install shell scripts in docs. 2023-10-23 15:48:09 +00:00
Fabio Manganiello 6d694f02b4
[Automatic] Updated UI files
continuous-integration/drone/push Build is passing Details
2023-10-23 14:04:25 +00:00
Fabio Manganiello a005958317
[Assistant] Added `assistant` entity type.
continuous-integration/drone/push Build is passing Details
2023-10-23 16:02:05 +02:00
Fabio Manganiello fd26f7fef3
[UI Nav] Fixed position of the connected status dot. 2023-10-23 15:57:47 +02:00
Fabio Manganiello 5c22271e88
[UI] Expose the `connected` flag on the root element level. 2023-10-23 15:03:36 +02:00
Fabio Manganiello 4c0e3a16b6
Removed Alexa/AVS integration.
The integration was based on my old fork of the AVS service, which is no
longer functional given the changes the the Amazon's backend side.

A new `avs-device-sdk` is now available, but it seems that it requires
lengthy compilation processes which are RaspberryPi-specific.

Further investigation is needed for a new Alexa plugin - see #334.
2023-10-23 00:23:10 +02:00
Fabio Manganiello fb017a8b35
[`assistant.google`] Added doc on how to configure audio devices. 2023-10-22 22:49:41 +02:00
Fabio Manganiello 2c8b06e471
Remove Snowboy integration.
It hurts to see it go, as I really believed in this project.

But the website of the project went away in 2020, the Github project
hasn't seen any activity since 2021, and the fork that is supposed to be
used as a replacement for training .pmdl models hasn't been updated
since 2021 - and it only supports Python 2 on Ubuntu 16.04 or 18.04.

One day I may dedicate some efforts to bring Snowboy back to life, but
until then it's definitely not in a state where it's usable for a
Platypush integration.
2023-10-22 22:33:22 +02:00
Fabio Manganiello 645e8c8f77
Added updated configuration snippet for `assistant.google` plugin. 2023-10-22 21:53:15 +02:00
Fabio Manganiello b46c00f015
Removed deprecated `google.assistant.pushtotalk` plugin.
It only existed as a back-compatibility layer with armv6, since there
was no build of the assistant library that worked on Raspberry Pi Zero.

But that API layer has been discontinued by Google and it's no longer
functional, so only the `assistant.google` integration (on x86_64 and
armv7) is currently supported.
2023-10-22 19:57:55 +02:00
Fabio Manganiello cce6c4c5ad
[#284] Merged `assistant.google` plugin and backend.
This removes the deprecated `assistant.google` backend and also adds a
new `conversation_start_sound` parameter.
2023-10-22 19:55:11 +02:00
Fabio Manganiello debb4f6f36
[Docs] Wrap `generate_missing_docs` logic in `auto_mocks` block.
continuous-integration/drone/push Build is passing Details
It should be possible to synchronize the documented modules even on
installations that don't have all the custom dependencies installed.
2023-10-22 19:08:16 +02:00
Fabio Manganiello e24438980a
[`sound`] Better logic for default sound device auto-detection.
continuous-integration/drone/push Build is passing Details
2023-10-22 18:07:25 +02:00
Fabio Manganiello 4d582bb6bc
Ensure that the application always terminates on Ctrl+C.
continuous-integration/drone/push Build is passing Details
2023-10-22 02:33:15 +02:00
Fabio Manganiello f75a2159c7
[platyvenv] Add the venv bin directory to the PATH.
After creating the virtual environment, we should add `<VENV_DIR>/bin`
to the `PATH` variable, so any next `python`/`pip` commands will be
executed in the new environment.
2023-10-22 02:28:31 +02:00
Fabio Manganiello a909dc5f0f
[Fix] The base per-OS requirements filename is always lowercase. 2023-10-22 01:45:23 +02:00
Fabio Manganiello e65eef34d3
[`application`] `application.install` should redirect stderr->stdout. 2023-10-22 01:44:39 +02:00
Fabio Manganiello 8b5871af0e
[Fix] `platyvenv` should also execute the `before` and `after` blocks.
Before this fix, `platyvenv`, unlike `platydock`, didn't take into
account any extra before/after installation commands that individual
integrations may instruct to run in their manifest files.
2023-10-22 01:41:19 +02:00