Git Product home page Git Product logo

hassio-addons's Introduction

Rhasspy Voice Assistant

Rhasspy 2.5 logo

Rhasspy (ˈɹæspi) is an open source, fully offline set of voice assistant services for many human languages that works well with:

You specify voice commands in a template language:

[LightState]
states = (on | off)
turn (<states>){state} [the] light

and Rhasspy will produce JSON events that can trigger action in home automation software, such as a Node-RED flow:

{
    "text": "turn on the light",
    "intent": {
        "name": "LightState"
    },
    "slots": {
        "state": "on"
    }
}

Rhasspy is optimized for:

Learn More

Web Interface

Rhasspy comes with a snazzy web interface that lets you configure, program, and test your voice assistant remotely from your web browser. All of the web UI's functionality is exposed in a comprehensive HTTP API.

Test page in web interface

Getting Started

Ready to try Rhasspy? Follow the steps below or check out the Getting Started Guide.

  1. Make sure you have the necessary hardware
  2. Choose an installation method
  3. Access the web interface to download a profile
  4. Author your custom voice commands and train Rhasspy
  5. Connect Rhasspy to other software like Home Assistant or a Node-RED flow by:

Getting Help

If you have problems, please stop by the Rhasspy community site or open a GitHub issue.

Supported Languages

Rhasspy supports the following languages:

Services

As of version 2.5, Rhasspy is composed of independent services that coordinate over MQTT using a superset of the Hermes protocol.

Rhasspy services

You can easily extend or replace functionality in Rhasspy by using the appropriate messages. Many of these messages can be also sent and received over the HTTP API and the Websocket API.

Intended Audience

Rhasspy is intended for savvy amateurs or advanced users that want to have a private voice interface to their chosen home automation software. There are many other voice assistants, but none (to my knowledge) that:

  1. Can function completely disconnected from the Internet
  2. Are entirely free/open source with a permissive license
  3. Work well with freely available home automation software

If you feel comfortable sending your voice commands through the Internet for someone else to process, or are not comfortable customizing software to handle intents, I recommend taking a look at Mycroft.

Contributing

Community contributions are welcomed! There are many different ways to contribute, both as a developer and a non-developer.

Open source


Development Status

The various repositories also have their own issue tracker to follow and discuss development of these specific components. Here's the status of all repositories:

Repository Tests Open issues Open pull requests
rhasspy Tests Open issues Open pull requests
rhasspy-asr Tests Open issues Open pull requests
rhasspy-asr-deepspeech Tests Open issues Open pull requests
rhasspy-asr-deepspeech-hermes Tests Open issues Open pull requests
rhasspy-asr-kaldi Tests Open issues Open pull requests
rhasspy-asr-kaldi-hermes Tests Open issues Open pull requests
rhasspy-asr-pocketsphinx Tests Open issues Open pull requests
rhasspy-asr-pocketsphinx-hermes Tests Open issues Open pull requests
rhasspy-client Tests Open issues Open pull requests
rhasspy-dialogue-hermes Tests Open issues Open pull requests
rhasspy-fuzzywuzzy Tests Open issues Open pull requests
rhasspy-fuzzywuzzy-hermes Tests Open issues Open pull requests
rhasspy-hermes Tests Open issues Open pull requests
rhasspy-hermes-app Tests Open issues Open pull requests
rhasspy-homeassistant-hermes Tests Open issues Open pull requests
rhasspy-microphone-cli-hermes Tests Open issues Open pull requests
rhasspy-microphone-pyaudio-hermes Tests Open issues Open pull requests
rhasspy-nlu Tests Open issues Open pull requests
rhasspy-nlu-hermes Tests Open issues Open pull requests
rhasspy-profile Tests Open issues Open pull requests
rhasspy-python-template Tests Open issues Open pull requests
rhasspy-rasa-nlu-hermes Tests Open issues Open pull requests
rhasspy-remote-http-hermes Tests Open issues Open pull requests
rhasspy-server-hermes Tests Open issues Open pull requests
rhasspy-silence Tests Open issues Open pull requests
rhasspy-snips-nlu Tests Open issues Open pull requests
rhasspy-snips-nlu-hermes Tests Open issues Open pull requests
rhasspy-speakers-cli-hermes Tests Open issues Open pull requests
rhasspy-supervisor Tests Open issues Open pull requests
rhasspy-tag-action Tests Open issues Open pull requests
rhasspy-tts-cli-hermes Tests Open issues Open pull requests
rhasspy-update-repo-action Tests Open issues Open pull requests
rhasspy-wake-pocketsphinx-hermes Tests Open issues Open pull requests
rhasspy-wake-porcupine-hermes Tests Open issues Open pull requests
rhasspy-wake-precise-hermes Tests Open issues Open pull requests
rhasspy-wake-raven Tests Open issues Open pull requests
rhasspy-wake-raven-hermes Tests Open issues Open pull requests
rhasspy-wake-snowboy-hermes Tests Open issues Open pull requests

hassio-addons's People

Contributors

c0ffeeca7 avatar dependabot[bot] avatar skylined avatar synesthesiam avatar thezoker avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

hassio-addons's Issues

Vosk cut off my request too early

Vosk is v1.6.0, and Piper is v1.5.0. Assigned in Assist them, used Russian language for TTS and STT. But when I enable debug_recording_dir: /share/assist_pipeline and explore my records in that folder, so it cut off the end of my speech too soon and some long commands like 'set brightness to 70' are cut off on 'set brightness...> in my wav files in reality. Vosk ignores even 'Finished speaking detection' =>Relaxed. And whisper is good enough on that, but it's slower with the same level of positive/negative STT detections as on the Vosk. Vosk is really fast and precise, but only on the short commands. So this cut-off looks like a bug.

No audio output

Dear all,
previously I have installed Rhasspy with docker standing alone and it was working great with respeaker for audio input as well as audio output via AUX cable.

I have now installed Rhasspy as Home-Assistant addon. Hotword detection and sppech analysis is working great again, but I do not have an audio output. Any ideas to fix this?

Please find attached the Home-Assistant Logs:

