-
Notifications
You must be signed in to change notification settings - Fork 7
SenseCAP WebAPI Server (Chinese)
Jancee JX | 王静茜 edited this page Jan 6, 2020
·
1 revision
Sensecap-webapi 是基于Java开发的一个项目框架,用于管理和接收控制器及传感器的状态和数据信息
- JDK1.8+
- Maven3+
- Mysql5.7+
-
请下载项目源码并解压,获取数据库初始化SQL脚本,执行即可 数据库SQL文件
-
解压源码,导入IDE,使用maven进行编译即可
#默认端口
server.port=9001
#JDBC连接
spring.datasource.url=jdbc:mysql://host:port/dbSenscap4WebApi?useUnicode=true&characterEncoding=utf8&useSSL=false
spring.datasource.username=username
spring.datasource.password=pwd
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
#switches API地址、apikey、authentication
spring.dev.url=https://cn-api.coolkit.cn:8080
spring.dev.apikey=0f575df2-e7b5-4db3-b7c8-2f83caf60e81
spring.dev.at=481998354c0649219f46f51f86e9f235710551f8
#sensor'sAPI 地址
spring.sensor.url=https://sensecap-openapi.seeed.cc/1.0
#MQTT登录信息,多客户端需保持ClientId唯一
spring.sensor.host=tcp://openstream.api.sensecap.seeed.cc
spring.sensor.ClientId=random
#登录https://sensecap.seeed.cc/ 获取组织ID、秘钥ID、API访问密钥
spring.sensor.OrganizationId=
spring.sensor.APIID=
spring.sensor.APIKey=

