summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--client/tts.py10
-rwxr-xr-xjasper.py2
2 files changed, 11 insertions, 1 deletions
diff --git a/client/tts.py b/client/tts.py
index 43c8ccb..71f4ea8 100644
--- a/client/tts.py
+++ b/client/tts.py
@@ -37,6 +37,16 @@ class AbstractTTSEngine(object):
__metaclass__ = ABCMeta
@classmethod
+ def get_config(cls):
+ return {}
+
+ @classmethod
+ def get_instance(cls):
+ config = cls.get_config()
+ instance = cls(**config)
+ return instance
+
+ @classmethod
@abstractmethod
def is_available(cls):
return diagnose.check_executable('aplay')
diff --git a/jasper.py b/jasper.py
index 24396cf..13c3ca9 100755
--- a/jasper.py
+++ b/jasper.py
@@ -100,7 +100,7 @@ class Jasper(object):
tts_engine_class = tts.get_engine_by_slug(tts_engine_slug)
# Initialize Mic
- self.mic = Mic(tts_engine_class(),
+ self.mic = Mic(tts_engine_class.get_instance(),
stt.PocketSphinxSTT(**stt.PocketSphinxSTT.get_config()),
stt.newSTTEngine(stt_engine_type, api_key=api_key))