[DEBUG:2021-11-12 09:40:50,079] rhasspyasr_kaldi_hermes: Disabled (AsrToggleReason.PLAY_AUDIO)
[DEBUG:2021-11-12 09:40:50,077] rhasspyspeakers_cli_hermes: <- AudioPlayBytes(34604 byte(s))
[DEBUG:2021-11-12 09:40:50,078] rhasspyspeakers_cli_hermes: ['aplay', '-q', '-t', 'wav', '-D', 'pulse']
[DEBUG:2021-11-12 09:40:50,076] rhasspywake_porcupine_hermes: <- HotwordToggleOff(site_id='default', reason=<HotwordToggleReason.PLAY_AUDIO: 'playAudio'>)
[DEBUG:2021-11-12 09:40:50,077] rhasspywake_porcupine_hermes: Disabled
[DEBUG:2021-11-12 09:40:51,519] rhasspyspeakers_cli_hermes: -> AudioPlayFinished(id='5b5bdfa8-6938-4eb9-9018-c617728d722c', session_id='5b5bdfa8-6938-4eb9-9018-c617728d722c')
[DEBUG:2021-11-12 09:40:51,519] rhasspyspeakers_cli_hermes: Publishing 99 bytes(s) to hermes/audioServer/default/playFinished
[DEBUG:2021-11-12 09:40:51,525] rhasspydialogue_hermes: <- AudioPlayFinished(id='5b5bdfa8-6938-4eb9-9018-c617728d722c', session_id='5b5bdfa8-6938-4eb9-9018-c617728d722c')
[DEBUG:2021-11-12 09:40:51,525] rhasspytts_cli_hermes: <- AudioPlayFinished(id='5b5bdfa8-6938-4eb9-9018-c617728d722c', session_id='5b5bdfa8-6938-4eb9-9018-c617728d722c')
[DEBUG:2021-11-12 09:40:51,530] rhasspyserver_hermes: Handling AudioPlayFinished (topic=hermes/audioServer/default/playFinished, id=096f603f-4a02-41d3-b6cf-33dc7c3d8fdf)
[DEBUG:2021-11-12 09:40:51,535] rhasspyserver_hermes: -> HotwordToggleOn(site_id='default', reason=<HotwordToggleReason.PLAY_AUDIO: 'playAudio'>)
[DEBUG:2021-11-12 09:40:51,536] rhasspyserver_hermes: Publishing 44 bytes(s) to hermes/hotword/toggleOn
[DEBUG:2021-11-12 09:40:51,538] rhasspyserver_hermes: -> AsrToggleOn(site_id='default', reason=<AsrToggleReason.PLAY_AUDIO: 'playAudio'>)
[DEBUG:2021-11-12 09:40:51,539] rhasspyserver_hermes: Publishing 44 bytes(s) to hermes/asr/toggleOn
[DEBUG:2021-11-12 09:40:51,545] rhasspywake_porcupine_hermes: <- HotwordToggleOn(site_id='default', reason=<HotwordToggleReason.PLAY_AUDIO: 'playAudio'>)
[DEBUG:2021-11-12 09:40:51,549] rhasspywake_porcupine_hermes: Enabled
[DEBUG:2021-11-12 09:40:51,551] rhasspywake_porcupine_hermes: Receiving audio default
[DEBUG:2021-11-12 09:40:51,604] rhasspyasr_kaldi_hermes: <- AsrToggleOn(site_id='default', reason=<AsrToggleReason.PLAY_AUDIO: 'playAudio'>)
[DEBUG:2021-11-12 09:40:51,604] rhasspyasr_kaldi_hermes: Enabled
[DEBUG:2021-11-12 09:40:51,613] rhasspyasr_kaldi_hermes: Receiving audio
[DEBUG:2021-11-12 09:40:55,853] rhasspyprofile.download: speech_to_text.system pocketsphinx kaldi = False
[DEBUG:2021-11-12 09:40:55,854] rhasspyprofile.download: speech_to_text.system kaldi kaldi = True
[DEBUG:2021-11-12 09:40:55,855] rhasspyprofile.download: Skipping kaldi/base_dictionary.txt (/share/rhasspy/profiles/de/kaldi/base_dictionary.txt)
[DEBUG:2021-11-12 09:40:55,857] rhasspyprofile.download: Skipping kaldi/g2p.fst (/share/rhasspy/profiles/de/kaldi/g2p.fst)
[DEBUG:2021-11-12 09:40:55,858] rhasspyprofile.download: Skipping kaldi/model/model/cmvn_opts (/share/rhasspy/profiles/de/kaldi/model/model/cmvn_opts)
[DEBUG:2021-11-12 09:40:55,860] rhasspyprofile.download: Skipping kaldi/model/model/final.mdl (/share/rhasspy/profiles/de/kaldi/model/model/final.mdl)
[DEBUG:2021-11-12 09:40:55,861] rhasspyprofile.download: Skipping kaldi/model/model/tree (/share/rhasspy/profiles/de/kaldi/model/model/tree)
[DEBUG:2021-11-12 09:40:55,863] rhasspyprofile.download: Skipping kaldi/model/phones/nonsilence_phones.txt (/share/rhasspy/profiles/de/kaldi/model/phones/nonsilence_phones.txt)
[DEBUG:2021-11-12 09:40:55,865] rhasspyprofile.download: Skipping kaldi/model/phones/extra_questions.txt (/share/rhasspy/profiles/de/kaldi/model/phones/extra_questions.txt)
[DEBUG:2021-11-12 09:40:55,866] rhasspyprofile.download: Skipping kaldi/model/phones/optional_silence.txt (/share/rhasspy/profiles/de/kaldi/model/phones/optional_silence.txt)
[DEBUG:2021-11-12 09:40:55,868] rhasspyprofile.download: Skipping kaldi/model/phones/silence_phones.txt (/share/rhasspy/profiles/de/kaldi/model/phones/silence_phones.txt)
[DEBUG:2021-11-12 09:40:55,869] rhasspyprofile.download: Skipping kaldi/model/conf/online_cmvn.conf (/share/rhasspy/profiles/de/kaldi/model/conf/online_cmvn.conf)
[DEBUG:2021-11-12 09:40:55,871] rhasspyprofile.download: Skipping kaldi/model/conf/mfcc.conf (/share/rhasspy/profiles/de/kaldi/model/conf/mfcc.conf)
[DEBUG:2021-11-12 09:40:55,873] rhasspyprofile.download: Skipping kaldi/model/conf/mfcc_hires.conf (/share/rhasspy/profiles/de/kaldi/model/conf/mfcc_hires.conf)
[DEBUG:2021-11-12 09:40:55,874] rhasspyprofile.download: Skipping kaldi/model/extractor/final.mat (/share/rhasspy/profiles/de/kaldi/model/extractor/final.mat)
[DEBUG:2021-11-12 09:40:55,876] rhasspyprofile.download: Skipping kaldi/model/extractor/online_cmvn.conf (/share/rhasspy/profiles/de/kaldi/model/extractor/online_cmvn.conf)
[DEBUG:2021-11-12 09:40:55,877] rhasspyprofile.download: Skipping kaldi/model/extractor/global_cmvn.stats (/share/rhasspy/profiles/de/kaldi/model/extractor/global_cmvn.stats)
[DEBUG:2021-11-12 09:40:55,878] rhasspyprofile.download: Skipping kaldi/model/extractor/splice_opts (/share/rhasspy/profiles/de/kaldi/model/extractor/splice_opts)
[DEBUG:2021-11-12 09:40:55,879] rhasspyprofile.download: Skipping kaldi/model/extractor/final.dubm (/share/rhasspy/profiles/de/kaldi/model/extractor/final.dubm)
[DEBUG:2021-11-12 09:40:55,881] rhasspyprofile.download: Skipping kaldi/model/extractor/final.ie (/share/rhasspy/profiles/de/kaldi/model/extractor/final.ie)
[DEBUG:2021-11-12 09:40:55,883] rhasspyprofile.download: Skipping kaldi/model/ivectors_test_hires/conf/online_cmvn.conf (/share/rhasspy/profiles/de/kaldi/model/ivectors_test_hires/conf/online_cmvn.conf)
[DEBUG:2021-11-12 09:40:55,884] rhasspyprofile.download: Skipping kaldi/model/ivectors_test_hires/conf/ivector_extractor.conf (/share/rhasspy/profiles/de/kaldi/model/ivectors_test_hires/conf/ivector_extractor.conf)
[DEBUG:2021-11-12 09:40:55,885] rhasspyprofile.download: Skipping kaldi/model/ivectors_test_hires/conf/splice.conf (/share/rhasspy/profiles/de/kaldi/model/ivectors_test_hires/conf/splice.conf)
[DEBUG:2021-11-12 09:40:55,885] rhasspyprofile.download: speech_to_text.system deepspeech kaldi = False
[DEBUG:2021-11-12 09:40:55,886] rhasspyprofile.download: speech_to_text.system vosk kaldi = False
[DEBUG:2021-11-12 09:40:55,886] rhasspyprofile.download: speech_to_text.pocketsphinx.open_transcription True False = False
[DEBUG:2021-11-12 09:40:55,887] rhasspyprofile.download: speech_to_text.kaldi.open_transcription True False = False
[DEBUG:2021-11-12 09:40:55,888] rhasspyprofile.download: speech_to_text.deepspeech.open_transcription True False = False
[DEBUG:2021-11-12 09:40:55,888] rhasspyprofile.download: speech_to_text.pocketsphinx.mix_weight >0 0 = False
[DEBUG:2021-11-12 09:40:55,889] rhasspyprofile.download: speech_to_text.kaldi.mix_weight >0 0 = False
[DEBUG:2021-11-12 09:40:55,890] rhasspyprofile.download: speech_to_text.deepspeech.mix_weight >0 0 = False
[DEBUG:2021-11-12 09:40:55,891] rhasspyprofile.download: text_to_speech.system larynx nanotts = False
[DEBUG:2021-11-12 09:40:55,892] rhasspyprofile.download: (and text_to_speech.system text_to_speech.larynx.default_voice) (larynx thorsten) ['nanotts', 'thorsten'] = False
[DEBUG:2021-11-12 09:40:55,892] rhasspyprofile.download: (and text_to_speech.system text_to_speech.larynx.default_voice) (larynx eva_k) ['nanotts', 'thorsten'] = False
[DEBUG:2021-11-12 09:40:55,893] rhasspyprofile.download: (and text_to_speech.system text_to_speech.larynx.default_voice) (larynx hokuspokus) ['nanotts', 'thorsten'] = False
[DEBUG:2021-11-12 09:40:55,893] rhasspyprofile.download: (and text_to_speech.system text_to_speech.larynx.default_voice) (larynx kerstin) ['nanotts', 'thorsten'] = False
[DEBUG:2021-11-12 09:40:55,893] rhasspyprofile.download: (and text_to_speech.system text_to_speech.larynx.default_voice) (larynx karlsson) ['nanotts', 'thorsten'] = False
[DEBUG:2021-11-12 09:40:55,894] rhasspyprofile.download: (and text_to_speech.system text_to_speech.larynx.default_voice) (larynx pavoque) ['nanotts', 'thorsten'] = False
[DEBUG:2021-11-12 09:40:55,894] rhasspyprofile.download: (and text_to_speech.system text_to_speech.larynx.default_voice) (larynx rebecca_braunert_plunkett) ['nanotts', 'thorsten'] = False
[DEBUG:2021-11-12 09:40:55,895] rhasspyprofile.download: (and text_to_speech.system text_to_speech.larynx.vocoder) (larynx universal_large) ['nanotts', 'universal_large'] = False
[DEBUG:2021-11-12 09:40:55,896] rhasspyprofile.download: (and text_to_speech.system text_to_speech.larynx.vocoder) (larynx vctk_medium) ['nanotts', 'universal_large'] = False
[DEBUG:2021-11-12 09:40:55,896] rhasspyprofile.download: (and text_to_speech.system text_to_speech.larynx.vocoder) (larynx vctk_small) ['nanotts', 'universal_large'] = False
[DEBUG:2021-11-12 09:40:55,931] rhasspyserver_hermes: Subscribed to rhasspy/hotword/hotwords
[DEBUG:2021-11-12 09:40:55,933] rhasspyserver_hermes: -> GetHotwords(site_id='default', id='02a8300c-f4c6-495a-a863-65f83f486942')
[DEBUG:2021-11-12 09:40:55,933] rhasspyserver_hermes: Publishing 67 bytes(s) to rhasspy/hotword/getHotwords
[DEBUG:2021-11-12 09:40:55,953] rhasspyserver_hermes: Subscribed to rhasspy/audioServer/devices
[DEBUG:2021-11-12 09:40:55,955] rhasspyserver_hermes: -> AudioGetDevices(modes=[<AudioDeviceMode.OUTPUT: 'output'>], site_id='default', id='0f8046ac-55fa-42e9-83d9-dcbb8b0618b1', test=False)
[DEBUG:2021-11-12 09:40:55,956] rhasspyserver_hermes: Publishing 103 bytes(s) to rhasspy/audioServer/getDevices
[DEBUG:2021-11-12 09:40:55,965] rhasspyspeakers_cli_hermes: <- AudioGetDevices(modes=[<AudioDeviceMode.OUTPUT: 'output'>], site_id='default', id='0f8046ac-55fa-42e9-83d9-dcbb8b0618b1', test=False)
[DEBUG:2021-11-12 09:40:55,966] rhasspyspeakers_cli_hermes: ['aplay', '-L']
[DEBUG:2021-11-12 09:40:55,965] rhasspywake_porcupine_hermes: <- GetHotwords(site_id='default', id='02a8300c-f4c6-495a-a863-65f83f486942')
[WARNING:2021-11-12 09:40:55,966] rhasspywake_porcupine_hermes: Missing keyword dir: /share/rhasspy/profiles/de/porcupine
[DEBUG:2021-11-12 09:40:55,965] rhasspymicrophone_pyaudio_hermes: <- AudioGetDevices(modes=[<AudioDeviceMode.OUTPUT: 'output'>], site_id='default', id='0f8046ac-55fa-42e9-83d9-dcbb8b0618b1', test=False)
[DEBUG:2021-11-12 09:40:55,966] rhasspymicrophone_pyaudio_hermes: Not a request for input devices
[DEBUG:2021-11-12 09:40:55,976] rhasspyserver_hermes: -> AudioGetDevices(modes=[<AudioDeviceMode.INPUT: 'input'>], site_id='default', id='4071b37f-cbc1-4f40-b27b-d8d89c2470f3', test=False)
[DEBUG:2021-11-12 09:40:55,978] rhasspyserver_hermes: Publishing 102 bytes(s) to rhasspy/audioServer/getDevices
[DEBUG:2021-11-12 09:40:55,999] rhasspywake_porcupine_hermes: -> Hotwords(models=[Hotword(model_id='alexa_raspberry-pi.ppn', model_words='alexa', model_version='', model_type='personal'), Hotword(model_id='hey google_raspberry-pi.ppn', model_words='hey google', model_version='', model_type='personal'), Hotword(model_id='americano_raspberry-pi.ppn', model_words='americano', model_version='', model_type='personal'), Hotword(model_id='hey siri_raspberry-pi.ppn', model_words='hey siri', model_version='', model_type='personal'), Hotword(model_id='terminator_raspberry-pi.ppn', model_words='terminator', model_version='', model_type='personal'), Hotword(model_id='pico clock_raspberry-pi.ppn', model_words='pico clock', model_version='', model_type='personal'), Hotword(model_id='grapefruit_raspberry-pi.ppn', model_words='grapefruit', model_version='', model_type='personal'), Hotword(model_id='jarvis_raspberry-pi.ppn', model_words='jarvis', model_version='', model_type='personal'), Hotword(model_id='ok google_raspberry-pi.ppn', model_words='ok google', model_version='', model_type='personal'), Hotword(model_id='blueberry_raspberry-pi.ppn', model_words='blueberry', model_version='', model_type='personal'), Hotword(model_id='grasshopper_raspberry-pi.ppn', model_words='grasshopper', model_version='', model_type='personal'), Hotword(model_id='computer_raspberry-pi.ppn', model_words='computer', model_version='', model_type='personal'), Hotword(model_id='picovoice_raspberry-pi.ppn', model_words='picovoice', model_version='', model_type='personal'), Hotword(model_id='bumblebee_raspberry-pi.ppn', model_words='bumblebee', model_version='', model_type='personal'), Hotword(model_id='porcupine_raspberry-pi.ppn', model_words='porcupine', model_version='', model_type='personal')], site_id='default', id='02a8300c-f4c6-495a-a863-65f83f486942')
[DEBUG:2021-11-12 09:40:56,001] rhasspywake_porcupine_hermes: Publishing 1798 bytes(s) to rhasspy/hotword/hotwords
[DEBUG:2021-11-12 09:40:56,007] rhasspymicrophone_pyaudio_hermes: <- AudioGetDevices(modes=[<AudioDeviceMode.INPUT: 'input'>], site_id='default', id='4071b37f-cbc1-4f40-b27b-d8d89c2470f3', test=False)
[DEBUG:2021-11-12 09:40:56,014] rhasspymicrophone_pyaudio_hermes: -> AudioDevices(devices=[AudioDevice(mode=<AudioDeviceMode.INPUT: 'input'>, id='0', name='pulse', description='', working=None), AudioDevice(mode=<AudioDeviceMode.INPUT: 'input'>, id='1', name='default*', description='', working=None)], site_id='default', id='4071b37f-cbc1-4f40-b27b-d8d89c2470f3')
[DEBUG:2021-11-12 09:40:56,015] rhasspymicrophone_pyaudio_hermes: Publishing 249 bytes(s) to rhasspy/audioServer/devices
[DEBUG:2021-11-12 09:40:56,028] rhasspyspeakers_cli_hermes: -> AudioDevices(devices=[AudioDevice(mode=<AudioDeviceMode.OUTPUT: 'output'>, id='null', name='null', description='Discard all samples (playback) or generate zero samples (capture)*', working=None), AudioDevice(mode=<AudioDeviceMode.OUTPUT: 'output'>, id='jack', name='jack', description='JACK Audio Connection Kit', working=None), AudioDevice(mode=<AudioDeviceMode.OUTPUT: 'output'>, id='pulse', name='pulse', description='PulseAudio Sound Server', working=None)], site_id='default', id='0f8046ac-55fa-42e9-83d9-dcbb8b0618b1')
[DEBUG:2021-11-12 09:40:56,029] rhasspyspeakers_cli_hermes: Publishing 454 bytes(s) to rhasspy/audioServer/devices
[DEBUG:2021-11-12 09:40:56,033] rhasspyspeakers_cli_hermes: <- AudioGetDevices(modes=[<AudioDeviceMode.INPUT: 'input'>], site_id='default', id='4071b37f-cbc1-4f40-b27b-d8d89c2470f3', test=False)
[DEBUG:2021-11-12 09:40:56,047] rhasspyserver_hermes: Handling Hotwords (topic=rhasspy/hotword/hotwords, id=cb327eb3-bd2e-4e13-8a75-0188cf0206d2)
[DEBUG:2021-11-12 09:40:56,055] rhasspyserver_hermes: Handling AudioDevices (topic=rhasspy/audioServer/devices, id=8b10e061-a337-46f0-9fa7-621b6ebb8ba9)
[DEBUG:2021-11-12 09:40:56,057] rhasspyserver_hermes: Handling AudioDevices (topic=rhasspy/audioServer/devices, id=aba038fe-67e4-4bbf-8f80-4efe89c50c71)
[DEBUG:2021-11-12 09:40:56,066] rhasspyserver_hermes: Handling AudioDevices (topic=rhasspy/audioServer/devices, id=8b10e061-a337-46f0-9fa7-621b6ebb8ba9)
[ERROR:2021-11-12 09:41:01,572] rhasspydialogue_hermes: Session timed out for site default: default-blueberry_raspberry-pi-7b3c0f6b-c1b6-48fe-a6b8-c1800afc2e65
[DEBUG:2021-11-12 09:41:01,576] rhasspydialogue_hermes: -> AsrStopListening(site_id='default', session_id='default-blueberry_raspberry-pi-7b3c0f6b-c1b6-48fe-a6b8-c1800afc2e65')
[DEBUG:2021-11-12 09:41:01,579] rhasspydialogue_hermes: Publishing 105 bytes(s) to hermes/asr/stopListening
[DEBUG:2021-11-12 09:41:01,586] rhasspydialogue_hermes: -> DialogueSessionEnded(termination=DialogueSessionTermination(reason=<DialogueSessionTerminationReason.TIMEOUT: 'timeout'>), session_id='default-blueberry_raspberry-pi-7b3c0f6b-c1b6-48fe-a6b8-c1800afc2e65', site_id='default', custom_data='blueberry_raspberry-pi')
[DEBUG:2021-11-12 09:41:01,588] rhasspydialogue_hermes: Publishing 183 bytes(s) to hermes/dialogueManager/sessionEnded
[DEBUG:2021-11-12 09:41:01,592] rhasspydialogue_hermes: -> HotwordToggleOn(site_id='default', reason=<HotwordToggleReason.DIALOGUE_SESSION: 'dialogueSession'>)
[DEBUG:2021-11-12 09:41:01,593] rhasspydialogue_hermes: Publishing 50 bytes(s) to hermes/hotword/toggleOn
[DEBUG:2021-11-12 09:41:01,600] rhasspyasr_kaldi_hermes: <- AsrStopListening(site_id='default', session_id='default-blueberry_raspberry-pi-7b3c0f6b-c1b6-48fe-a6b8-c1800afc2e65')
[DEBUG:2021-11-12 09:41:01,601] rhasspywake_porcupine_hermes: <- HotwordToggleOn(site_id='default', reason=<HotwordToggleReason.DIALOGUE_SESSION: 'dialogueSession'>)
[DEBUG:2021-11-12 09:41:01,604] rhasspyasr_kaldi_hermes: Stopping listening (session_id=default-blueberry_raspberry-pi-7b3c0f6b-c1b6-48fe-a6b8-c1800afc2e65)
[DEBUG:2021-11-12 09:41:01,604] rhasspywake_porcupine_hermes: Enabled
[DEBUG:2021-11-12 09:41:01,611] rhasspywake_porcupine_hermes: Receiving audio default

