Commit graph

3098 commits

Author SHA1 Message Date
Fabio Manganiello 0e29e770fb Updated sample config snippet for tts.mimic3. 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 42912581f9 [Fix] Always initialize AssistantPlugin._conversation_start_sound. 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 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 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
All checks were successful
continuous-integration/drone/push Build is passing
2023-10-23 14:04:25 +00:00
Fabio Manganiello a005958317
[Assistant] Added assistant entity type.
All checks were successful
continuous-integration/drone/push Build is passing
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 e24438980a
[sound] Better logic for default sound device auto-detection.
All checks were successful
continuous-integration/drone/push Build is passing
2023-10-22 18:07:25 +02:00
Fabio Manganiello 4d582bb6bc
Ensure that the application always terminates on Ctrl+C.
All checks were successful
continuous-integration/drone/push Build is passing
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
Fabio Manganiello 02049030d0
paho module added to automocks. 2023-10-21 19:55:50 +02:00
Fabio Manganiello 4883f49b19
Removed unused travisci events. 2023-10-21 19:15:34 +02:00
Fabio Manganiello cd87cc3e43
Minor docstring fixes. 2023-10-21 18:08:29 +02:00
Fabio Manganiello 8634572c34
Small docstring fix. 2023-10-20 01:41:30 +02:00
Fabio Manganiello 0eae6fd48d
Misc dependencies and mock fixes.
All checks were successful
continuous-integration/drone/push Build is passing
- `iputils` should be an explicit system dependency for `ping`.
  Some minimal systems (like some Docker images) may not have the `ping`
  command installed out of the box.

- `hid` and `marshmallow_dataclass` should be among the auto-mocked
  modules.
2023-10-20 01:02:35 +02:00
Fabio Manganiello ed2a56de42
paho.mqtt should also be added to the mock modules
All checks were successful
continuous-integration/drone/push Build is passing
2023-10-20 00:00:07 +02:00
Fabio Manganiello e1fc38e014
[Automatic] Updated UI files
Some checks failed
continuous-integration/drone/push Build is failing
2023-10-19 17:52:56 +00:00
Fabio Manganiello 2c37596478
Updated UI files
Some checks failed
continuous-integration/drone/push Build is failing
2023-10-19 19:52:50 +02:00
Fabio Manganiello 4c6d966038 [Doc fix] Fixed indent in the documentation of the application.install action.
All checks were successful
continuous-integration/drone/push Build is passing
2023-10-19 12:13:08 +02:00
Fabio Manganiello 7eaf8dbdc0
[Automatic] Updated UI files
All checks were successful
continuous-integration/drone/push Build is passing
2023-10-18 22:53:48 +00:00
Fabio Manganiello 38c5172316
[UI] Show the connected/disconnected status in the Nav icon.
All checks were successful
continuous-integration/drone/push Build is passing
2023-10-19 00:33:17 +02:00
Fabio Manganiello f3c5c2fdfa
[Extensions UI] Added RestartButton to the Install tab.
It should be possible to easily restart the service after installing the
dependencies for a new integration.
2023-10-18 23:52:49 +02:00
Fabio Manganiello b724e80ee2
[Settings UI] Added Stop and Restart application buttons. 2023-10-18 23:45:46 +02:00
Fabio Manganiello 2a76a6baa6
[Extensions UI] Added current config to extension panel.
If an extension is configured and enabled, then the UI will now include
a tick next to its name and the currently loaded configuration in the
`Configuration` tab.
2023-10-18 22:51:30 +02:00
Fabio Manganiello f0255549c8
[utils] Added utils.to_yaml action. 2023-10-18 22:50:52 +02:00
Fabio Manganiello c7acc03c8f
[inspect] Added get_enabled_plugins and get_enabled_backends actions. 2023-10-18 22:10:32 +02:00
Fabio Manganiello c05d887551
[application] Added application.install action.
All checks were successful
continuous-integration/drone/push Build is passing
It can be used to programmatically install extensions.
2023-10-18 19:33:00 +02:00
Fabio Manganiello e2e349a2ad
[Automatic] Updated UI files
All checks were successful
continuous-integration/drone/push Build is passing
2023-10-18 01:01:06 +00:00
Fabio Manganiello 922297bf58
[Extensions UI] Support for initializing an extension from URL.
Some checks reported errors
continuous-integration/drone/push Build was killed
2023-10-18 03:00:54 +02:00
Fabio Manganiello 137855b4fc
[Entities UI] Fixed collapse toggling logic. 2023-10-18 03:00:54 +02:00
Fabio Manganiello 26b912fae4
[Execute UI]
- If an action is passed over the URL, then initialize the UI with it.

- Added link from the actions back to their plugins.
2023-10-18 03:00:54 +02:00
Fabio Manganiello e5d84242bb
[Extensions UI] Action URLs now point to the Execute panel. 2023-10-18 03:00:53 +02:00