Part 6 - 物联网云平台保存设备消息 API 开发

2022-04-30
3分钟阅读时长

【版本】

当前版本号v20220430

版本修改说明
v20220430初始化版本

【实验名称】实验6.1 - 物联网云平台项目新增开放API——增加设备消息

【实验目的】

  • 掌握物联网云平台项目开放API的实现

【实验环境】

  • 内存:至少4G
  • 硬盘:至少空余40G
  • 操作系统: Windows 系统。

【实验资源】

【实验说明】

  1. 接收设备消息功能主要目的在物联网云平台注册的设备,可以接收并保存设备通过 HTTP 发送的消息。

  2. 本次设计的物联网云平台增加设备消息的开放API

参数类型参数名说明数据类型或示例
URL参数iotId设备物联网云平台ID字符串
URL参数secret设备密钥字符串
BODYmsg发送的设备消息,其中msg字段是发送的自定义消息;iotId是物联网云平台ID;tag是自定义消息类型JSON格式 -> {“iotId”: “设备物联网云平台ID”,“msg”: {},“tag”: “消息类型”}
  • 创建成功的响应数据:
{
	"errcode":"0",
	"errmsg":"发送成功",
	"data":null
}
  • 创建失败的响应数据:
{
	"errcode":"1001",
	"errmsg":"发送失败",
	"data":null
}
  1. 设备端调用此开放API 可以把设备消息保存到device_msg表。

【实验步骤】

  1. 打开iot-cloud-training-init项目,完善DeviceMsgController.addDeviceMsg方法,实现以上实验要求。

提示:可以完善并调用DeviceMsgService.save方法。

【实验名称】实验6.2 - 表情温度计项目调用开放API实现保存新增设备消息到物联网云平台

【实验目的】

  • 掌握调用物联网云平台项目开放API的实现

【实验环境】

  • 内存:至少4G
  • 硬盘:至少空余40G
  • 操作系统: Windows 系统。

【实验资源】

【实验要求】

  1. 在表情温度计配置页面配置了设备的物联网云平台设备ID(IoT ID)和设备密钥,点击首页的发送温度消息按钮可以发送温度和时间到物联网云平台并保存。

  2. 以下为发送的温度消息的一个实例,其中temp是表情温度计当前温度,time是发送消息的时间戳。

{
  "iotId": "B2f66kHjuo3rhFlq",
  "msg": {"temp":10,"time":1651334139956},
  "tag": "temp"
}

【实验效果】

  1. 在表情温度计配置页面,注册设备获取物联网云平台设备ID(IoT ID)和设备密钥。在首页点击发送温度消息按钮。

【实验步骤】

  1. 打开iot-thermometer-init项目,完善TempController.sendDeviceMsg方法,完成调用物联网云平台新增设备消息API。

提示:可以调用HttpService.sendDeviceMsg()方法,具体调用方法可以参考实验2.3。