-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Issues-2516 - Resolved IBM Cloud integration issue #2548
Conversation
…er / pass to api key.
Hello, @codyreinold, thank you for helping with the Mycroft project! We welcome everyone To protect yourself, the project, and users of Mycroft technologies we require Please visit https://mycroft.ai/cla to initiate this one-time signing. Thank |
Hi @codyreinold looks really good! gonna give it a test run tomorrow morning! |
Hi @devs-mycroft. Not sure if you're a bot or a human, but this has already been completed prior to my submitting the PR! |
Voight Kampff Integration Test Succeeded (Results) |
1 similar comment
Voight Kampff Integration Test Succeeded (Results) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it looks very good and can be merged as soon as the CLA process is completed.
I do wonder why params are explicitly added to the url instead of using the requests.post() params
argument?
Voight Kampff Integration Test Succeeded (Results) |
Voight Kampff Integration Test Failed (Results) |
Voight Kampff Integration Test Succeeded (Results) |
Thanks so much Cody, this is great! Merging now |
Description
This is a rewrite of the IBM Cloud Text to Speech connector. Resolves #2516. Previously, we were using the speech_recognition package to interface with IBM Cloud. However, recently IBM moved from user / pass-based auth to api key-based auth. This fix moves all functionality for IBM Cloud into the mycroft-core codebase (using the requests package).
How to test
Create an IBM Cloud account, if you do not already have one. Enable "Speech to Text" to receive an API Key and URL. Setup Mycroft config file according to documented format (see codebase).
Once configured, start Mycroft in debug mode. Test different scenarios (wakeword + phrase, wakeword + silence) to ensure acceptance of functionality. Error message on silence is specific to this integration, so can be used to validate IBM plugin is being used. Usage can also be confirmed in IBM Cloud usage dashboard (https://cloud.ibm.com/billing/usage) and digging into the service usage report.
Unit test covers basic functionality (generation of request) and mocks the response. Additional tests could be added to test malformed responses, but I wanted to adhere to current test pattern.
Contributor license agreement signed?
CLA [ Yes ]