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