слушает с микрофона
This commit is contained in:
parent
2c023ffb67
commit
653a3933ea
|
@ -1,11 +1,13 @@
|
||||||
# Модуль машины состояний (конечный автомат)
|
# Модуль машины состояний (конечный автомат)
|
||||||
|
|
||||||
import speaker # Для разговоров
|
import speaker # Для воспроизведения
|
||||||
|
import listener # Для распознавание речи
|
||||||
import datetime # Для времени
|
import datetime # Для времени
|
||||||
from pyowm import OWM # Использование OpenWeatherMap для получения данных о погоде (pip install pyowm)
|
from pyowm import OWM # Использование OpenWeatherMap для получения данных о погоде (pip install pyowm)
|
||||||
import random
|
import random
|
||||||
import traceback # вывод traceback без остановки работы программы при отлове исключений
|
import traceback # вывод traceback без остановки работы программы при отлове исключений
|
||||||
|
|
||||||
|
|
||||||
machine = None # Конечный автомат
|
machine = None # Конечный автомат
|
||||||
current_state = None # Текущее состояние
|
current_state = None # Текущее состояние
|
||||||
weather_api_key = None # Ключ для OpenWeatherMap
|
weather_api_key = None # Ключ для OpenWeatherMap
|
||||||
|
@ -17,6 +19,8 @@ def init(assistant_name):
|
||||||
global current_state
|
global current_state
|
||||||
global weather_api_key
|
global weather_api_key
|
||||||
global myName
|
global myName
|
||||||
|
|
||||||
|
listener.init_listener() # Инициализация распозавания
|
||||||
|
|
||||||
myName = assistant_name
|
myName = assistant_name
|
||||||
|
|
||||||
|
@ -54,7 +58,8 @@ def work():
|
||||||
global current_state
|
global current_state
|
||||||
|
|
||||||
while(True):
|
while(True):
|
||||||
word = input().lower() # Пока считаем с клавиатуры предложение
|
#word = input().lower() # Пока считаем с клавиатуры предложение
|
||||||
|
word = listener.recognize() # Слушаем и распознаем
|
||||||
# Если ассистент знает такое слово для перехода
|
# Если ассистент знает такое слово для перехода
|
||||||
if (word in machine[current_state].keys()):
|
if (word in machine[current_state].keys()):
|
||||||
# Выполняем действия и переход в новое состояние
|
# Выполняем действия и переход в новое состояние
|
||||||
|
@ -62,7 +67,7 @@ def work():
|
||||||
elif (current_state != 'Начало'):
|
elif (current_state != 'Начало'):
|
||||||
# иначе переспросим
|
# иначе переспросим
|
||||||
speaker.speak("Я не понял, пожалуйста повторите")
|
speaker.speak("Я не понял, пожалуйста повторите")
|
||||||
print("Сейчас автомат в: " + current_state)
|
print("Сейчас автомат в: " + current_state + ". Я услышал: " + word)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue