Вы можете добавить в модель вашего устройства столько характеристик, сколько пожелаете. Эти характеристики не привязаны к одному типу устройства, вы можете использовать их по своему усмотрению.
Это процесс добавления любого признака и обработки входящей команды:
Определите, какую черту вы хотите добавить.
Откройте файл
hotword.py
.cd assistant-sdk-python/google-assistant-sdk/googlesamples/assistant/library
nano hotword.py
Добавьте следующий блок кода под существующий, который обрабатывает команду
action.devices.commands.OnOff
(не удаляйте существующий блок кода).if command == "action.devices.commands.command-name": if params['parameter-name']: if conditional: print('Something happened.') else: print('Something else happened.')
Найдите необходимую информацию для каждой переменной в приведенном выше блоке кода.
command-name
Перейдите на страницу конкретного свойства из шага 1 (например, ColorTemperature ). Используйте команду из таблицы КОМАНДЫ УСТРОЙСТВА . parameter-name
Посмотрите еще раз на таблицу КОМАНДЫ УСТРОЙСТВА на странице свойств. С каждой командой связан один или несколько параметров. Они перечислены в разделе "params"
в JSON-запросе EXECUTE. Используйте точное имя параметра. Обратите внимание, что некоторые из этих параметров являются объектами, содержащими другие параметры — просто используйте объект верхнего уровня.conditional
Вам не обязательно использовать условие в коде обработчика, но это может помочь дифференцировать способ выполнения команды на устройстве. Вот несколько примеров черт Brightness и ColorTemperature :
if command == "action.devices.commands.BrightnessAbsolute": if params['brightness']: if params['brightness'] > 50: print('brightness > 50') else: print('brightness <= 50') if command == "action.devices.commands.ColorAbsolute": if params['color']: if params['color'].get('name') == "blue": print('The color is blue.') else: print('The color is not blue.')
Обновите модель устройства , указав признак, добавленный на шаге 1.
Запустите измененный исходный код.
cd assistant-sdk-python/google-assistant-sdk/googlesamples/assistant/library
python hotword.py --device-model-id my-model
Попробуйте запрос.
Окей, Google, установи яркость на 65%.
Окей, Google, сделай его синим.