mirror of
https://github.com/home-assistant/core.git
synced 2025-07-23 05:07:41 +00:00
Fix microsoft tts (#28199)
* Update pycsspeechtts From 1.0.2 to 1.0.3 as the old one is using an api that doesn't work * Give a option to choose region Api is now region dependent, so gave it a config
This commit is contained in:
parent
2c914e0c59
commit
d28f7ab120
@ -3,7 +3,7 @@
|
|||||||
"name": "Microsoft",
|
"name": "Microsoft",
|
||||||
"documentation": "https://www.home-assistant.io/integrations/microsoft",
|
"documentation": "https://www.home-assistant.io/integrations/microsoft",
|
||||||
"requirements": [
|
"requirements": [
|
||||||
"pycsspeechtts==1.0.2"
|
"pycsspeechtts==1.0.3"
|
||||||
],
|
],
|
||||||
"dependencies": [],
|
"dependencies": [],
|
||||||
"codeowners": []
|
"codeowners": []
|
||||||
|
@ -14,6 +14,7 @@ CONF_RATE = "rate"
|
|||||||
CONF_VOLUME = "volume"
|
CONF_VOLUME = "volume"
|
||||||
CONF_PITCH = "pitch"
|
CONF_PITCH = "pitch"
|
||||||
CONF_CONTOUR = "contour"
|
CONF_CONTOUR = "contour"
|
||||||
|
CONF_REGION = "region"
|
||||||
|
|
||||||
_LOGGER = logging.getLogger(__name__)
|
_LOGGER = logging.getLogger(__name__)
|
||||||
|
|
||||||
@ -72,6 +73,7 @@ DEFAULT_RATE = 0
|
|||||||
DEFAULT_VOLUME = 0
|
DEFAULT_VOLUME = 0
|
||||||
DEFAULT_PITCH = "default"
|
DEFAULT_PITCH = "default"
|
||||||
DEFAULT_CONTOUR = ""
|
DEFAULT_CONTOUR = ""
|
||||||
|
DEFAULT_REGION = "eastus"
|
||||||
|
|
||||||
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
|
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
|
||||||
{
|
{
|
||||||
@ -87,6 +89,7 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
|
|||||||
),
|
),
|
||||||
vol.Optional(CONF_PITCH, default=DEFAULT_PITCH): cv.string,
|
vol.Optional(CONF_PITCH, default=DEFAULT_PITCH): cv.string,
|
||||||
vol.Optional(CONF_CONTOUR, default=DEFAULT_CONTOUR): cv.string,
|
vol.Optional(CONF_CONTOUR, default=DEFAULT_CONTOUR): cv.string,
|
||||||
|
vol.Optional(CONF_REGION, default=DEFAULT_REGION): cv.string,
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -102,13 +105,16 @@ def get_engine(hass, config):
|
|||||||
config[CONF_VOLUME],
|
config[CONF_VOLUME],
|
||||||
config[CONF_PITCH],
|
config[CONF_PITCH],
|
||||||
config[CONF_CONTOUR],
|
config[CONF_CONTOUR],
|
||||||
|
config[CONF_REGION],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
class MicrosoftProvider(Provider):
|
class MicrosoftProvider(Provider):
|
||||||
"""The Microsoft speech API provider."""
|
"""The Microsoft speech API provider."""
|
||||||
|
|
||||||
def __init__(self, apikey, lang, gender, ttype, rate, volume, pitch, contour):
|
def __init__(
|
||||||
|
self, apikey, lang, gender, ttype, rate, volume, pitch, contour, region
|
||||||
|
):
|
||||||
"""Init Microsoft TTS service."""
|
"""Init Microsoft TTS service."""
|
||||||
self._apikey = apikey
|
self._apikey = apikey
|
||||||
self._lang = lang
|
self._lang = lang
|
||||||
@ -119,6 +125,7 @@ class MicrosoftProvider(Provider):
|
|||||||
self._volume = f"{volume}%"
|
self._volume = f"{volume}%"
|
||||||
self._pitch = pitch
|
self._pitch = pitch
|
||||||
self._contour = contour
|
self._contour = contour
|
||||||
|
self._region = region
|
||||||
self.name = "Microsoft"
|
self.name = "Microsoft"
|
||||||
|
|
||||||
@property
|
@property
|
||||||
@ -138,7 +145,7 @@ class MicrosoftProvider(Provider):
|
|||||||
from pycsspeechtts import pycsspeechtts
|
from pycsspeechtts import pycsspeechtts
|
||||||
|
|
||||||
try:
|
try:
|
||||||
trans = pycsspeechtts.TTSTranslator(self._apikey)
|
trans = pycsspeechtts.TTSTranslator(self._apikey, self._region)
|
||||||
data = trans.speak(
|
data = trans.speak(
|
||||||
language=language,
|
language=language,
|
||||||
gender=self._gender,
|
gender=self._gender,
|
||||||
|
@ -1132,7 +1132,7 @@ pycomfoconnect==0.3
|
|||||||
pycoolmasternet==0.0.4
|
pycoolmasternet==0.0.4
|
||||||
|
|
||||||
# homeassistant.components.microsoft
|
# homeassistant.components.microsoft
|
||||||
pycsspeechtts==1.0.2
|
pycsspeechtts==1.0.3
|
||||||
|
|
||||||
# homeassistant.components.cups
|
# homeassistant.components.cups
|
||||||
# pycups==1.9.73
|
# pycups==1.9.73
|
||||||
|
Loading…
x
Reference in New Issue
Block a user