你可以根据需要向设备型号添加任意数量的特征。这些特征并非仅与一种设备类型相关联,您可以根据需要使用它们。
以下是添加任何特征并处理传入命令的过程:
确定要添加的特征。
打开
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
再次查看“特征”页面上的设备命令表。每个命令都有一个或多个与之关联的参数。这些信息列在 EXECUTE 请求 JSON 中的 "params"
下。请使用确切的参数名称。请注意,其中一些参数是包含其他参数的对象,只需使用顶级对象即可。conditional
您并不严格需要在处理程序代码中使用条件,但区分您在设备上执行命令的方式可能有所帮助。 以下是特征亮度和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%。
将其设置为蓝色。