diff --git a/state_machine.py b/state_machine.py index 86bd49b..96f0e9d 100644 --- a/state_machine.py +++ b/state_machine.py @@ -1,11 +1,13 @@ # Модуль машины состояний (конечный автомат) -import speaker # Для разговоров +import speaker # Для воспроизведения +import listener # Для распознавание речи import datetime # Для времени from pyowm import OWM # Использование OpenWeatherMap для получения данных о погоде (pip install pyowm) import random import traceback # вывод traceback без остановки работы программы при отлове исключений + machine = None # Конечный автомат current_state = None # Текущее состояние weather_api_key = None # Ключ для OpenWeatherMap @@ -17,6 +19,8 @@ def init(assistant_name): global current_state global weather_api_key global myName + + listener.init_listener() # Инициализация распозавания myName = assistant_name @@ -54,7 +58,8 @@ def work(): global current_state while(True): - word = input().lower() # Пока считаем с клавиатуры предложение + #word = input().lower() # Пока считаем с клавиатуры предложение + word = listener.recognize() # Слушаем и распознаем # Если ассистент знает такое слово для перехода if (word in machine[current_state].keys()): # Выполняем действия и переход в новое состояние @@ -62,7 +67,7 @@ def work(): elif (current_state != 'Начало'): # иначе переспросим speaker.speak("Я не понял, пожалуйста повторите") - print("Сейчас автомат в: " + current_state) + print("Сейчас автомат в: " + current_state + ". Я услышал: " + word)