From 653a3933eab18f51b754864c17c6bf3ee94b553c Mon Sep 17 00:00:00 2001 From: "re.kovalev" Date: Sat, 21 May 2022 20:06:44 +0300 Subject: [PATCH] =?UTF-8?q?=D1=81=D0=BB=D1=83=D1=88=D0=B0=D0=B5=D1=82=20?= =?UTF-8?q?=D1=81=20=D0=BC=D0=B8=D0=BA=D1=80=D0=BE=D1=84=D0=BE=D0=BD=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- state_machine.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) 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)