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