- 如果已经正确进行上述配置,可将项目编译打包部署
本地:http://127.0.0.1:9001
服务器:替换为自己部署地址
{
"code": 0,
"msg": "success",
"data": []
}
/dev/list
| 参数 | 必选 | 类型 | 说明 |
|---|---|---|---|
| 无 | - | - | - |
| 参数 | 类型 | 说明 |
|---|---|---|
| id | int | 开关唯一标识 |
| devId | string | 控制器唯一标识,通常一个控制器有4个引脚 |
| openOutlet | int | 引脚编号,从0开始,一个只有开和关二种状态的开关对应一个引脚 |
| closeOutlet | int | 引脚编号,从0开始,三相开关(支持开/关/停止三种状态的开关)需要该引脚,默认为-1,当前您可以通过数据库修改该设置 |
| name | string | 开关名称 |
| onOff | int | 开关状态,0:关,1:开,-1:停止 |
| online | boolean | 是否在线 |
| isuse | boolean | 是否使用 |
{
"code": 0,
"msg": "success",
"data": [
{
"id": 5,
"devId": "10002dfebf",
"openOutlet": 0,
"closeOutlet": -1,
"name": "灌溉水泵",
"onOff": 0,
"online": false,
"isuse": true
},
{
"id": 6,
"devId": "10002dfebf",
"openOutlet": 1,
"closeOutlet": -1,
"name": "通风风机",
"onOff": 0,
"online": false,
"isuse": true
},
...
]
}
/dev/update
| 参数 | 必选 | 类型 | 说明 |
|---|---|---|---|
| id | 是 | int | 开关唯一标识 |
| name | 是 | string | 修改之后的开关名称 |
| isuse | 是 | boolean | 修改之后是否启用 |
| 参数 | 类型 | 说明 |
|---|---|---|
| 无 | - | - |
{
"code": 0,
"msg": "success",
"data": null
}
/dev/switch
| 参数 | 必选 | 类型 | 说明 |
|---|---|---|---|
| id | 是 | int | 开关唯一标识 |
| op | 是 | int | 操作,0:关,1:开,-1:停止 |
| 参数 | 类型 | 说明 |
|---|---|---|
| 无 | - | - |
{
"code": 0,
"msg": "success",
"data": null
}
/sensor/node/currentvalues
| 参数 | 必选 | 类型 | 说明 |
|---|---|---|---|
| 无 | - | - | - |
| 参数 | 类型 | 说明 |
|---|---|---|
| dev_eui | string | 设备eui |
| dev_name | string | 设备名称 |
| measure_id | int | 测量值ID |
| measure_Name | string | 测量值名称 |
| class_id | int | 测量类型ID:1,环境 2,土壤 |
| class_Name | string | 测量类型名称 |
| battery_status | int | 电池状态:1,充足 0,缺电 |
| online_status | int | 设备在线状态:1,在线 0,不在线 |
| sensor_channel | int | 暂不读取 |
| unit | string | 测量值单位 |
| value | float | 测量值读数 |
| minval | float | 正常值范围的最小值 |
| maxval | float | 正常值范围的最大值 |
| time | long | 时间戳 |
{
"code": 0,
"msg": "success",
"data": [
{
"dev_eui": "2CF7F12212100097",
"dev_name": "设备2CF7F12212100097",
"measure_id": 4107,
"measure_Name": "光通量",
"class_id": 2,
"class_Name": "土壤监测",
"battery_status": 1,
"online_status": 0,
"sensor_channel": 1,
"unit": "umol/㎡s",
"value": 3.0,
"minval": 0.0,
"maxval": 2000.0,
"time": 1575178701898
},
{
"dev_eui": "2CF7F12210400097",
"dev_name": "二氧化碳-2CF7F12210400097",
"measure_id": 4100,
"measure_Name": "二氧化碳",
"class_id": 1,
"class_Name": "环境监测",
"battery_status": 1,
"online_status": 0,
"sensor_channel": 1,
"unit": "ppm",
"value": 374.0,
"minval": 400.0,
"maxval": 10000.0,
"time": 1575179573201
},
...
]
}
/sensor/node/recentvalues
| 参数 | 必选 | 类型 | 说明 |
|---|---|---|---|
| count | 是 | int | 读取记录数 |
| 参数 | 类型 | 说明 |
|---|---|---|
| dev_eui | string | 设备eui |
| dev_name | string | 设备名称 |
| measure_id | int | 测量值ID |
| measure_name | string | 测量值名称 |
| unit | string | 测量值单位 |
| value | float | 测量值读数 |
| minval | float | 正常值范围的最小值 |
| maxval | float | 正常值范围的最大值 |
| time | long | 时间戳 |
{
"code": 0,
"msg": "success",
"data": [
{
"dev_eui": "2CF7F1221210004C",
"dev_name": "空气温湿度-2CF7F1221210004C",
"measure_id": 4097,
"measure_name": "空气温度",
"unit": "℃",
"value": 27.0,
"minval": -40.0,
"maxval": 90.0,
"time": 1575181787444
},
{
"dev_eui": "2CF7F1221210004C",
"dev_name": "空气温湿度-2CF7F1221210004C",
"measure_id": 4098,
"measure_name": "空气湿度",
"unit": "%RH",
"value": 47.0,
"minval": 0.0,
"maxval": 100.0,
"time": 1575181787444
},
...
]
}
/sensor/node/warnings
| 参数 | 必选 | 类型 | 说明 |
|---|---|---|---|
| start | 是 | long | 开始时间戳 |
| end | 是 | long | 结束时间戳 |
| 参数 | 类型 | 说明 |
|---|---|---|
| dev_eui | string | 设备eui |
| dev_name | string | 设备名称 |
| measure_id | int | 测量值ID |
| measure_name | string | 测量值名称 |
| unit | string | 测量值单位 |
| value | float | 测量值读数 |
| minval | float | 正常值范围的最小值 |
| maxval | float | 正常值范围的最大值 |
| time | long | 时间戳 |
{
"code": 0,
"msg": "success",
"data": [
{
"dev_eui": "2CF7F12210400097",
"dev_name": "二氧化碳-2CF7F12210400097",
"measure_id": 4100,
"measure_name": "二氧化碳",
"unit": "ppm",
"value": 399.0,
"minval": 400.0,
"maxval": 10000.0,
"time": 1574092262298
},
{
"dev_eui": "2CF7F12210400097",
"dev_name": "二氧化碳-2CF7F12210400097",
"measure_id": 4100,
"measure_name": "二氧化碳",
"unit": "ppm",
"value": 395.0,
"minval": 400.0,
"maxval": 10000.0,
"time": 1574095907472
},
...
]
}
/sensor/node/values
| 参数 | 必选 | 类型 | 说明 |
|---|---|---|---|
| dev_eui | 是 | string | 设备eui |
| measure_id | 是 | int | 测量值ID |
| start | 是 | long | 开始时间戳 |
| end | 是 | long | 结束时间戳 |
| 参数 | 类型 | 说明 |
|---|---|---|
| id | int | 记录ID |
| dev_eui | string | 设备eui |
| measure_id | int | 测量值ID |
| channel | int | - |
| value | float | 测量值读数 |
| time | long | 时间戳 |
{
"code": 0,
"msg": "success",
"data": [
{
"id": 78,
"dev_eui": "2CF7F1221210007C",
"measure_id": 4104,
"channel": 1,
"value": 220.0,
"time": 1574074321802
},
{
"id": 92,
"dev_eui": "2CF7F1221210007C",
"measure_id": 4104,
"channel": 1,
"value": 220.0,
"time": 1574077928137
},
...
]
}
/sensor/node/resume
| 参数 | 必选 | 类型 | 说明 |
|---|---|---|---|
| 无 | - | - | - |
| 参数 | 类型 | 说明 |
|---|---|---|
| classId | int | 测量类型ID:1,环境 2,土壤 |
| className | string | 测量类型名称 |
| battery_full | int | 电池充足的设备数量 |
| battery_poor | int | 缺电状态的设置数量 |
| onlineCount | int | 在线设备数量 |
| unlineCount | int | 不在线设备数量 |
{
"code": 0,
"msg": "success",
"data": [
{
"classId": 1,
"className": "环境监测",
"battery_full": 7,
"battery_poor": 0,
"onlineCount": 0,
"unlineCount": 7
},
{
"classId": 2,
"className": "土壤监测",
"battery_full": 8,
"battery_poor": 0,
"onlineCount": 0,
"unlineCount": 8
}
]
}
/sensor/node/normalranges
| 参数 | 必选 | 类型 | 说明 |
|---|---|---|---|
| 无 | - | - | - |
| 参数 | 类型 | 说明 |
|---|---|---|
| measure_id | int | 测量值ID |
| measure_Name | string | 测量值名称 |
| unit | string | 测量值单位 |
| minval | float | 正常值范围的最小值 |
| maxval | float | 正常值范围的最大值 |
{
"code": 0,
"msg": "success",
"data": [
{
"measure_id": 4097,
"measure_Name": "空气温度",
"unit": "℃",
"minval": -40.0,
"maxval": 90.0
},
{
"measure_id": 4098,
"measure_Name": "空气湿度",
"unit": "%RH",
"minval": 0.0,
"maxval": 100.0
},
...
]
}
/sensor/node/changerange
| 参数 | 必选 | 类型 | 说明 |
|---|---|---|---|
| dev_eui | 是 | string | 设备eui |
| measure_id | 是 | int | 测量值ID |
| minval | 是 | float | 修改后正常值范围的最小值 |
| maxval | 是 | float | 修改后正常值范围的最大值 |
| 参数 | 类型 | 说明 |
|---|---|---|
| 无 | - | - |
{
"code": 0,
"msg": "success",
"data": null
}