边缘网关服务API
更新时间:2019-10-15 10:53:12
概述
全屋边缘网关是一个对人居中的物联网设备实现快捷接入、本地控制以及本地场景联动的一个关键设备。
全屋边缘网关服务主要指设备快捷接入、本地场景部署和联动、以及连接阿里云IoT平台等阿里巴巴实现的软件SDK功能。网关硬件厂商通过集成边缘网关SDK来实现边缘网关硬件产品。
基本操作接口
接口名 | 简介 |
---|---|
查询空间的边缘网关 | 查询空间的边缘网关 |
查询人的边缘网关 | 查询人的边缘网关 |
查询租户的边缘网关 | 查询租户的边缘网关 |
推送配置到边缘网关设备 | 推送配置到边缘网关设备 |
清空边缘网关上的配置 | 清空边缘网关上的配置 |
移除边缘网关上的配置 | 移除边缘网关上的配置 |
向边缘网关配置中添加设备 | 向边缘网关配置中添加设备 |
从边缘网关配置中删除设备 | 从边缘网关配置中删除设备 |
查询已经加入到边缘网关配置下的子设备列表 | 查询已经加入到边缘网关配置下的子设备列表 |
查询边缘网关已连接但未加入到配置下的子设备列表 | 查询边缘网关已连接但未加入到配置下的子设备列表 |
向边缘网关配置中添加场景 | 向边缘网关配置中添加场景 |
从边缘网关配置中删除场景 | 从边缘网关配置中删除场景 |
查询边缘网关配置中的场景 | 查询边缘网关配置中的场景 |
查询空间的边缘网关
/home/paas/space/edge/gateway/query
- 版本1.0.0
入参
字段名 | 类型 | 必填 | 备注 |
---|---|---|---|
operator | JSONObject | 是 | 操作员,见“身份信息”定义。 |
spaceId | String | 是 | 空间id |
pageNo | Integer | 是 | 请求的页码,详细见“分页参数”定义。 |
pageSize | Integer | 是 | 每页的记录数,详细见“分页参数”定义。 |
出参
返回结果使用通用结果类型,data域是对象,见下表的详细说明:
字段名 | 类型 | 描述 |
---|---|---|
data | String | 边缘网关设备的iotId列表 |
pageNo | Integer | 请求的页码,详细见“分页参数”定义。 |
pageSize | Integer | 请求的页码,详细见“分页参数”定义。 |
total | Integer | 总记录数 |
示例
例:
当前的操作员的用户ID是1111299939433,使用了三方账号体系。
查询支持spaceId为de8affmefi3的边缘网关设备列表。
查询第2页,每页10个设备。
请求参数如下:
请求示例
{
"operator": {
"hid": "1111299939433",
"hidType": "OPEN"
},
"spaceId":"de8affmefi3",
"pageNo": 1,
"pageSIze": 10
}
返回实例
{
"id": "4de2c367-c1db-417c-aa15-8c585e595d92",
"code": 200,
"message": null,
"localizedMsg": null,
"data":{
"data":[
"tdLzgnyyLhpzOwTtj0me000101"
],
"pageSize":10,
"pageNo":2,
"total":12
}
}
查询人的边缘网关
/home/paas/user/edge/gateway/query
字段名 | 类型 | 必填 | 备注 |
---|---|---|---|
operator | JSONObject | 是 | 操作员,见“身份信息”定义。 |
target | JSONObject | 是 | 设备的归属用户,见“身份信息”定义。 |
pageNo | Integer | 是 | 请求的页码,详细见“分页参数”定义。 |
pageSize | Integer | 是 | 每页的记录数,详细见“分页参数”定义。 |
出参
返回结果使用通用结果类型,data域是对象,见下表的详细说明:
字段名 | 类型 | 描述 |
---|---|---|
data | String | 边缘网关设备的iotId列表 |
pageNo | Integer | 请求的页码,详细见“分页参数”定义。 |
pageSize | Integer | 请求的页码,详细见“分页参数”定义。 |
total | Integer | 总记录数 |
示例
例:
当前的操作员的用户ID是1111299939433,使用了三方账号体系。
查询22858512781用户下的边缘网关设备
查询第2页,每页10个设备。
请求参数如下:
请求示例
{
"operator": {
"hid": "1111299939433",
"hidType": "OPEN"
},
"target":{
"hid":"22858512781",
"hidType":"OPEN"
},
"pageNo": 1,
"pageSIze": 10
}
返回示例
{
"id": "4de2c367-c1db-417c-aa15-8c585e595d92",
"code": 200,
"message": null,
"localizedMsg": null,
"data":{
"data":[
"tdLzgnyyLhpzOwTtj0me000101"
],
"pageSize":10,
"pageNo":2,
"total":11
}
}
查询租户的边缘网关
/home/paas/edge/gateway/query
字段名 | 类型 | 必填 | 备注 |
---|---|---|---|
operator | JSONObject | 是 | 操作员,见“身份信息”定义。 |
pageNo | Integer | 是 | 请求的页码,详细见“分页参数”定义。 |
pageSize | Integer | 是 | 每页的记录数,详细见“分页参数”定义。 |
出参
返回结果使用通用结果类型,data域是对象,见下表的详细说明:
字段名 | 类型 | 描述 |
---|---|---|
data | String | 边缘网关设备的iotId列表 |
pageNo | Integer | 请求的页码,详细见“分页参数”定义。 |
pageSize | Integer | 请求的页码,详细见“分页参数”定义。 |
total | Integer | 总记录数 |
示例
例:
当前的操作员的用户ID是1111299939433,使用了三方账号体系。
查询第2页,每页10个设备。
请求参数如下:
请求示例
{
"operator": {
"hid": "1111299939433",
"hidType": "OPEN"
},
"pageNo": 1,
"pageSIze": 10
}
返回示例
{
"id": "4de2c367-c1db-417c-aa15-8c585e595d92",
"code": 200,
"message": null,
"localizedMsg": null,
"data":{
"data":[
"tdLzgnyyLhpzOwTtj0me000101"
],
"pageSize":10,
"pageNo":2,
"total":11
}
}
推送配置到边缘网关设备
边缘网关连接的子设备、运行的场景需要先添加到配置中,然后推送到边缘网关设备上。
每一个边缘网关绑定到平台的时候会创建一个对应的配置文件。
把需要添加的配置项配置好之后,调用这个接口把配置推送到边缘网关上,之后边缘网关才能识别子设备、运行场景。
/home/paas/edge/config/push
字段名 | 类型 | 必填 | 备注 |
---|---|---|---|
operator | JSONObject | 是 | 操作员,见“身份信息”定义。 |
edgeIotId | String | 是 | 待推送的边缘网关iotId |
出参
示例
例:
当前的操作员的用户ID是1111299939433,使用了三方账号体系。
要推送配置到边缘网关tdLzgnyyLhpzOwTtj0me000101
请求参数如下:
请求示例
{
"operator":{
"hid":"1111299939433",
"hidType":"OPEN"
},
"edgeIotId":"tdLzgnyyLhpzOwTtj0me000101"
}
返回示例
{
"id": "4de2c367-c1db-417c-aa15-8c585e595d92",
"code": 200,
"message": null,
"localizedMsg": null
}
清空边缘网关上的配置
当你想抹去边缘网关上所有的子设备信息、场景信息的时候,可以调这个接口来实现。
调用之后,边缘网关设备中的配置文件不再包含连接的子设备信息,也不会包含要运行在边缘网关上的场景信息。
调用之后,边缘网关上原来连接的子设备将不可控制,边缘网关上原来运行的场景将全部停止并且从边缘网关上删除。
/home/paas/edge/config/clear
字段名 | 类型 | 必填 | 备注 |
---|---|---|---|
operator | JSONObject | 是 | 操作员,见“身份信息”定义。 |
edgeIotId | String | 是 | 待清除配置的边缘网关iotId |
出参
返回结果使用通用结果类型,不使用data域,无值。
示例
例:
当前的操作员的用户ID是1111299939433,使用了三方账号体系。
要清除配置的边缘网关是tdLzgnyyLhpzOwTtj0me000101
请求参数如下:
请求示例
{
"operator":{
"hid":"1111299939433",
"hidType":"OPEN"
},
"edgeIotId":"tdLzgnyyLhpzOwTtj0me000101"
}
返回示例
{
"id": "4de2c367-c1db-417c-aa15-8c585e595d92",
"code": 200,
"message": null,
"localizedMsg": null
}
移除边缘网关上的配置
在边缘网关需要彻底初始化的时候使用这个接口,比如从人居平台迁移到园区平台。这个时候需要彻底删除边缘配置,这是因为每个平台的边缘网关配置的生成策略不同。如果设备不换平台,非常不建议调用这个接口。
调用这个接口的前提是需要清空边缘网关上的配置,参考接口“清空边缘网关上的配置”,并且调用这个接口之前不能调设备复位接口 /home/paas/device/reset 。只能在这个接口调用之后调 /home/paas/device/reset。如果出现调了本接口而在其他平台上依然无法使用边缘网关。建议如下处理:
走配网把网关绑定到人居平台
调本接口/home/paas/edge/config/delete删除边缘网关配置
调/home/paas/device/reset重置网关。
所以,建议不要使用本接口,建议不要使用本接口,建议不要使用本接口
/home/paas/edge/config/delete
字段名 | 类型 | 必填 | 备注 |
---|---|---|---|
operator | JSONObject | 是 | 操作员,见“身份信息”定义。 |
edgeIotId | String | 是 | 待删除配置的边缘网关iotId |
出参
返回结果使用通用结果类型,不使用data域,无值。
示例
例:
当前的操作员的用户ID是1111299939433,使用了三方账号体系。
要删除配置的边缘网关是tdLzgnyyLhpzOwTtj0me000101
请求参数如下:
请求示例
{
"operator": {
"hid": "1111299939433",
"hidType": "OPEN"
},
"pageNo": 1,
"pageSIze": 10
}
返回示例
{
"id": "4de2c367-c1db-417c-aa15-8c585e595d92",
"code": 200,
"message": null,
"localizedMsg": null
}
向边缘网关配置中添加设备
边缘网关要能控制子设备,需要在子设备配网完成之后,调用次接口把子设备添加到边缘网关的配置中,然后再调用接口“推送配置到边缘网关”完成配置下发。
这一步可以和子设备配网分开处理。
可以用接口“查询边缘网关已配网未推送配置的子设备”来获取这种子设备,之后调用本接口完成边缘配置添加。
/home/paas/edge/device/add
字段名 | 类型 | 必填 | 备注 |
---|---|---|---|
operator | JSONObject | 是 | 操作员,见“身份信息”定义。 |
iotIds | JSONArray | 是 | 待添加的子设备列表,上限50个 |
edgeIotId | String | 是 | 目标边缘网关iotId |
出参
返回结果使用通用结果类型,不使用data域,无值。
示例
例:
当前的操作员的用户ID是1111299939433,使用了三方账号体系。
要添加的子设备iotId是Kpr2cGdCs521vbsV4bfeSU000101
要添加配置的边缘网关是tdLzgnyyLhpzOwTtj0me000101
请求参数如下:
请求示例
{
"operator":{
"hid":"1111299939433",
"hidType":"OPEN"
},
"iotIds":[
"Kpr2cGdCs521vbsV4bfeSU000101"
],
"edgeIotId":"tdLzgnyyLhpzOwTtj0me000101"
}
返回示例
{
"id": "4de2c367-c1db-417c-aa15-8c585e595d92",
"code": 200,
"message": null,
"localizedMsg": null
}
从边缘网关配置中删除设备
子设备和边缘网关解绑的时候,还需要调这个接口从配置中删除子设备信息。调完这个接口之后需要再调用“推送配置到边缘网关”接口完成配置下发
/home/paas/edge/device/delete
字段名 | 类型 | 必填 | 备注 |
---|---|---|---|
operator | JSONObject | 是 | 操作员,见“身份信息”定义。 |
iotIds | JSONArray | 是 | 待删除的子设备列表,上限50个 |
edgeIotId | String | 是 | 目标边缘网关iotId |
出参
返回结果使用通用结果类型,不使用data域,无值。
示例
例:
当前的操作员的用户ID是1111299939433,使用了三方账号体系。
要删除的子设备iotId是Kpr2cGdCs521vbsV4bfeSU000101
要删除配置的边缘网关是tdLzgnyyLhpzOwTtj0me000101
请求参数如下:
请求示例
{
"operator":{
"hid":"1111299939433",
"hidType":"OPEN"
},
"iotIds":[
"Kpr2cGdCs521vbsV4bfeSU000101"
],
"edgeIotId":"tdLzgnyyLhpzOwTtj0me000101"
}
返回示例
{
"code":200,
"message":"success"
}
查询已经加入到边缘网关配置下的子设备列表
/home/paas/edge/device/query
字段名 | 类型 | 必填 | 备注 |
---|---|---|---|
operator | JSONObject | 是 | 操作员,见“身份信息”定义。 |
edgeIotId | String | 是 | 目标边缘网关iotId |
pageNo | Integer | 是 | 请求的页码,详细见“分页参数”定义。 |
pageSize | Integer | 是 | 每页的记录数,详细见“分页参数”定义。 |
出参
字段名 | 类型 | 描述 |
---|---|---|
data | String | 子设备的iotId列表 |
pageNo | Integer | 请求的页码,详细见“分页参数”定义。 |
pageSize | Integer | 请求的页码,详细见“分页参数”定义。 |
total | Integer | 总记录数 |
示例
例:
当前的操作员的用户ID是1111299939433,使用了三方账号体系。
要查询的边缘网关是tdLzgnyyLhpzOwTtj0me000101
查询第2页,每页10个设备。
请求参数如下:
请求示例
{
"operator":{
"hid":"1111299939433",
"hidType":"OPEN"
},
"edgeIotId":"tdLzgnyyLhpzOwTtj0me000101"
}
返回示例
{
"id": "4de2c367-c1db-417c-aa15-8c585e595d92",
"code": 200,
"message": null,
"localizedMsg": null,
"data":{
"data":[
"tdLzgnyyLhpzOwTtj0me000101"
],
"pageSize":10,
"pageNo":2,
"total":11
}
}
查询边缘网关已连接但未加入到配置下的子设备列表
向边缘网关添加子设备之前,用这个接口拉待添加的设备列表
/home/paas/edge/unconfigured/device/query
字段名 | 类型 | 必填 | 备注 |
---|---|---|---|
operator | JSONObject | 是 | 操作员,见“身份信息”定义。 |
edgeIotId | String | 是 | 目标边缘网关iotId |
pageNo | Integer | 是 | 请求的页码,详细见“分页参数”定义。 |
pageSize | Integer | 是 | 每页的记录数,详细见“分页参数”定义。 |
出参
字段名 | 类型 | 描述 |
---|---|---|
data | String | 子设备的iotId列表 |
pageNo | Integer | 请求的页码,详细见“分页参数”定义。 |
pageSize | Integer | 请求的页码,详细见“分页参数”定义。 |
total | Integer | 总记录数 |
示例
例:
当前的操作员的用户ID是1111299939433,使用了三方账号体系。
要查询的边缘网关是tdLzgnyyLhpzOwTtj0me000101
查询第2页,每页10个设备。
请求参数如下:
请求示例
{
"operator":{
"hid":"1111299939433",
"hidType":"OPEN"
},
"edgeIotId":"tdLzgnyyLhpzOwTtj0me000101"
}
返回示例
{
"id": "4de2c367-c1db-417c-aa15-8c585e595d92",
"code": 200,
"message": null,
"localizedMsg": null,
"data":{
"data":[
"tdLzgnyyLhpzOwTtj0me000101"
],
"pageSize":10,
"pageNo":2,
"total":11
}
}
向边缘网关配置中添加场景
向边缘网关添加场景,添加的时候会有校验。
如果场景中包含的设备不在该网关的配置下,添加会失败。
如果这个场景无法在边缘网关上执行,添加会失败。
一个边缘网关最多支持30个场景
/home/paas/edge/scene/add
字段名 | 类型 | 必填 | 备注 |
---|---|---|---|
operator | JSONObject | 是 | 操作员,见“身份信息”定义。 |
sceneId | String | 是 | 待添加的场景id |
edgeIotId | String | 是 | 目标边缘网关iotId |
出参
返回结果使用通用结果类型,不使用data域,无值。
示例
例:
当前的操作员的用户ID是1111299939433,使用了三方账号体系。
要添加的场景id是3c75797932204e1cb1c1239f4dfa9d97
要添加配置的边缘网关是tdLzgnyyLhpzOwTtj0me000101
请求参数如下:
请求示例
{
"operator":{
"hid":"1111299939433",
"hidType":"OPEN"
},
"sceneId":"3c75797932204e1cb1c1239f4dfa9d97",
"edgeIotId":"tdLzgnyyLhpzOwTtj0me000101"
}
返回示例
{
"code":200,
"message":"success"
}
从边缘网关配置中删除场景
/home/paas/edge/scene/delete
字段名 | 类型 | 必填 | 备注 |
---|---|---|---|
operator | JSONObject | 是 | 操作员,见“身份信息”定义。 |
sceneId | String | 是 | 待移除的场景id |
edgeIotId | String | 是 | 目标边缘网关iotId |
出参
返回结果使用通用结果类型,不使用data域,无值。
示例
例:
当前的操作员的用户ID是1111299939433,使用了三方账号体系。
要删除的场景id是3c75797932204e1cb1c1239f4dfa9d97
要删除配置的边缘网关是tdLzgnyyLhpzOwTtj0me000101
请求参数如下:
请求示例
{
"operator":{
"hid":"1111299939433",
"hidType":"OPEN"
},
"sceneId":"3c75797932204e1cb1c1239f4dfa9d97",
"edgeIotId":"tdLzgnyyLhpzOwTtj0me000101"
}
返回示例
{
"code":200,
"message":"success"
}
查询边缘网关配置中的场景
/home/paas/edge/scene/query
字段名 | 类型 | 必填 | 备注 |
---|---|---|---|
operator | JSONObject | 是 | 操作员,见“身份信息”定义。 |
edgeIotId | String | 是 | 目标边缘网关iotId |
pageNo | Integer | 是 | 请求的页码,详细见“分页参数”定义。 |
pageSize | Integer | 是 | 每页的记录数,上限50。 |
出参
字段名 | 类型 | 描述 |
---|---|---|
data | String | 场景id列表 |
pageNo | Integer | 请求的页码,详细见“分页参数”定义。 |
pageSize | Integer | 请求的页码,详细见“分页参数”定义。 |
total | Integer | 总记录数 |
出参
返回结果使用通用结果类型,不使用data域,无值。
示例
例:
当前的操作员的用户ID是1111299939433,使用了三方账号体系。
要查询的边缘网关是tdLzgnyyLhpzOwTtj0me000101
请求参数如下:
请求示例
{
"operator": {
"hid": "1111299939433",
"hidType": "OPEN"
},
"edgeIotId":"tdLzgnyyLhpzOwTtj0me000101",
"pageNo": 1,
"pageSIze": 10
}
返回示例
{
"id": "4de2c367-c1db-417c-aa15-8c585e595d92",
"code": 200,
"message": null,
"localizedMsg": null,
"data":{
"data":[
"3c75797932204e1cb1c1239f4dfa9d97"
],
"pageSize":10,
"pageNo":2,
"total":11
}
}