vosk expansion_rules don't work

Once I add an expansion_rules to my de.yamlthe vosk add-on crashes on use (when speech gets sent)

sentences:
  - schalte das licht ein
  - (schalte|mach) das licht (im|in der|in dem) {area} (ein|an|aus)
lists:
  area:
    values:
      - wohnzimmer
      - küche
      - flur
      - badezimmer
expansion_rules:
  artikel: [der|die|das]

(Works fine if I delete the expansion_rules paragraph.)

Debug Log of the VOSK Add-on:

[22:37:18] INFO: Successfully sent discovery information to Home Assistant.
s6-rc: info: service discovery successfully started
s6-rc: info: service legacy-services: starting
s6-rc: info: service legacy-services successfully started
ERROR:asyncio:Task exception was never retrieved
future: <Task finished name='Task-8' coro=<AsyncEventHandler.run() done, defined at /usr/local/lib/python3.11/dist-packages/wyoming/server.py:28> exception=AttributeError("'list' object has no attribute 'strip'")>
Traceback (most recent call last):
  File "/usr/local/lib/python3.11/dist-packages/wyoming/server.py", line 35, in run
    if not (await self.handle_event(event)):
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/wyoming_vosk/__main__.py", line 282, in handle_event
    text = self._fix_transcript(original_text)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/wyoming_vosk/__main__.py", line 327, in _fix_transcript
    lang_config = load_sentences_for_language(
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/wyoming_vosk/sentences.py", line 107, in load_sentences_for_language
    expansion_rules[rule_name] = hassil.parse_sentence(rule_text)
                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/hassil/parse_expression.py", line 189, in parse_sentence
    text = text.strip()
           ^^^^^^^^^^
AttributeError: 'list' object has no attribute 'strip'

Assist microphone - distored voice

Hello, I have problem.
I am using the ‘Assist Microphone’ to recognize the wake word.
The wake word functionality is working properly. However, I am encountering an issue with the response; the voice is sped up and distorted, and I have error in the log:
'ALSA lib pcm.c:8570:(snd_pcm_recover) underrun occurred.'

My operating system version is 10.5,
Home Assistant Core version 2023.9.2.

I am using a Jabra Speak 510 for both my speaker and microphone.

Please clarify the relation between the two 'assist_microphone' add-ons

There are two non-identical add-ons with the same name 'assist_microphone', and same stated purpose

However, neither one seems to explain or discuss anywhere what the relation is or which one to use when etc.

This is very confusing, and at least the respective README's and add-on 'Documentation' should add some explanation about which one to use in what case etc.

Assist Microphone - Unexpected error

Hi ! 👋

I just tried to install and use the addon Assist Microphone but got an "Unexpected error"

Here are the logs I get when I start the addon :

ERROR:__main__:Unexpected error
Traceback (most recent call last):
  File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/__main__.py", line 200, in main
    async for _timestamp, event_type, event_data in stream(
  File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/remote.py", line 28, in stream
    async with session.ws_connect(url) as websocket:
  File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 1141, in __aenter__
    self._resp = await self._coro
                 ^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 779, in _ws_connect
    resp = await self.request(
           ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 560, in _request
    await resp.start(conn)
  File "/usr/local/lib/python3.11/dist-packages/aiohttp/client_reqrep.py", line 899, in start
    message, payload = await protocol.read()  # type: ignore[union-attr]
                       ^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/aiohttp/streams.py", line 616, in read
    await self._waiter
aiohttp.client_exceptions.ServerDisconnectedError: Server disconnected

Nothing else and it just repeats this over and over.

I run HA on a RP4 with Home Assistant OS.

Happy to provide more information if needed as I am kind of stuck 😞

Thanks for your awesome work

Failed Install Assist Microphone version 2.2.3

Any issue about Failed Install Assist Microphone version 2.2.3?

Currently used the system below:
Core 2023.10.5
Supervisor 2023.10.1
Operating System 11.1

and get this error logs below:

Failed to to call /addons/47701997_assist_microphone/install - The command '/bin/bash -o pipefail -c apt-get update && apt-get install -y --no-install-recommends build-essential libasound2-plugins alsa-utils ffmpeg python3 python3-pip python3-dev && pip3 install --no-cache-dir -U setuptools wheel && pip3 install --no-cache-dir "homeassistant_satellite[silerovad,webrtc]@https://github.com/synesthesiam/homeassistant-satellite/archive/refs/tags/${HOMEASSISTANT_SATELLITE_VERSION}.tar.gz" && apt-get remove --yes build-essential python3-dev && apt-get clean && rm -rf /var/lib/apt/lists/*' returned a non-zero code: 100

Assist Microphone fails to start if different hostname is used

Im using Assist Microphone version: 2.2.3.
I have activated SSL for my homeassistant instance with

http:
  server_port: 443
  ssl_certificate: /ssl/fullchain.pem
  ssl_key: /ssl/privkey.pem

The domain I use for it is home.my_domain.de. But if I try to start the addon I get the following message:

File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 982, in _wrap_create_connection
  raise ClientConnectorCertificateError(req.connection_key, exc) from exc
aiohttp.client_exceptions.ClientConnectorCertificateError: Cannot connect to host homeassistant:443 ssl:True [SSLCertVerificationError: (1, "[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: Hostname mismatch, certificate is not valid for 'homeassistant'. (_ssl.c:992)")]
ERROR:__main__:Unexpected error
Traceback (most recent call last):
File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 980, in _wrap_create_connection
  return await self._loop.create_connection(*args, **kwargs)  # type: ignore[return-value]  # noqa
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/base_events.py", line 1112, in create_connection
  transport, protocol = await self._create_connection_transport(
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/base_events.py", line 1145, in _create_connection_transport
  await waiter
File "/usr/lib/python3.11/asyncio/sslproto.py", line 574, in _on_handshake_complete
  raise handshake_exc
File "/usr/lib/python3.11/asyncio/sslproto.py", line 556, in _do_handshake
  self._sslobj.do_handshake()
File "/usr/lib/python3.11/ssl.py", line 979, in do_handshake
  self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: Hostname mismatch, certificate is not valid for 'homeassistant'. (_ssl.c:992)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/__main__.py", line 200, in main
  async for _timestamp, event_type, event_data in stream(
File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/remote.py", line 28, in stream
  async with session.ws_connect(url) as websocket:
File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 1141, in __aenter__
  self._resp = await self._coro
               ^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 779, in _ws_connect
  resp = await self.request(
         ^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 536, in _request
  conn = await self._connector.connect(
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 540, in connect
  proto = await self._create_connection(req, traces, timeout)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 901, in _create_connection
  _, proto = await self._create_direct_connection(req, traces, timeout)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 1206, in _create_direct_connection
  raise last_exc
File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 1175, in _create_direct_connection
  transp, proto = await self._wrap_create_connection(
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 982, in _wrap_create_connection
  raise ClientConnectorCertificateError(req.connection_key, exc) from exc
aiohttp.client_exceptions.ClientConnectorCertificateError: Cannot connect to host homeassistant:443 ssl:True [SSLCertVerificationError: (1, "[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: Hostname mismatch, certificate is not valid for 'homeassistant'. (_ssl.c:992)")]
ERROR:__main__:Unexpected error
Traceback (most recent call last):
File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 980, in _wrap_create_connection
  return await self._loop.create_connection(*args, **kwargs)  # type: ignore[return-value]  # noqa
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/base_events.py", line 1112, in create_connection
  transport, protocol = await self._create_connection_transport(
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/base_events.py", line 1145, in _create_connection_transport
  await waiter
File "/usr/lib/python3.11/asyncio/sslproto.py", line 574, in _on_handshake_complete
  raise handshake_exc
File "/usr/lib/python3.11/asyncio/sslproto.py", line 556, in _do_handshake
  self._sslobj.do_handshake()
File "/usr/lib/python3.11/ssl.py", line 979, in do_handshake
  self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: Hostname mismatch, certificate is not valid for 'homeassistant'. (_ssl.c:992)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/__main__.py", line 200, in main
  async for _timestamp, event_type, event_data in stream(
File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/remote.py", line 28, in stream
  async with session.ws_connect(url) as websocket:
File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 1141, in __aenter__
  self._resp = await self._coro
               ^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 779, in _ws_connect
  resp = await self.request(
         ^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 536, in _request
  conn = await self._connector.connect(
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 540, in connect
  proto = await self._create_connection(req, traces, timeout)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 901, in _create_connection
  _, proto = await self._create_direct_connection(req, traces, timeout)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 1206, in _create_direct_connection
  raise last_exc
File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 1175, in _create_direct_connection
  transp, proto = await self._wrap_create_connection(
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 982, in _wrap_create_connection
  raise ClientConnectorCertificateError(req.connection_key, exc) from exc
aiohttp.client_exceptions.ClientConnectorCertificateError: Cannot connect to host homeassistant:443 ssl:True [SSLCertVerificationError: (1, "[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: Hostname mismatch, certificate is not valid for 'homeassistant'. (_ssl.c:992)")]
ERROR:__main__:Unexpected error
Traceback (most recent call last):
File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 980, in _wrap_create_connection
  return await self._loop.create_connection(*args, **kwargs)  # type: ignore[return-value]  # noqa
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/base_events.py", line 1112, in create_connection
  transport, protocol = await self._create_connection_transport(
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/base_events.py", line 1145, in _create_connection_transport
  await waiter
File "/usr/lib/python3.11/asyncio/sslproto.py", line 574, in _on_handshake_complete
  raise handshake_exc
File "/usr/lib/python3.11/asyncio/sslproto.py", line 556, in _do_handshake
  self._sslobj.do_handshake()
File "/usr/lib/python3.11/ssl.py", line 979, in do_handshake
  self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: Hostname mismatch, certificate is not valid for 'homeassistant'. (_ssl.c:992)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/__main__.py", line 200, in main
  async for _timestamp, event_type, event_data in stream(
File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/remote.py", line 28, in stream
  async with session.ws_connect(url) as websocket:
File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 1141, in __aenter__
  self._resp = await self._coro
               ^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 779, in _ws_connect
  resp = await self.request(
         ^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 536, in _request
  conn = await self._connector.connect(
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 540, in connect
  proto = await self._create_connection(req, traces, timeout)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 901, in _create_connection
  _, proto = await self._create_direct_connection(req, traces, timeout)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 1206, in _create_direct_connection
  raise last_exc
File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 1175, in _create_direct_connection
  transp, proto = await self._wrap_create_connection(
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 982, in _wrap_create_connection
  raise ClientConnectorCertificateError(req.connection_key, exc) from exc
aiohttp.client_exceptions.ClientConnectorCertificateError: Cannot connect to host homeassistant:443 ssl:True [SSLCertVerificationError: (1, "[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: Hostname mismatch, certificate is not valid for 'homeassistant'. (_ssl.c:992)")]

under home.my_domain.de/config/network I have entered the correct domain.

Assist Microphone - Awake/Done Sound custom file path not responding

Loading a custom path into the awake/done sound with a custom .wav file seems to stop the add-on from triggering the voice assistant.

For example, I used /local/custom_awake.wav as my path to access a .wav stored in my www folder and this appears to stop the add-on from interacting with the voice assistant. Changing it back to the default or leaving it blank seems to have no effect on this working correctly.

Is there something I am missing? Or is this functionality not yet integrated? If it is correct is are there any limitations on the file size length compression type or file name that need to be taken into account?

Alternatively, where are the default sounds stored? I cannot seem to find the default file path within file editor.

Error after Assist Microphone 2.2.2 update

Assist Microphone was working, upgraded to 2.2.2 and get this error.

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/main.py", line 200, in main
async for _timestamp, event_type, event_data in stream(
File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/remote.py", line 28, in stream
async with session.ws_connect(url) as websocket:
File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 1141, in aenter
self._resp = await self._coro
^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 779, in _ws_connect
resp = await self.request(
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 425, in _request
raise InvalidURL(str_or_url) from e
aiohttp.client_exceptions.InvalidURL: ws://:8123/api/websocket
DEBUG:main:Waiting for speech
DEBUG:main:Speech detected
ERROR:main:Unexpected error
Traceback (most recent call last):
File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 423, in _request
url = self._build_url(str_or_url)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 357, in _build_url
url = URL(str_or_url)
^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/dist-packages/yarl/_url.py", line 188, in new
raise ValueError("Invalid URL: host is required for absolute urls")
ValueError: Invalid URL: host is required for absolute urls

Option 'mic_device' does not exist in the schema for Assist Microphone

Every 5 to 10 min I receive the following in the supervisor log:

2024-04-10 19:21:05.688 WARNING (MainThread) [supervisor.addons.options] Option 'mic_device' does not exist in the schema for Assist Microphone (47701997_assist_microphone)
2024-04-10 19:21:05.688 WARNING (MainThread) [supervisor.addons.options] Option 'snd_device' does not exist in the schema for Assist Microphone (47701997_assist_microphone)

I assume it has something to do with the Assist Microphone add-on.
The add-on is installed but no running

Assist Microphone Addon: microphone detected but does not pickup any audio

Hi, for the last couple of days I was playing with Assist Microphone Add-on for HA. Unfortunately I cannot get it working. I can see the microphone is detected but nothing happens. I know that the open_wakeword addon works fine as I can test it via assist in the web browser (over https connection). I am using a generic mic/speaker set (like this one: https://www.aliexpress.com/item/1005005929228163.html). I tested it on my standalone debian pc and that worked without any drivers (plug and play).

My system

Proxmox VM with HA OS (pass through USB hub and generic mic/speaker)
Home Assistant 2023.10.5
Supervisor 2023.10.1
Operating System 11.1
Frontend 20231005.0

Connected Speakers/Mics/Sound Cards - speaker/mic connected to a pass through hub that I know it is working as I have my zwave stick connected to it and HA is correctly detecting that speaker/mic device:

ha audio info

audio:
  application:
  - addon: 47701997_assist_microphone
    index: 2
    mute: false
    name: ALSA plug-in [aplay]
    stream_index: 1
    stream_type: input
    volume: 1
  card:
  - driver: module-alsa-card.c
    index: 0
    name: alsa_card.usb-BY_BY_Y02_20180508-00
    profiles:
    - active: false
      description: Analog Stereo Input
      name: input:analog-stereo
    - active: false
      description: Digital Stereo (IEC958) Input
      name: input:iec958-stereo
    - active: false
      description: Analog Stereo Output
      name: output:analog-stereo
    - active: true
      description: Analog Stereo Duplex
      name: output:analog-stereo+input:analog-stereo
    - active: false
      description: Analog Stereo Output + Digital Stereo (IEC958) Input
      name: output:analog-stereo+input:iec958-stereo
    - active: false
      description: Digital Stereo (IEC958) Output
      name: output:iec958-stereo
    - active: false
      description: Digital Stereo (IEC958) Output + Analog Stereo Input
      name: output:iec958-stereo+input:analog-stereo
    - active: false
      description: Digital Stereo Duplex (IEC958)
      name: output:iec958-stereo+input:iec958-stereo
    - active: false
      description: "Off"
      name: "off"
  input:
  - applications:
    - addon: 47701997_assist_microphone
      index: 2
      mute: false
      name: ALSA plug-in [aplay]
      stream_index: 1
      stream_type: input
      volume: 1
    card: 0
    default: true
    description: BY Y02 Analog Stereo
    index: 1
    mute: false
    name: alsa_input.usb-BY_BY_Y02_20180508-00.analog-stereo
    volume: 0.5495452880859375
  output:
  - applications: []
    card: 0
    default: true
    description: BY Y02 Analog Stereo
    index: 2
    mute: false
    name: alsa_output.usb-BY_BY_Y02_20180508-00.analog-stereo
    volume: 0.860992431640625
host: 172.30.32.4
update_available: false
version: 2023.06.0
version_latest: 2023.06.0

Assist Microphone Logs

s6-rc: info: service s6rc-oneshot-runner: starting
s6-rc: info: service s6rc-oneshot-runner successfully started
s6-rc: info: service fix-attrs: starting
s6-rc: info: service fix-attrs successfully started
s6-rc: info: service legacy-cont-init: starting
s6-rc: info: service legacy-cont-init successfully started
s6-rc: info: service assist_microphone: starting
s6-rc: info: service assist_microphone successfully started
s6-rc: info: service legacy-services: starting
s6-rc: info: service legacy-services successfully started
DEBUG:__main__:Namespace(host='homeassistant', token='REMOVED', port=8123, api_path='/api', pipeline='', protocol='http', mic_device=None, snd_device=None, mic_command=None, snd_command=None, snd_command_sample_rate=22050, awake_sound='/usr/src/sounds/awake.wav', done_sound='/usr/src/sounds/done.wav', volume=1.0, vad='silero', vad_model=PosixPath('/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/models/silero_vad.onnx'), vad_threshold=0.5, vad_trigger_level=3, vad_buffer_chunks=40, wake_buffer_seconds=0.0, noise_suppression=2, auto_gain=15, volume_multiplier=1.0, udp_mic=None, udp_snd=None, udp_snd_sample_rate=22050, debug_recording_dir='', debug=True)
DEBUG:__main__:Waiting for speech
DEBUG:__main__:Using webrtc audio processing
2023-10-29 12:20:41.278480944 [W:onnxruntime:, graph.cc:3553 CleanUnusedInitializersAndNodeArgs] Removing initializer '131'. It is not used by any node and should be removed from the model.
2023-10-29 12:20:41.278540429 [W:onnxruntime:, graph.cc:3553 CleanUnusedInitializersAndNodeArgs] Removing initializer '136'. It is not used by any node and should be removed from the model.
2023-10-29 12:20:41.278552608 [W:onnxruntime:, graph.cc:3553 CleanUnusedInitializersAndNodeArgs] Removing initializer '139'. It is not used by any node and should be removed from the model.
2023-10-29 12:20:41.278561751 [W:onnxruntime:, graph.cc:3553 CleanUnusedInitializersAndNodeArgs] Removing initializer '140'. It is not used by any node and should be removed from the model.
2023-10-29 12:20:41.278570442 [W:onnxruntime:, graph.cc:3553 CleanUnusedInitializersAndNodeArgs] Removing initializer '134'. It is not used by any node and should be removed from the model.
2023-10-29 12:20:41.278638153 [W:onnxruntime:, graph.cc:3553 CleanUnusedInitializersAndNodeArgs] Removing initializer '628'. It is not used by any node and should be removed from the model.
2023-10-29 12:20:41.278650253 [W:onnxruntime:, graph.cc:3553 CleanUnusedInitializersAndNodeArgs] Removing initializer '623'. It is not used by any node and should be removed from the model.
2023-10-29 12:20:41.278659081 [W:onnxruntime:, graph.cc:3553 CleanUnusedInitializersAndNodeArgs] Removing initializer '629'. It is not used by any node and should be removed from the model.
2023-10-29 12:20:41.278667310 [W:onnxruntime:, graph.cc:3553 CleanUnusedInitializersAndNodeArgs] Removing initializer '620'. It is not used by any node and should be removed from the model.
2023-10-29 12:20:41.278688366 [W:onnxruntime:, graph.cc:3553 CleanUnusedInitializersAndNodeArgs] Removing initializer '625'. It is not used by any node and should be removed from the model.
DEBUG:__main__:Using silero VAD
DEBUG:root:Microphone command: ['arecord', '-r', '16000', '-c', '1', '-f', 'S16_LE', '-t', 'raw']
Recording raw data 'stdin' : Signed 16 bit Little Endian, Rate 16000 Hz, Mono

Where am I going wrong?
Thanks

Pipeline fails to start for Assist Microphone

So I am using the Assist Microphone add on to use my usb microphone.

I have installed openwakeword addon ,and whisper.
I am running this on Home Assistant OS 2023.10.2

I have configured the assist pipeline this way.
image

I am able to run the pipe line using voice from the Home Assistant Companion App. So the Pipeline is working properly to turn on a light.

But when I try to do the same with the Wake work "alexa" , it does not work .
I see an error while invoking the pipeline in the Assist Microphone add on.

Here is the log of the Assist Microphone add on

DEBUG:__main__:Speech detected
DEBUG:homeassistant_satellite.remote:{'type': 'auth_required', 'ha_version': '2023.10.2'}
DEBUG:homeassistant_satellite.remote:{'type': 'auth_ok', 'ha_version': '2023.10.2'}
DEBUG:homeassistant_satellite.remote:{'id': 1, 'type': 'result', 'success': False, 'error': {'code': 'unknown_error', 'message': 'Unknown error'}}
ERROR:__main__:Unexpected error
Traceback (most recent call last):
  File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/__main__.py", line 193, in main
    async for _timestamp, event_type, event_data in stream(
  File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/remote.py", line 35, in stream
    message_id, handler_id = await _start_pipeline(
                             ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/remote.py", line 119, in _start_pipeline
    assert msg["success"], "Pipeline failed to run"
AssertionError: Pipeline failed to run
DEBUG:__main__:Waiting for speech

DEBUG:__main__:Speech detected
DEBUG:homeassistant_satellite.remote:{'type': 'auth_required', 'ha_version': '2023.10.2'}
DEBUG:homeassistant_satellite.remote:{'type': 'auth_ok', 'ha_version': '2023.10.2'}
DEBUG:homeassistant_satellite.remote:{'id': 1, 'type': 'result', 'success': False, 'error': {'code': 'unknown_error', 'message': 'Unknown error'}}
ERROR:__main__:Unexpected error
Traceback (most recent call last):
  File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/__main__.py", line 193, in main
    async for _timestamp, event_type, event_data in stream(
  File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/remote.py", line 35, in stream
    message_id, handler_id = await _start_pipeline(
                             ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/remote.py", line 119, in _start_pipeline
    assert msg["success"], "Pipeline failed to run"
AssertionError: Pipeline failed to run

This is the configuration of my Assist Microphone add on

image image

Can you help me in fixing this?

Assist Microphone Addon: ALSA lib underrun occurred (inside a VM)

Hi, today I was playing with Assist Microphone Add-on for HA. Unfortunately I get only to the point where i get this error in Assist Microphone Logs.

Edit: It's worth to mention, that a standard rhasspy Add-on is working perfectly fine with the same setup.

My system

  • Proxmox VM with HA OS (pass through sound card & Anker PowerConf S330)
  • Home Assistant 2023.10.2
  • Supervisor 2023.10.0
  • Operating System 10.5
  • UI 20231005.0 - latest

Connected Speakers/Mics/Sound Cards

  • Anker PowerConf S330 (USB) - chosen in Assist Microphone Add-on configuration
  • External SoundCard used by Mopidy Add-on (later I removed it without any impact on issue)
  • Intel HDA sound card pass through to VM

Assist Microphone Logs

...
ALSA lib pcm.c:8570:(snd_pcm_recover) underrun occurred
ALSA lib pcm.c:8570:(snd_pcm_recover) underrun occurred
ALSA lib pcm.c:8570:(snd_pcm_recover) underrun occurred
...

ha audio info

[core-ssh ~]$ ha audio info
audio:
  application:
  - addon: 47701997_assist_microphone
    index: 193
    mute: false
    name: ALSA plug-in [python3.11]
    stream_index: 0
    stream_type: output
    volume: 1
  - addon: 47701997_assist_microphone
    index: 1
    mute: false
    name: ALSA plug-in [python3.11]
    stream_index: 1
    stream_type: input
    volume: 1
  card:
  - driver: module-alsa-card.c
    index: 0
    name: alsa_card.usb-ANKER_Anker_PowerConf_S330_ACCUDP1C49600164-00
    profiles:
    - active: false
      description: Analog Stereo Input
      name: input:analog-stereo
    - active: false
      description: Digital Stereo (IEC958) Input
      name: input:iec958-stereo
    - active: false
      description: Analog Stereo Output
      name: output:analog-stereo
    - active: true
      description: Analog Stereo Duplex
      name: output:analog-stereo+input:analog-stereo
    - active: false
      description: Analog Stereo Output + Digital Stereo (IEC958) Input
      name: output:analog-stereo+input:iec958-stereo
    - active: false
      description: Digital Stereo (IEC958) Output
      name: output:iec958-stereo
    - active: false
      description: Digital Stereo (IEC958) Output + Analog Stereo Input
      name: output:iec958-stereo+input:analog-stereo
    - active: false
      description: Digital Stereo Duplex (IEC958)
      name: output:iec958-stereo+input:iec958-stereo
    - active: false
      description: "Off"
      name: "off"
  - driver: module-alsa-card.c
    index: 1
    name: alsa_card.pci-0000_08_0c.0
    profiles:
    - active: false
      description: Analog Stereo Input
      name: input:analog-stereo
    - active: false
      description: Analog Stereo Output
      name: output:analog-stereo
    - active: true
      description: Analog Stereo Duplex
      name: output:analog-stereo+input:analog-stereo
    - active: false
      description: "Off"
      name: "off"
  input:
  - applications:
    - addon: 47701997_assist_microphone
      index: 1
      mute: false
      name: ALSA plug-in [python3.11]
      stream_index: 1
      stream_type: input
      volume: 1
    card: 0
    default: true
    description: Anker PowerConf S330 Analog Stereo
    index: 1
    mute: false
    name: alsa_input.usb-ANKER_Anker_PowerConf_S330_ACCUDP1C49600164-00.analog-stereo
    volume: 1
  - applications: []
    card: 1
    default: false
    description: HDA Intel Analog Stereo
    index: 3
    mute: true
    name: alsa_input.pci-0000_08_0c.0.analog-stereo
    volume: 0.058441162109375
  output:
  - applications:
    - addon: 47701997_assist_microphone
      index: 193
      mute: false
      name: ALSA plug-in [python3.11]
      stream_index: 0
      stream_type: output
      volume: 1
    card: 0
    default: true
    description: Anker PowerConf S330 Analog Stereo
    index: 0
    mute: false
    name: alsa_output.usb-ANKER_Anker_PowerConf_S330_ACCUDP1C49600164-00.analog-stereo
    volume: 1
  - applications: []
    card: 1
    default: false
    description: HDA Intel Analog Stereo
    index: 1
    mute: false
    name: alsa_output.pci-0000_08_0c.0.analog-stereo
    volume: 1
host: 172.30.32.4
update_available: false
version: 2023.06.0
version_latest: 2023.06.0

ha audio log

[core-ssh ~]$ ha audio log
s6-rc: info: service s6rc-oneshot-runner: starting
s6-rc: info: service s6rc-oneshot-runner successfully started
s6-rc: info: service fix-attrs: starting
s6-rc: info: service fix-attrs successfully started
s6-rc: info: service legacy-cont-init: starting
cont-init: info: running /etc/cont-init.d/alsa-mixer.sh
[17:38:34] INFO: Adjust ALSA mixer settings for /dev/snd/controlC0
[17:38:35] INFO: Adjust ALSA mixer settings for /dev/snd/controlC1
[17:38:35] INFO: Adjust ALSA mixer settings for /dev/snd/controlC2
cont-init: info: /etc/cont-init.d/alsa-mixer.sh exited 0
cont-init: info: running /etc/cont-init.d/filesystem.sh
cont-init: info: /etc/cont-init.d/filesystem.sh exited 0
s6-rc: info: service legacy-cont-init successfully started
s6-rc: info: service legacy-services: starting
services-up: info: copying legacy longrun alsa (no readiness notification)
services-up: info: copying legacy longrun pulseaudio (no readiness notification)
s6-rc: info: service legacy-services successfully started
W: [pulseaudio] main.c: Running in system mode, but --disallow-module-loading not set.
W: [pulseaudio] main.c: Home directory of user 'root' is not '/var/run/pulse', ignoring.
W: [pulseaudio] caps.c: Normally all extra capabilities would be dropped now, but that's impossible because PulseAudio was built without capabilities support.
W: [pulseaudio] main.c: OK, so you are running PA in system mode. Please make sure that you actually do want to do that.
W: [pulseaudio] main.c: Please read http://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/WhatIsWrongWithSystemWide/ for an explanation why system mode is usually a bad idea.
W: [pulseaudio] module-udev-detect.c: Failed to open /proc/asound/card0: No such file or directory
E: [pulseaudio] module-alsa-card.c: Failed to find a working profile.
E: [pulseaudio] module.c: Failed to load module "module-alsa-card" (argument: "device_id="0" name="pci-0000_00_1b.0" card_name="alsa_card.pci-0000_00_1b.0" namereg_fail=false tsched=yes fixed_latency_range=no ignore_dB=no deferred_volume=yes use_ucm=yes avoid_resampling=no card_properties="module-udev-detect.discovered=1""): initialization failed.
W: [pulseaudio] module-udev-detect.c: Failed to open /proc/asound/card2: No such file or directory
N: [pulseaudio] alsa-util.c: Disabling timer-based scheduling because running inside a VM.
N: [pulseaudio] alsa-util.c: Disabling timer-based scheduling because running inside a VM.
W: [pulseaudio] module-udev-detect.c: Failed to open /proc/asound/card1: No such file or directory
N: [pulseaudio] alsa-util.c: Disabling timer-based scheduling because running inside a VM.
N: [pulseaudio] alsa-util.c: Disabling timer-based scheduling because running inside a VM.
E: [pulseaudio] module-rescue-streams.c: module-rescue-stream is obsolete and should no longer be loaded. Please remove it from your configuration.
E: [alsa-sink-USB Audio] alsa-sink.c: ALSA woke us up to write new data to the device, but there was actually nothing to write.
E: [alsa-sink-USB Audio] alsa-sink.c: Most likely this is a bug in the ALSA driver 'snd_usb_audio'. Please report this issue to the ALSA developers.
E: [alsa-sink-USB Audio] alsa-sink.c: We were woken up with POLLOUT set -- however a subsequent snd_pcm_avail() returned 0 or another value < min_avail.
E: [alsa-source-USB Audio] alsa-source.c: ALSA woke us up to read new data from the device, but there was actually nothing to read.
E: [alsa-source-USB Audio] alsa-source.c: Most likely this is a bug in the ALSA driver 'snd_usb_audio'. Please report this issue to the ALSA developers.
E: [alsa-source-USB Audio] alsa-source.c: We were woken up with POLLIN set -- however a subsequent snd_pcm_avail() returned 0 or another value < min_avail.

Homeassistant no audio output

Hi guys!

I try now for 1 or 2 hours to get Rhasspy to work on my HassOS (ODROID N2+) but I get every time an error.

Rhasspy Log: https://gist.github.com/Johnnii360/df70ba14768695515e037083c2e258ac
Homeassistant Core Log: https://gist.github.com/Johnnii360/c8106cb3035e5d7f63b3db9770ac1e74

I already tried all URL variations.

Nothing worked!

Some Ideas?

Assist Microphone Fails to start if Homeassistant SSL activated

Hi,

I installed and configured the "Assist Microphone" AddOn. But if I try to start it, it fails and I get the following log:

    File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 980, in _wrap_create_connection
      return await self._loop.create_connection(*args, **kwargs)  # type: ignore[return-value]  # noqa
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3.11/asyncio/base_events.py", line 1085, in create_connection
      raise exceptions[0]
    File "/usr/lib/python3.11/asyncio/base_events.py", line 1069, in create_connection
      sock = await self._connect_sock(
             ^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3.11/asyncio/base_events.py", line 973, in _connect_sock
      await self.sock_connect(sock, address)
    File "/usr/lib/python3.11/asyncio/selector_events.py", line 634, in sock_connect
      return await fut
             ^^^^^^^^^
    File "/usr/lib/python3.11/asyncio/selector_events.py", line 674, in _sock_connect_cb
      raise OSError(err, f'Connect call failed {address}')
    ConnectionRefusedError: [Errno 111] Connect call failed ('172.30.32.1', 8123)
    The above exception was the direct cause of the following exception:
    Traceback (most recent call last):
    File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/__main__.py", line 193, in main
      async for _timestamp, event_type, event_data in stream(
    File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/remote.py", line 26, in stream
      async with session.ws_connect(url) as websocket:
    File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 1141, in __aenter__
      self._resp = await self._coro
                   ^^^^^^^^^^^^^^^^
    File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 779, in _ws_connect
      resp = await self.request(
             ^^^^^^^^^^^^^^^^^^^
    File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 536, in _request
      conn = await self._connector.connect(
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 540, in connect
      proto = await self._create_connection(req, traces, timeout)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 901, in _create_connection
      _, proto = await self._create_direct_connection(req, traces, timeout)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 1206, in _create_direct_connection
      raise last_exc
    File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 1175, in _create_direct_connection
      transp, proto = await self._wrap_create_connection(
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 988, in _wrap_create_connection
      raise client_error(req.connection_key, exc) from exc
    aiohttp.client_exceptions.ClientConnectorError: Cannot connect to host homeassistant:8123 ssl:default [Connect call failed ('172.30.32.1', 8123)]
    ERROR:__main__:Unexpected error
    Traceback (most recent call last):
    File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 980, in _wrap_create_connection
      return await self._loop.create_connection(*args, **kwargs)  # type: ignore[return-value]  # noqa
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3.11/asyncio/base_events.py", line 1085, in create_connection
      raise exceptions[0]
    File "/usr/lib/python3.11/asyncio/base_events.py", line 1069, in create_connection
      sock = await self._connect_sock(
             ^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3.11/asyncio/base_events.py", line 973, in _connect_sock
      await self.sock_connect(sock, address)
    File "/usr/lib/python3.11/asyncio/selector_events.py", line 634, in sock_connect
      return await fut
             ^^^^^^^^^
    File "/usr/lib/python3.11/asyncio/selector_events.py", line 674, in _sock_connect_cb
      raise OSError(err, f'Connect call failed {address}')
    ConnectionRefusedError: [Errno 111] Connect call failed ('172.30.32.1', 8123)
    The above exception was the direct cause of the following exception:
    Traceback (most recent call last):
    File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/__main__.py", line 193, in main
      async for _timestamp, event_type, event_data in stream(
    File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/remote.py", line 26, in stream
      async with session.ws_connect(url) as websocket:
    File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 1141, in __aenter__
      self._resp = await self._coro
                   ^^^^^^^^^^^^^^^^
    File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 779, in _ws_connect
      resp = await self.request(
             ^^^^^^^^^^^^^^^^^^^
    File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 536, in _request
      conn = await self._connector.connect(
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 540, in connect
      proto = await self._create_connection(req, traces, timeout)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 901, in _create_connection
      _, proto = await self._create_direct_connection(req, traces, timeout)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 1206, in _create_direct_connection
      raise last_exc
    File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 1175, in _create_direct_connection
      transp, proto = await self._wrap_create_connection(
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 988, in _wrap_create_connection
      raise client_error(req.connection_key, exc) from exc
    aiohttp.client_exceptions.ClientConnectorError: Cannot connect to host homeassistant:8123 ssl:default [Connect call failed ('172.30.32.1', 8123)]
    ERROR:__main__:Unexpected error
    Traceback (most recent call last):
    File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 980, in _wrap_create_connection
      return await self._loop.create_connection(*args, **kwargs)  # type: ignore[return-value]  # noqa

Because of voice assistant in the browser I was forced to enable SSL for homeassistant. Therefore my homeassistant does not listen on port 8123. Instead it listens on port 443.

    http:
      server_port: 443
      ssl_certificate: /ssl/fullchain.pem
      ssl_key: /ssl/privkey.pem

It would be nice if this would be detected or if I could at least configure that in the settings of the addon. It is reachable under home.my-domain.tld .

many thanks in advance

[Question] Ability to call service to have Assist Microphone reactivate for continued conversation.

So far the Assist Microphone is working great, but I was wondering if there is any way to have it trigger with a service call? For Example, you make the service call, the Awake sound triggers and the mic is ready for further input.
I'm using the "Extended OpenAI Conversation" add-on to use the OpenAI conversation agent for device control as well as conversation via Assist. Which is a game changer for Assist (https://github.com/jekalmin/extended_openai_conversation)
It could easily have a function that would call this service if it's last response ended in a query.

Assist Microphone - Failed to start add-on

Hello

I installed the Assist Microphone to utilize my Jabra Speak 410 to test out the new updates.

However when I go to start the add-on I get the below error.

I have rebooted the device that Home Assistant is on a few times without success.

Is it possible to resolve this?

Logger: homeassistant.components.hassio
Source: components/hassio/websocket_api.py:138
Integration: Home Assistant Supervisor (documentation, issues)
First occurred: October 12, 2023 at 9:32:03 PM (9 occurrences)
Last logged: 8:44:14 AM

Failed to to call /addons/47701997_assist_microphone/start - Image 47701997/amd64-addon-assist_microphone:1.2.1 does not exist for addon_47701997_assist_microphone

My Config Page is below.

8DEVown
0qxoOMs
r7kUo5m

Assist Microphone: Adjust volume input

I am using a avusio microphone connect via USB to a RPi 4. The voice assistant worked only if I was speaking very close to the microphone. The sound files received through the debug options were very quiet. Any tweakings through the configuration of the addon didn't work. But then I adjusted the input volume via ha audio volume input --index ... --volume XX and it works very smooth now. Do I miss a configuration from the addon? I don't want to log every time into the HA shell to adjust the input volume of the mic.

[Feature Request] Assist Microphone - binary_sensor "Assist in progress"

With the M5Stack Atom Echo via ESPHome as input/output device for Voice Assistant, there is the binary_sensor "Assist in progress".
It would be usefull to have such a sensor also with the Assist Microfone.

That way, for example an indicator LED/Light could be set while Assist is listening. (In that case the awake and done sounds could even be silent as the LED indicator would be enough to know when to speak.)

Notifications

It would be really nice if we could have a way of sending voice notifications to the speaker. Something like "the coffee is ready" without needed to be prompted first.

Porcupine1, custom wake word

Hi Mike,

Thank you so much for your amazing work !!!

French HA user for 3 years, would it be possible to use a french custom wake word generated with the free picovoice platform in your porcupine1 addon like it is possible with openwakeword?

Have a good day

Assist Microphone - Awake Sound played 5-8x in row randomly

The issues Ive got is sometimes the Assist Microphone Add-on is playing 5-8x Awake sound just one-after-one. This happens in different situations:

  • when listening to TV speaking
  • when everything is off and it's quiet

Ive checked the logs when that happens, but theres nothing in Assist Microphone Add-on or openWakeWord - just like it's fired 5-8x times randomly just the Awake Sound.

This prevents me from running Assist Mic Add-on at the full scale.

My system
Proxmox VM with HA OS (pass through sound card & Anker PowerConf S330)
Home Assistant 2023.10.2
Supervisor 2023.10.0
Operating System 10.5
UI 20231005.0 - latest

Connected Speakers/Mics/Sound Cards
Anker PowerConf S330 (USB) - chosen in Assist Microphone Add-on configuration
External SoundCard used by Mopidy Add-on (later I removed it without any impact on issue)
Intel HDA sound card pass through to VM

Assist Microphone - USB3 is not recognised

[HA 2023.10, hardware raspberry pi 4]

I configured openwakeword and assist-microphone but my Dell WH3022 USB headset attached directly to my RPI4 USB3 slot is not recognised by assist-microphone (dropdown list is empty in the configuration section)

image

However, the device is listed in the hardware section:

image

porcupine sensitivity description

In the porcupine1 addon config it says:

Sensitivity
Activation threshold (0-1), where higher means fewer activations.

But in the pvporcupine docs it looks the other way round.

Sensitivity is the parameter that enables trading miss rate for the false alarm rate.
It is a floating point number within [0, 1].
A higher sensitivity reduces the miss rate at the cost of increased false alarm rate.

Probably copy/paste issue from the openWakeWord addon, I guess the wording needs to be changed.

Rhasspy ignores all build-in Hass intents except of HassGetTemperature

Hi guys!

I try now for days to get my intents like HassTurnOn, HassTurnOff and HassLightSet to work but without any solution. I already posted in the Rhasspy forum but didn't get any answer until now. The only intent that works is HassGetTemperature. Here the speech set in the configuration.yaml is play correctly in German. But the other mentioned are ignored by Rhasspy and always in English though I set all to German.

Here my intents/homeassistant.ini:

[HassTurnOn]
lights = $hass/entities,light
switches = $hass/entities,switch
entities = <lights> | <switches>
schalte (<entities>){name} ein

[HassTurnOff]
schalte [die|das] (<HassTurnOn.entities>){name} aus

[HassLightSet]
farbe von (<HassTurnOn.lights>){name} auf ($hass/colors){color}
helligkeit von (<HassTurnOn.lights>){name} auf (0..100){brightness}
helligkeit von (<HassTurnOn.lights>){name} auf (0..100){brightness} prozent

[HassGetTemperature]
wie ist [die] temperatur von ($hass/rooms){name}
temperatur von ($hass/rooms){name}

My configuration.yaml:

# Loads default set of integrations. Do not remove.
default_config:

# Text to speech
tts:
#  - platform: google_translate
   - platform: picotts
     language: "de-DE"

automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml

#Home Assistant Rhasspy Custom intent (for configuration.yaml):
intent:

intent_script:
  HassGetTemperature:
    speech:
      text: "Die Temperatur von {{ area_name('sensor.' + name) }} ist {{ states('sensor.' + name) }} grad celsius."
  HassTurnOn:
    speech:
      text: "{{ name }} wurde eingeschaltet."
  HassTurnOff:
    speech:
      text: "{{ name }} wurde ausgeschaltet."
  HassLightSet:
    speech:
      text: "Ausgeführt!"
  GetTime:
    speech:
      text: "Es ist {{ now().hour }} Uhr {{ now().minute }}."

Here a log of Rhasspy:

[DEBUG:2022-08-20 14:21:28,348] rhasspyserver_hermes: Sent 681 char(s) to websocket
[DEBUG:2022-08-20 14:21:28,343] rhasspyserver_hermes: <- NluIntent(input='schalte Stehlampe ein', intent=Intent(intent_name='HassTurnOn', confidence_score=1.0), site_id='default', id=None, slots=[Slot(entity='hass/entities', value={'kind': 'Unknown', 'value': 'Stehlampe'}, slot_name='name', raw_value='stehlampe', confidence=1.0, range=SlotRange(start=8, end=17, raw_start=8, raw_end=17))], session_id='default-blueberry_raspberry-pi-4dc43885-23a4-41b7-9b91-efbbeeaa09d2', custom_data='blueberry_raspberry-pi', asr_tokens=[[AsrToken(value='schalte', confidence=1.0, range_start=0, range_end=7, time=None), AsrToken(value='Stehlampe', confidence=1.0, range_start=8, range_end=17, time=None), AsrToken(value='ein', confidence=1.0, range_start=18, range_end=21, time=None)]], asr_confidence=0.5008843015020575, raw_input='schalte stehlampe ein', wakeword_id='blueberry_raspberry-pi', lang=None)
[DEBUG:2022-08-20 14:21:24,712] rhasspyserver_hermes: <- HotwordDetected(model_id='/usr/lib/rhasspy/.venv/lib/python3.7/site-packages/pvporcupine/resources/keyword_files/raspberry-pi/blueberry_raspberry-pi.ppn', model_version='', model_type='personal', current_sensitivity=0.5, site_id='default', session_id=None, send_audio_captured=None, lang=None, custom_entities=None)
[DEBUG:2022-08-20 14:21:09,495] rhasspyserver_hermes: Sent 934 char(s) to websocket
[DEBUG:2022-08-20 14:21:09,492] rhasspyserver_hermes: <- NluIntent(input='temperatur von temperatur_und_luftfeuchtigkeitssensor_aussen_temperature', intent=Intent(intent_name='HassGetTemperature', confidence_score=1.0), site_id='default', id=None, slots=[Slot(entity='hass/rooms', value={'kind': 'Unknown', 'value': 'temperatur_und_luftfeuchtigkeitssensor_aussen_temperature'}, slot_name='name', raw_value='balkon', confidence=1.0, range=SlotRange(start=15, end=72, raw_start=15, raw_end=21))], session_id='default-blueberry_raspberry-pi-fa1b6d61-f23e-4d5f-bcda-dba99f284143', custom_data='blueberry_raspberry-pi', asr_tokens=[[AsrToken(value='temperatur', confidence=1.0, range_start=0, range_end=10, time=None), AsrToken(value='von', confidence=1.0, range_start=11, range_end=14, time=None), AsrToken(value='temperatur_und_luftfeuchtigkeitssensor_aussen_temperature', confidence=1.0, range_start=15, range_end=72, time=None)]], asr_confidence=0.6949313706933038, raw_input='temperatur von balkon', wakeword_id='blueberry_raspberry-pi', lang=None)
[DEBUG:2022-08-20 14:21:05,544] rhasspyserver_hermes: <- HotwordDetected(model_id='/usr/lib/rhasspy/.venv/lib/python3.7/site-packages/pvporcupine/resources/keyword_files/raspberry-pi/blueberry_raspberry-pi.ppn', model_version='', model_type='personal', current_sensitivity=0.5, site_id='default', session_id=None, send_audio_captured=None, lang=None, custom_entities=None)

The first intent (2022-08-20 14:21:05,544) was a HassGetTemperature that fired correctly. But the second that turned on my floor lamp (Stehlampe), the speech in the configuration.yaml is ignored every time.

I already crawled through the internet but didn't find any useful. It's a bug or do I have some to do additionally? GetTime works also correctly.

At least my systeminfo:

System Information

version core-2022.8.6
installation_type Home Assistant OS
dev false
hassio true
docker true
user root
virtualenv false
python_version 3.10.5
os_name Linux
os_version 5.15.55
arch aarch64
timezone Europe/Berlin
config_dir /config
Home Assistant Cloud
logged_in false
can_reach_cert_server ok
can_reach_cloud_auth ok
can_reach_cloud ok
Home Assistant Supervisor
host_os Home Assistant OS 8.4
update_channel stable
supervisor_version supervisor-2022.08.3
agent_version 1.2.1
docker_version 20.10.14
disk_total 56.0 GB
disk_used 10.7 GB
healthy true
supported true
board odroid-n2
supervisor_api ok
version_api ok
installed_addons Terminal & SSH (9.6.0), PicoTTS (1.6.0), Spotify Connect (0.12.2), motionEye (0.18.0), Rhasspy Assistant (2.5.11)
Dashboards
dashboards 1
resources 0
views 1
mode storage
Recorder
oldest_recorder_run 14. August 2022 um 05:13
current_recorder_run 19. August 2022 um 17:39
estimated_db_size 65.07 MiB
database_engine sqlite
database_version 3.38.5

VOSK doesn't recognise numbers as digits

When I ask Assist to set brightness to 100%, vosk translates my request with something like

Set studio brightness to one hundred percent

Home Assistant doesn't understand one hundred and it expects the number 100.

This happens in the Italian language.

USB Speakerphone not available in Input/Output

I'm trying to set up wakeword support on my HA setup. The pipeline was previously configured, using Whisper and Piper, and I have it set for Openwakeword: "ok nabu". However, the system does not seem to use my USB speakerphone for the audio, and I can only select "Default" or "Built-in Audio Analog Stero" in the Assist Microphone configuration.

The device is a "KAYSUDA USB Speaker Phone" from Amazon. It shows up on my system as follows:

BUSNUM: '001'
DEVNAME: /dev/bus/usb/001/003
DEVNUM: '003'
DEVPATH: /devices/pci0000:00/0000:00:14.0/usb1/1-4
DEVTYPE: usb_device
DRIVER: usb
ID_BUS: usb
ID_FOR_SEAT: usb-pci-0000_00_14_0-usb-0_4
ID_MODEL: SPEAKPHONE_SP300U
ID_MODEL_ENC: SPEAKPHONE\x20SP300U
ID_MODEL_ID: '3220'
ID_PATH: pci-0000:00:14.0-usb-0:4
ID_PATH_TAG: pci-0000_00_14_0-usb-0_4
ID_REVISION: '0010'
ID_SERIAL: Shenzhen_Startime_CO._LTD._SPEAKPHONE_SP300U
ID_USB_INTERFACES: ':010100:010200:030000:'
ID_USB_MODEL: SPEAKPHONE_SP300U
ID_USB_MODEL_ENC: SPEAKPHONE\x20SP300U
ID_USB_MODEL_ID: '3220'
ID_USB_REVISION: '0010'
ID_USB_SERIAL: Shenzhen_Startime_CO._LTD._SPEAKPHONE_SP300U
ID_USB_VENDOR: Shenzhen_Startime_CO._LTD.
ID_USB_VENDOR_ENC: Shenzhen\x20Startime\x20CO.\x2cLTD.
ID_USB_VENDOR_ID: '4658'
ID_VENDOR: Shenzhen_Startime_CO._LTD.
ID_VENDOR_ENC: Shenzhen\x20Startime\x20CO.\x2cLTD.
ID_VENDOR_ID: '4658'
MAJOR: '189'
MINOR: '2'
PRODUCT: 4658/3220/10
SUBSYSTEM: usb
TAGS: ':seat:'
TYPE: 0/0/0
USEC_INITIALIZED: '1454022'

dmesg result if I unplug and replug device:

[234294.954609] usb 1-4: USB disconnect, device number 3
[234296.356146] usb 1-4: new full-speed USB device number 7 using xhci_hcd
[234296.482602] usb 1-4: New USB device found, idVendor=1234, idProduct=5678, bcdDevice= 0.10
[234296.482619] usb 1-4: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[234297.176215] usb 1-4: USB disconnect, device number 7
[234297.426118] usb 1-4: new full-speed USB device number 8 using xhci_hcd
[234297.552673] usb 1-4: New USB device found, idVendor=4658, idProduct=3220, bcdDevice= 0.10
[234297.552682] usb 1-4: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[234297.552686] usb 1-4: Product: SPEAKPHONE SP300U
[234297.552689] usb 1-4: Manufacturer: Shenzhen Startime CO.,LTD.
[234297.555134] input: Shenzhen Startime CO.,LTD. SPEAKPHONE SP300U as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.3/0003:4658:3220.0001/input/input13
[234297.607321] hid-generic 0003:4658:3220.0001: input,hidraw0: USB HID v1.10 Device [Shenzhen Startime CO.,LTD. SPEAKPHONE SP300U] on usb-0000:00:14.0-4/input3
[234297.629968] usb 1-4: Warning! Unlikely big volume range (=4864), cval->res is probably wrong.
[234297.629976] usb 1-4: [5] FU [PCM Playback Volume] ch = 1, val = -6400/-1536/1
[234297.630646] usbcore: registered new interface driver snd-usb-audio

Reboot/restarting the system doesn't seem to make any difference.

Log for Assist Microphone:

DEBUG:__main__:Namespace(host='homeassistant', token='mytoken', port=8123, api_path='/api', pipeline='Home Assistant', protocol='http', mic_device=None, snd_device=None, mic_command=None, snd_command=None, snd_command_sample_rate=22050, awake_sound='/usr/src/sounds/awake.wav', done_sound='/usr/src/sounds/done.wav', volume=1.0, vad='silero', vad_model=PosixPath('/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/models/silero_vad.onnx'), vad_threshold=0.5, vad_trigger_level=3, vad_buffer_chunks=40, wake_buffer_seconds=0.0, noise_suppression=2, auto_gain=15, volume_multiplier=1.0, udp_mic=None, udp_snd=None, udp_snd_sample_rate=22050, debug_recording_dir='', debug=True)

HA Core: core-2023.10.3
Running on HAOS 11.0.
Assist Microphone: 2.2.1

Backup size is huge

My HomeAssistant complete backups are huge because of rhasspy:

$ tar -thvf Downloads/general.tar
drwx------ root/root         0 2022-05-12 14:01 ./
-rw-r--r-- root/root 600576679 2022-05-12 14:01 ./75f2ff60_rhasspy.tar.gz
-rw-r--r-- root/root      4626 2022-05-12 13:52 ./a0d7b954_motioneye.tar.gz
-rw-r--r-- root/root       182 2022-05-12 14:01 ./addons_local.tar.gz
-rw------- root/root       941 2022-05-12 14:01 ./backup.json
-rw-r--r-- root/root      6107 2022-05-12 14:01 ./core_ssh.tar.gz
-rw-r--r-- root/root   5181690 2022-05-12 14:01 ./homeassistant.tar.gz
-rw-r--r-- root/root       175 2022-05-12 14:01 ./media.tar.gz
-rw-r--r-- root/root  80909975 2022-05-12 14:01 ./share.tar.gz
-rw-r--r-- root/root       173 2022-05-12 14:01 ./ssl.tar.gz

basically 90% of the backup is the rhasspy container.
This could probably be improved using the backup_exclude key in the addon config: https://developers.home-assistant.io/docs/add-ons/configuration/#add-on-configuration

[Feature request] Adjust volume of USB connected speakerphones with their physical buttons

I know there are options for playback volume in the Assist Microphone add-on configuration, but I can't get them to work. I tried putting 0.5 in the playback volume option, but that didn't work.

Would be nice if we could use the buttons on the speakerphone.

The only physical button that works is the mute button for the microphone, but that is to be expected since it toggles a switch within the unit.

I'm using the Anker PowerConf S330.

Won't start

Rhasspy Assistant
Current version: 2.5.11

Home Assistant 2022.12.6
Supervisor 2022.11.2
Operating System 9.4
Frontend 20221213.0 - latest

After install Rhasspy just will not start.... no idea why...
Suggestions?

Can we add CUDA support to the Rhasspy3 HA Addon?

Hello,
I was attempting to enable CUDA support on the HA addon to test out larger faster-whisper models with CUDA acceleration, but seems the docker image isn't able to support it. I get the following error:
RuntimeError: CUDA failed with error CUDA driver version is insufficient for CUDA runtime version

Thanks! :)

Image 47701997/amd64-addon-assist_microphone:2.2.3 does not exist

Just installed the Assist Microphone add-on. I now get the following error when starting:

Image 47701997/amd64-addon-assist_microphone:2.2.3 does not exist for addon_47701997_assist_microphone

As of the supervisor logs:

23-11-03 12:24:18 ERROR (SyncWorker_0) [supervisor.docker.manager] Image 47701997/amd64-addon-assist_microphone:2.2.3 does not exist for addon_47701997_assist_microphone

Current setup:

Core 2023.11.0
Supervisor 2023.10.1
Operating System 11.1
Frontend 20231030.1
Speaker: Anker PowerConf S330

How do I add a bluetooth speaker or headset to Rhasspy Assistant?

I have Home Assistant installed on Debian 11. In Debian 11, there is sound on the headset and the microphone works, I can record speech and play it back, but only sound works in Rhasspy Assistant. How to switch the microphone?

Home Assistant 2023.2.5
Supervisor 2023.03.dev0101
Frontend 20230202.0 - latest
Rhasspy Assistant Current version: 2.5.11

Displaying sound card profiles
pacmd list-cards

image

Output active profiles
pacmd list-cards | grep 'active profile'

image

pactl set-card-profile bluez_card.54_42_49_A5_56_AB headset_head_unit

Successfully recorded speech from the microphone and played back. I do it this way
image

Checking the recording from the microphone. Command to record from the microphone for 5 seconds
arecord -d 5 test_record.wav

5 - recording time in seconds, you can specify any number of seconds
test_record - file name

Run the recorded file
aplay test_record.wav

Assist Microphone - self signed certificate exception

Hi,
the Addon does not work for me. I am using a self signed certificate which worked fine so far.

When the Assist Microphone addon starts, i geht this errors in the logs:

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/__main__.py", line 200, in main
    async for _timestamp, event_type, event_data in stream(
  File "/usr/local/lib/python3.11/dist-packages/homeassistant_satellite/remote.py", line 28, in stream
    async with session.ws_connect(url) as websocket:
  File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 1141, in __aenter__
    self._resp = await self._coro
                 ^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 779, in _ws_connect
    resp = await self.request(
           ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/aiohttp/client.py", line 536, in _request
    conn = await self._connector.connect(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 540, in connect
    proto = await self._create_connection(req, traces, timeout)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 901, in _create_connection
    _, proto = await self._create_direct_connection(req, traces, timeout)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 1206, in _create_direct_connection
    raise last_exc
  File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 1175, in _create_direct_connection
    transp, proto = await self._wrap_create_connection(
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 982, in _wrap_create_connection
    raise ClientConnectorCertificateError(req.connection_key, exc) from exc
aiohttp.client_exceptions.ClientConnectorCertificateError: Cannot connect to host homeassistant:8123 ssl:True [SSLCertVerificationError: (1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain (_ssl.c:992)')]
ERROR:__main__:Unexpected error
Traceback (most recent call last):
  File "/usr/local/lib/python3.11/dist-packages/aiohttp/connector.py", line 980, in _wrap_create_connection
    return await self._loop.create_connection(*args, **kwargs)  # type: ignore[return-value]  # noqa
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/asyncio/base_events.py", line 1112, in create_connection
    transport, protocol = await self._create_connection_transport(
                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/asyncio/base_events.py", line 1145, in _create_connection_transport
    await waiter
  File "/usr/lib/python3.11/asyncio/sslproto.py", line 574, in _on_handshake_complete
    raise handshake_exc
  File "/usr/lib/python3.11/asyncio/sslproto.py", line 556, in _do_handshake
    self._sslobj.do_handshake()
  File "/usr/lib/python3.11/ssl.py", line 979, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain (_ssl.c:992)

Advice to run vosk without hassio-addons

Hi, I didn't have hassio-addons and I want to run vosk.

I try this:
my docker-compose.yml file

services:
  engine:
    restart: always
    image: rhasspy/wyoming-vosk:1.3.1
    build:
      context: https://github.com/rhasspy/hassio-addons.git#:vosk
      args:
        BUILD_FROM: ghcr.io/home-assistant/aarch64-base-debian:bookworm
        WYOMING_VOSK_VERSION: 1.3.1
    ports:
      - 10300:10300
    volumes:
      - /srv/docker_data/vosk:/data

I put this configuration file in /srv/docker_data/vosk/options.json

{ 
  "debug_logging": "true",
  "correct_sentences": "0.0",
  "preload_language": "fr"
}

It's build. Then fail with on the run with

pomme@box# docker compose up
[+] Running 1/1
 ✔ Container wyoming-vosk-engine-1  Recreated                                                                                                                                             1.1s 
Attaching to wyoming-vosk-engine-1
wyoming-vosk-engine-1  | s6-rc: info: service s6rc-oneshot-runner: starting
wyoming-vosk-engine-1  | s6-rc: info: service s6rc-oneshot-runner successfully started
wyoming-vosk-engine-1  | s6-rc: info: service fix-attrs: starting
wyoming-vosk-engine-1  | s6-rc: info: service fix-attrs successfully started
wyoming-vosk-engine-1  | s6-rc: info: service legacy-cont-init: starting
wyoming-vosk-engine-1  | s6-rc: info: service legacy-cont-init successfully started
wyoming-vosk-engine-1  | s6-rc: info: service vosk: starting
wyoming-vosk-engine-1  | s6-rc: info: service vosk successfully started
wyoming-vosk-engine-1  | s6-rc: info: service discovery: starting
wyoming-vosk-engine-1  | curl: (6) Could not resolve host: supervisor
wyoming-vosk-engine-1  | [23:58:54] ERROR: Something went wrong contacting the API
wyoming-vosk-engine-1  | usage: __main__.py [-h] [--uri URI] --data-dir DATA_DIR
wyoming-vosk-engine-1  |                    [--download-dir DOWNLOAD_DIR] [--language LANGUAGE]
wyoming-vosk-engine-1  |                    [--preload-language PRELOAD_LANGUAGE]
wyoming-vosk-engine-1  |                    [--model-for-language language model]
wyoming-vosk-engine-1  |                    [--casing-for-language language casing]
wyoming-vosk-engine-1  |                    [--model-index MODEL_INDEX] [--sentences-dir SENTENCES_DIR]
wyoming-vosk-engine-1  |                    [--database-dir DATABASE_DIR]
wyoming-vosk-engine-1  |                    [--correct-sentences [CORRECT_SENTENCES]]
wyoming-vosk-engine-1  |                    [--limit-sentences] [--allow-unknown] [--debug]
wyoming-vosk-engine-1  | __main__.py: error: argument --correct-sentences: invalid float value: 'null'
wyoming-vosk-engine-1  | [23:58:56] INFO: Service exited with code 2 (by signal 0)

It's looks like this line fail but I can't find why.

Maybe I miss something obvious for a pro adddons user ? Mayby I have to put options.json somewhere else ?

Any help will be appreciated

pomme 🍎

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.