天气信息控制加湿器开关
本示例的服务将根据天气预报中的湿度信息,决定加湿器是否开启。如果湿度≤30%则开启,否则不开启。
前提条件
步骤一:创建产品与设备
登录物联网应用开发控制台,在页面左上角选择对应实例后,在左侧导航栏单击项目管理。
您也可登录物联网平台控制台,在左侧导航栏选择增值服务,单击选购增值服务中的前往查看服务,在增值服务中心,单击IoT Studio区域的立即试用,进入IoT Studio控制台。
说明该服务公测版即将下线,如需使用请购买该产品。
单击项目卡片,进入项目详情主页,单击左侧导航栏的产品。
在产品页面,单击产品列表左上方的创建产品。
在创建产品页面,配置参数,并单击确认,如下图所示。
说明如果您已在物联网平台控制台创建了相关产品和设备,单击关联物联网平台产品,将产品与该项目关联即可。
产品创建成功后,回到产品页面,在产品列表中,单击目标产品对应的查看。
在产品详情页面,单击功能定义页签,再单击编辑草稿,选择添加自定义功能,自定义一个布尔值开关属性,单击确认,如下图所示。
物模型添加完成后,单击页面左下方的发布上线按钮,弹出发布物模型上线对话框。
选中确认已查看当前版本与线上版本的比对结果复选框。
单击确定,发布物模型。
在项目详情页,单击左侧导航栏的设备。
单击添加设备,添加智能加湿器设备,如图所示。
步骤二:创建业务服务
在项目的主页选择业务逻辑页签,单击新建并选择新建,创建一个业务服务。
在业务逻辑开发页,单击左侧的节点按钮,拖拽一个HTTP请求节点到画布上,为节点做如下配置。
参数
说明
节点名称
输入节点名称。
Action
调用API时,参数Action的值。本示例中,设置为QueryWeather。
新增参数
设置调用API时的入参。本示例中,设置了一个必填入参cityId,类型为String。
拖拽一个云市场API节点到画布上,将HTTP请求节点与该节点相连,并配置该节点。
本示例中,在云市场购买的天气查询API是免费版气象服务(cityId)-墨迹天气。
参数
说明
节点名称
输入节点名称。
请求方式
在云市场该API购买页,查看请求方式。本示例中,购买的API的请求方式为POST。
调用地址
在云市场该API购买页,查看该API的调用地址。
APPCODE
在云市场控制台,已购买的服务页列表中,查看已购买API的AppCode。
编码
选择编码方式。
设置请求头
根据对应接口的Header要求设置API的请求头。
参数填写
根据云市场该API购买页的请求参数说明,填入请求参数。本示例中,需填入两个参数:
cityId:城市ID,可填入:
静态参数,即填入一个固定值,如
"cityId":"20"
。参数取值,可参见墨迹天气购买页提供的“cityid对照表”。动态参数,可填入
"cityId":"{{query.cityId}}"
,该结构是把API的入参作为子对象。
token:请在阿里云API网关控制台,选择 ,选择地域为华北2(北京),在购买的API详情中查看。具体的token查看步骤说明,请参见墨迹天气购买页提供的“token查询方式”。
配置一个临时HTTP返回节点,用于调试、查看天气API的返回数据结构。
因后续路径节点配置中,需调用湿度值,但天气API的返回数据结构未知,所以可以先配置一个HTTP返回节点,并进行部署、调试。在调试结果日志中,查看返回数据结构。
配置一个HTTP返回节点,输出选择为上一节点(payload)。
单击部署调试按钮,部署服务。
部署成功后,再次单击部署调试按钮,输入一个cityId值,如20,进行调试。
可在API调用结果或HTTP返回节点的节点日志下,查看返回结果数据。
返回数据结构显示,humidity在data下的condition下。因此,路径配置中,需使用
data.condition.humidity
调用天气API的返回结果中的湿度值。调试成功后,删除该HTTP返回节点。
配置一个路径选择节点,与云市场API节点相连。
参数
说明
节点名称
输入节点名称。
数据源
选择数据源为云市场API节点。
输入变量为:上一步调试后,查看到的湿度值所在位置data.condition.humidity。
新增路径
本示例中,只需配置两个路径,因此需删除第三条路径。
路径配置:
路径1:≤30。
路径2:>30。
从左侧设备页签下,拖拽一个智能加湿器设备节点到画布上,与路径1相连。配置如下:
参数
说明
节点名称
输入节点名称。
选择要控制的设备
选择该产品下的一个设备。
选择操作类型
选择为设备动作执行。
下发数据
勾选属性,设置电源开关值为true,即开启加湿器。
再配置一个智能加湿器,与路径2相连。
该节点配置,设备与上一步选择一致,需将电源开关设置为false,即关闭加湿器。
分别为两个设备节点配置HTTP返回节点。输出均设置为上一节点(payload)。
单击页面右上角保存按钮,保存设置。
步骤三:调试与发布
在业务服务编辑页面,单击右上方的部署调试按钮,部署服务。
部署完成后,再次单击部署调试按钮,输入一个cityId值,单击开始调试。
全局日志显示当前湿度为11,所以服务执行了路径1,开启加湿器。
单击部署调试右侧的发布按钮,发布该服务。
业务需要发布到云端,才能被调用。
执行结果
该服务创建的API,可以用于Web可视化开发。
可右键单击服务名称,选择服务调用帮助,查看服务调用详情。