Вы можете добавить в модель вашего устройства столько характеристик, сколько пожелаете. Эти особенности не привязаны к одному типу устройства, вы можете использовать их по своему усмотрению.
Это процесс добавления любого признака и обработки входящей команды:
Определите, какую черту вы хотите добавить.
Откройте файл
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 ']:
ifconditional :
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, сделай его синим.