IOT-Timer(定时器)-API
更新时间:2019-06-14
服务器地址:
区域 | 服务器地址 |
---|---|
华南广州区域 | http://re.iot.gz.baidubce.com |
华北北京区域 | http://re.iot.bj.baidubce.com |
新建Timer
请求地址 HTTP POST /v1/timer
请求参数
名称 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
name | String | 是 | 定时器名称 | |
description | String | 否 | <空> | 描述 |
period | Int | 是 | 定时器触发间隔,单位:秒 | |
beginAt | Int | 否 | 系统当前时间+period | 第一次触发时间,UNIX时间戳,单位:秒 |
times | Int | 是 | 定时器执行次数 | |
endpointName | String | 是 | 定时器触发时,发送MQTT消息的实例名 | |
topic | String | 是 | 定时器触发时,发送MQTT消息的主题 | |
msg | String | 是 | 定时器触发时,发送MQTT消息的内容 |
请求示例
Plain Text
1{
2 "name": "my_timer_01",
3 "description": "trigger every 30 seconds, for 100 times",
4 "period": 30,
5 "beginAt": 1513667688,
6 "times": 100,
7 "endpointName": "myendpoint1",
8 "topic": "/utils/timer01",
9 "msg": "{\"timer\":\"my_timer_1\"}"
10}
返回参数
名称 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
uuid | String | 是 | 定时器id |
返回示例
Plain Text
1{
2 "uuid":"8bd6102b-24c8-4912-876f-f0b0b08cea18"
3}
更新Timer
请求地址
HTTP PUT /v1/timer/{uuid}
请求参数
名称 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
name | String | 是 | 定时器名称 | |
description | String | 否 | <空> | 描述 |
period | Int | 是 | 定时器触发间隔,单位:秒 | |
times | Int | 是 | 定时器执行次数 | |
endpointName | String | 是 | 定时器触发时,发送MQTT消息的实例名 | |
topic | String | 是 | 定时器触发时,发送MQTT消息的主题 | |
msg | String | 是 | 定时器触发时,发送MQTT消息的内容 |
请求示例
Plain Text
1{
2 "name": "my_timer_01",
3 "description": "trigger every 30 seconds, for 200 times",
4 "period": 30,
5 "times": 200,
6 "endpointName": "myendpoint1",
7 "topic": "/utils/timer01",
8 "msg": "{\"timer\":\"my_timer_1\"}"
9}
返回参数
名称 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
result | String | 是 | ok | 出错则抛异常 |
返回示例
Plain Text
1{
2 "result":"ok"
3}
说明:Timer运行后,会记录该Timer已经执行多少次,即executedTimes。如果Timer当前处于运行(RUNNING)状态,更新后的times参数小于等于executedTimes,则Timer进入完成(FINISHED)状态;否则,如果Timer当前处于完成(FINISHED)状态,更新后的times参数大于executedTimes,则Timer进入运行(RUNNING)状态。
读取Timer
请求地址
HTTP GET /v1/timer/{uuid}
请求参数
名称 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
uuid | String | 是 | 定时器的uuid |
请求示例
HTTP GET /v1/timer/8bd6102b-24c8-4912-876f-f0b0b08cea18
返回参数
名称 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
uuid | String | 是 | 定时器id | |
name | String | 是 | 定时器名称 | |
accountUuid | String | 是 | 定时器的用户id | |
description | String | 是 | 描述 | |
period | Int | 是 | 定时器触发间隔,单位:秒 | |
beginAt | Int | 是 | 第一次触发时间,UNIX时间戳,单位:秒 | |
times | Int | 是 | 定时器执行次数 | |
executedTimes | Int | 是 | 定时器已经执行的次数 | |
endpointName | String | 是 | 定时器触发时,发送MQTT消息的实例名 | |
topic | String | 是 | 定时器触发时,发送MQTT消息的主题 | |
msg | String | 是 | 定时器触发时,发送MQTT消息的内容 | |
lastExecuteTime | Int | 是 | 定时器触上次触发时间,如果没有触发过,则为0 | |
status | String | 是 | 定时器状态,可能取值:RUNNING,FINISHED | |
createTime | String | 是 | 创建时间 | |
updateTime | String | 是 | 更新时间 |
返回示例
Plain Text
1{
2 "uuid": "8bd6102b-24c8-4912-876f-f0b0b08cea18",
3 "accountUuid": "eb105e2e-cbe5-42f2-8464-7cd4cc8316b3",
4 "name": "my_timer_01",
5 "description": "trigger every 30 seconds, for 100 times",
6 "period": 30,
7 "beginAt": 1513667688,
8 "times": 100,
9 "executedTimes": 21,
10 "endpointName": "myendpoint1",
11 "topic": "/utils/timer01",
12 "msg": "{"timer":"my_timer_1"}",
13 "lastExecuteTime": 1513667993,
14 "status": "RUNNING",
15 "createTime": "2017-11-20T11:21:23Z",
16 "updateTime": "2017-11-20T11:21:23Z"
17}
枚举Timer
请求地址
HTTP GET /v1/timer?pageNo={pageNo}&pageSize={pageSize}
请求参数
名称 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
pageNo | Int | 否 | 1 | 分页的页标 |
pageSize | Int | 否 | 50 | 分页的大小 |
请求示例
HTTP GET /v1/timer?pageNo=1&pageSize=20
返回参数
名称 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
totalCount | Int | 是 | 总的定时器个数 | |
pageNo | Int | 是 | 分页的页标 | |
pageSize | Int | 是 | 分页的大小 | |
result | Array | 是 | 定时器详情数组,每个元素个数同接口:读取Timer |
返回示例
Plain Text
1{
2 "pageNo": 1,
3 "pageSize": 20,
4 "totalCount": 1,
5 "result": [
6 {
7 "uuid": "8bd6102b-24c8-4912-876f-f0b0b08cea18",
8 "accountUuid": "eb105e2e-cbe5-42f2-8464-7cd4cc8316b3",
9 "name": "my_timer_01",
10 "description": "trigger every 30 seconds, for 100 times",
11 "period": 30,
12 "beginAt": 1513667688,
13 "times": 100,
14 "executedTimes": 21,
15 "endpointName": "myendpoint1",
16 "topic": "/utils/timer01",
17 "msg": "{\"timer\":\"my_timer_1\"}",
18 "lastExecuteTime": 1513667993,
19 "status": "RUNNING",
20 "createTime": "2017-11-20T11:21:23Z",
21 "updateTime": "2017-11-20T11:21:23Z"
22 }
23 ]
24}
删除Timer
请求地址
HTTP DELETE /v1/timer/{uuid}
请求参数
名称 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
uuid | String | 是 | 定时器的uuid |
请求示例
HTTP DELETE /v1/timer/8bd6102b-24c8-4912-876f-f0b0b08cea18
返回参数
名称 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
result | String | 是 | ok | 出错则抛异常 |
返回示例
Plain Text
1{
2 "result":"ok"
3}
批量删除Timer
请求地址
HTTP POST /v1/timer/batch/delete
请求参数
名称 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
ids | Array | 是 | 定时器的uuid数组 |
请求示例
Plain Text
1{
2 "ids": [
3 "8bd6102b-24c8-4912-876f-f0b0b08cea18",
4 "30698a2b-24c8-4912-876f-f335508ce9ab"
5 ]
6}
返回参数
名称 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
result | String | 是 | ok | 出错则抛异常 |
返回示例
Plain Text
1{
2 "result":"ok"
3}