# Copyright 2019 The Chromium OS Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import logging class AssistantAdapterError(Exception): """Error in AssistantAdapterNative.""" pass class AssistantFacadeRemoteAdapter(object): """AssistantFacadeRemoteAdapter is an adapter to remotely control DUT assistant. The Autotest host object representing the remote DUT, passed to this class on initialization, can be accessed from its _client property. """ def __init__(self, host, remote_facade_proxy): """Construct a AssistantFacadeRemoteAdapter. @param host: Host object representing a remote host. @param remote_facade_proxy: RemoteFacadeProxy object. """ self._client = host self._proxy = remote_facade_proxy @property def _assistant_proxy(self): return self._proxy.assistant def restart_chrome_for_assistant(self, enable_dsp_hotword=True): """Restarts Chrome with Google assistant enabled. @param enable_dsp_hotword: A bool to control the usage of dsp for hotword. """ logging.info("Restarting Chrome with Google assistant enabled.") self._assistant_proxy.restart_chrome_for_assistant(enable_dsp_hotword) logging.info("Chrome process restarted with assistant enabled.") def send_text_query(self, text): """Sends text query to Google assistant and gets respond. @param text: A str object for text qeury. @returns: A str object for query response. """ return self._assistant_proxy.send_text_query(text) def enable_hotword(self): """Enable hotword feature in Google assistant.""" logging.info("Enabling hotword in Google assistant.") self._assistant_proxy.enable_hotword()