def ask_google(cmd: str, *, recognize_speech=True) -> GoogleResponse:
+ logging.debug(f"Asking google: '{cmd}'")
payload = {
"command": cmd,
"user": config.config['google_assistant_username'],
j = r.json()
success = bool(j["success"])
response = j["response"] if success else j["error"]
+ if success:
+ logger.debug('Google request succeeded.')
+ if len(response) > 0:
+ logger.debug(f"Google said: '{response}'")
audio = f"{config.config['google_assistant_bridge']}{j['audio']}"
if recognize_speech:
recognizer = sr.Recognizer()
audio_transcription = recognizer.recognize_google(
speech,
)
+ logger.debug(f"Transcription: '{audio_transcription}'")
else:
logger.error(
f'HTTP request to {url} with {payload} failed; code {r.status_code}'