1. 描述
创建设备。
2. 调用场景
开发者登录超级控制台后,可以以God角色创建自己的设备。设备创建目前只能由God进行。
3. 配置参数
参数意义参考接口参数
参数名 |
参数值 |
说明 |
Name |
AddDev |
|
Url |
https://api.xdua.com/devp |
|
Method |
POST |
|
XduaApiHttpSchema |
HTTPS |
只走HTTPS |
XduaApiMethod |
ADD |
|
XduaApiColor |
X |
只有持有神设备,才可以创建设备 |
XduaApiAudience |
ConsoleX |
只有devp_id为ConsoleX的设备,也就是consolex.xdua.com才可以发起本请求 |
XduaApiShop |
XdUaXduA |
设备直辖店铺,只有这个店铺的登录人员才可以访问 |
XduaApiSubject |
i |
需要登录 |
XduaApiRole |
God |
目前地球号只允许God添加设备,未来这个功能会让给一个专门维护设备和设备录入的角色。 |
XduaApiResource |
devp |
|
XduaApiKparam |
pkey |
在阿里云物联网平台创建的设备的ProductKey |
XduaApiAction |
CreateDev |
|
XduaApiRule |
CreateDev |
|
XduaApiAstates |
0 |
所有的资源都要确认state是0 |
XduaApiEnable |
true |
接口使能 |
4. 请求参数
名称 |
位置 |
类型 |
必填 |
默认值 |
示例 |
说明 |
devp_id |
body |
String |
是 |
无 |
TeStTeSt |
设备从属的产品ID |
unid |
body |
String |
是 |
无 |
"BTMC.AC2D3F7894A3" |
BTMC. 代表Bluetooth Mac Address,当设备上传的数据是以蓝牙通讯云端的,必须用BTMC |
^ |
^ |
^ |
^ |
^ |
"WFMC.AC2D3F7894A3" |
WFMC. 代表Wifi Mac Address,当设备时以Wifi 通讯云端的 |
^ |
^ |
^ |
^ |
^ |
"IMEI.861410042482884" |
IMEI. 代表imei,当设备以NBIOT通讯时 |
^ |
^ |
^ |
^ |
^ |
"VIRT.*" |
VIRT. 代表Virtual,虚拟,是地球号内部编码。特殊场合采用,例如虚拟网关才会用这个编号。 |
snid |
body |
String |
是 |
无 |
"100034" |
从设备包装盒,表面,印刷痕迹能够方便找到的用于区分的序列号。一般设备上会用这个作为他们内部跟踪产品的编号。如果是MAC地址,那就填MAC地址。 |
name |
body |
String |
是 |
无 |
"电池口坏了的温度计" |
仅仅用来标志,是地球号员工对每个设备的标志。 |
5. 返回参数
名称 |
位置 |
类型 |
示例 |
说明 |
id |
result |
string |
rYub4wrT |
创建的设备ID |
6. 错误码
错误码来自于error字段,通用错误码参考地球号通用错误码
7. SDK调用
const XduaClient = require('lovearth-xdua-browser-sdk')
const xduaClient = await XduaClient({
LOGIN_TOKEN:"eyJhbGciOi...",
})
const add_params = {
devp_id:"TeStTeSt",
unid:"BTMC.AC2D3F7894A3",
snid:"C789X",
name:"测试设备",
}
let res = await xduaClient.addDev(add_params)
if(res.error == 0){
console.log("测试成功");
}else{
console.log("测试失败");
console.log(res);
}
文档还没有实现
```
{% sample lang="php" -%}
文档还没有实现
```bash
# 描述
删除设备。
# 调用场景
God在[超级控制台](http://consolex.xdua.com)登录. 它会让资源永久消失。
# 配置参数
参数意义参考[接口参数](http://docapi.xdua.com/api/param.html)
|参数名 |参数值 |说明 |
|------ |------ |---- |
|Name |DelDev | |
|URL |https://api.xdua.com/dev| |
|Method |DELETE | |
|XduaApiHttpSchema |HTTPS | 只走HTTPS|
|XduaApiMethod |DEL | |
|XduaApiColor |X | 只有持有神设备,才可以创建设备 |
|XduaApiAudience |ConsoleX | 只有dev_id为ConsoleX的设备,也就是consolex.xdua.com才可以发起本请求|
|XduaApiShop |XdUaXduA | 设备直辖店铺,只有这个店铺的登录人员才可以访问|
|XduaApiSubject |i | 只有资源创建者自己可以访问这个口|
|XduaApiRoles |God | Zoon可以删除设备|
|XduaApiResource |dev | |
|XduaApiKparam |id | |
|XduaApiAction |DeleteDev | |
|XduaApiRule |DeleteDev | |
|XduaApiAstates |0 | 所有state检查 |
|XduaApiEnable |true | 接口使能 |
# 请求参数
|名称 | 位置|类型 |必填 |默认值 |示例 |说明 |
|------- |-----|---------|--------|--------|--------|------------ |
|id |path |string |是 | |rYub4wrT|要删除的设备ID |
# 返回参数
|名称 | 位置 |类型 |示例 |说明 |
|------- |----- |-----------|------------|------------ |
|id |result |string |rYub4wrT |删除的设备ID |
# 错误码
错误码来自于error字段,通用错误码参考[地球号通用错误码](http://doc.xdua.com/api/errorcodes.html)
# SDK调用
const XduaClient = require('lovearth-xdua-browser-sdk')
const xduaClient = await XduaClient({
LOGIN_TOKEN:"eyJhbGciOi...",
})
const dev_id ="TeStTeSt";
let res = await xduaClient.delDev(dev_id)
if(res.error == 0){
console.log("测试成功");
}else{
console.log("测试失败");
console.log(res);
}
文档还没有实现
```
{% sample lang="php" -%}
文档还没有实现
```bash
# 描述
关闭设备。
# 调用场景
PUT:http://api.xdua.com/dev/[id]/state/enable
# 配置参数
参数意义参考[接口参数](http://docapi.xdua.com/api/param.html)
|参数名 |参数值 |说明 |
|------ |------ |---- |
|Name |DisDev | |
|URL |https://api.xdua.com/dev| |
|Method |PUT | |
|XduaApiHttpSchema |HTTPS | 只走HTTPS|
|XduaApiMethod |DIS | |
|XduaApiColor |X | 只有持有神设备,才可以创建设备 |
|XduaApiAudience |ConsoleX | 只有dev_id为ConsoleX的设备,也就是consolex.xdua.com才可以发起本请求|
|XduaApiShop |XdUaXduA | 设备直辖设备,只有这个设备的登录人员才可以访问|
|XduaApiSubject |i | 必须是创建者才可以自闭设备|
|XduaApiRoles |Admin | 只有神级管理员才可以关闭普通开发者的设备|
|XduaApiResource |dev | |
|XduaApiKparam |id | |
|XduaApiAction |DisableDev | |
|XduaApiRule |DisableDev | |
|XduaApiAstates |`0,0` 或者`0` | 按序dev,zone,corp,shop,dev,dev,login的状态都必须是0(STATE_ENABLED) |
|XduaApiEnable |true | 接口使能 |
# 请求参数
|名称 | 位置|类型 |必填 |默认值 |示例 |说明 |
|------- |-----|---------|--------|--------|--------|------------ |
|id |path |string |是 | |rYub4wrT|要删除的设备ID |
# 返回参数
|名称 | 位置 |类型 |示例 |说明 |
|------- |----- |-----------|------------|------------ |
|id |result |string |rYub4wrT |删除的设备ID |
# 错误码
# 描述
软删设备。
# 调用场景
开发者登录[超级控制台](http://consolex.xdua.com)后,可以点击自己的设备,然后删除掉。如果哪天后悔了,可以联系Zoon来恢复。
# 配置参数
参数意义参考[接口参数](http://docapi.xdua.com/api/param.html)
|参数名 |参数值 |说明 |
|------ |------ |---- |
|Name |DolDev | |
|URL |https://api.xdua.com/dev| |
|Method |PUT | |
|XduaApiHttpSchema |HTTPS | 只走HTTPS|
|XduaApiMethod |DOL | |
|XduaApiColor |X | 只有持有神设备,才可以创建设备 |
|XduaApiAudience |ConsoleX | 只有dev_id为ConsoleX的设备,也就是consolex.xdua.com才可以发起本请求|
|XduaApiShop |XdUaXduA | 设备直辖店铺,只有这个店铺的登录人员才可以访问|
|XduaApiSubject |i | 只有创建者自己才能删除自己创建的设备|
|XduaApiRoles |Zoon | 只要登录就可以创建设备|
|XduaApiResource |dev | |
|XduaApiKparam |id | |
|XduaApiAction |DeletoDev | |
|XduaApiRule |DeletoDev | |
|XduaApiAstates |0 | 按序dev,zone,corp,shop,dev,dev,login的状态都必须是0(STATE_ENABLED) |
|XduaApiEnable |true | 接口使能 |
# 请求参数
|名称 | 位置|类型 |必填 |默认值 |示例 |说明 |
|------- |-----|---------|--------|--------|--------|------------ |
|id |path |string |是 | |rYub4wrT|要删除的设备ID |
# 返回参数
|名称 | 位置 |类型 |示例 |说明 |
|------- |----- |-----------|------------|------------ |
|id |result |string |rYub4wrT |删除的设备ID |
# 错误码
# 描述
打开设备。
# 调用场景
PUT:http://api.xdua.com/dev/[id]/state/enable
# 配置参数
参数意义参考[接口参数](http://docapi.xdua.com/api/param.html)
|参数名 |参数值 |说明 |
|------ |------ |---- |
|Name |EnbDev | |
|URL |http://api.xdua.com/dev/[id]/state/enable| |
|Method |PUT | |
|XduaApiHttpSchema |HTTPS | 只走HTTPS|
|XduaApiMethod |ENB | |
|XduaApiColor |X | 只有持有神设备,才可以创建设备 |
|XduaApiAudience |ConsoleX | 只有dev_id为ConsoleX的设备,也就是consolex.xdua.com才可以发起本请求|
|XduaApiShop |XdUaXduA | 设备直辖店铺,只有这个店铺的登录人员才可以访问|
|XduaApiSubject |u | 神登录后解冻开发者的设备|
|XduaApiRoles |Admin | 只有神才可以解冻设备|
|XduaApiResource |dev | |
|XduaApiKparam |id | |
|XduaApiAction |EnableDev | |
|XduaApiRule |EnableDev | |
|XduaApiAstates |0 | 按序dev,zone,corp,shop,dev,dev,login的状态都必须是0(STATE_ENABLED) |
|XduaApiEnable |true | 接口使能 |
# 请求参数
|名称 | 位置|类型 |必填 |默认值 |示例 |说明 |
|------- |-----|---------|--------|--------|--------|------------ |
|id |path |string |是 | |rYub4wrT|要删除的设备ID |
# 返回参数
|名称 | 位置 |类型 |示例 |说明 |
|------- |----- |-----------|------------|------------ |
|id |result |string |rYub4wrT |删除的设备ID |
# 错误码
# 描述
获取MQTT协议设备的MQTT连接协议所需要的参数。
# 调用场景
C端客户,或者B端客户拿到我们的网关设备后,可以登录[超级控制台](http://consolex.xdua.com),输入`unid`获取这个网关设备配置所需要的参数。然后就可以在自己家配置了。
或者我们平台配置好后,交给客户。客户不能改。
# 配置参数
|参数名 |参数值 |说明 |
|------ |------ |---- |
|URL |https://api.xdua.com/aliotmqttpass| |
|Method |GET | |
|XduaApiHttpSchema |HTTPS | 只走HTTPS|
|XduaApiMethod |GET | |
|XduaApiColor |X | 只有持有神设备,才可以创建设备 |
|XduaApiAudience |ConsoleX | 只有dev_id为ConsoleX的设备,也就是consolex.xdua.com才可以发起本请求|
|XduaApiShop |XdUaXduA | 设备直辖店铺,只有这个店铺的登录人员才可以访问|
|XduaApiSubject |i | !表示除了允许匿名设备之外的所有设备访问|
|XduaApiRoles |Zoon | 只要Zoon才可以访问其它设备的设备|
|XduaApiResource |dev | |
|XduaApiKparam |id | |
|XduaApiAction |GetAliotmqttpass | |
|XduaApiRule |GetAliotmqttpass | |
|XduaApiAstates |0 | 设备dev.state必须是0(STATE_ENABLED) |
|XduaApiEnable |true | 接口使能 |
# 请求参数
|名称 | 位置|类型 |必填 |默认值 |示例 |说明 |
|------- |-----|---------|--------|--------|--------|------------ |
|id |path |string |是 | |rYub4wrT|要获取的设备的unid |
# 返回参数
|名称 | 位置 |类型 |示例 |说明 |
|------- |----- |-----------|------------ |------------ |
|id |result |string |rYub4wrT |设备的8位地球号ID |
|unid |result.data |string | |设备的UNID |
|url |result.data |string | |MQTT服务URL |
|port |result.data |string | |MQTT服务端口 |
|clientId |result.data |string | |设备的clientId |
|Username |result.data |string | |设备的连接用户,注意这个命名,N是小写的。 |
|Password |result.data |int |1 |设备的连接密码 |
> [!note | label:为什么有unid和id的区别?]
> 在请求的时候使用id字段而不用unid,是因为地球号严格规定了GET接口的字段名为id.而返回接口必须是8位的地球号id.
#### 返回示例
result部分
```json
{
"id":"rYub4wrT",
"data": {
port: 1883,
Password: "E5EC27894128EEF7A2849********DD19E4A0854",
Username: "BTMC.AC233FC0422D&a1V4e***",
clientId: "BTMC.AC233FC0422D|securemode=3,signmethod=hmacsha1|",
url: "a1V4eBF9HJj.iot-as-mqtt.cn-shanghai.aliyuncs.com"
},
}
```
# 错误码
错误码来自于error字段,通用错误码参考[地球号通用错误码](http://doc.xdua.com/api/errorcodes.html)
# SDK调用
const XduaClient = require('lovearth-xdua-browser-sdk')
const xduaClient = await XduaClient({
LOGIN_TOKEN:"eyJhbGciOi...",
})
const dev_id = "BTMC.AC233FC0422D"
let res = await xduaClient.getDev(dev_id)
if(res.error == 0){
console.log("测试成功");
}else{
console.log("测试失败");
console.log(res);
}
文档还没有实现
```
{% sample lang="php" -%}
文档还没有实现
```bash
# 描述
详情设备。
# 调用场景
管理员登录[超级控制台](http://consolex.xdua.com)后,可以随意查询能看见的所有设备列表。点击其中一个设备(不管是不是自己的),就可以点击访问。
# 配置参数
|参数名 |参数值 |说明 |
|------ |------ |---- |
|URL |https://api.xdua.com/dev| |
|Method |GET | |
|XduaApiHttpSchema |HTTPS | 只走HTTPS|
|XduaApiMethod |GET | |
|XduaApiColor |X | 只有持有神设备,才可以创建设备 |
|XduaApiAudience |ConsoleX | 只有dev_id为ConsoleX的设备,也就是consolex.xdua.com才可以发起本请求|
|XduaApiShop |XdUaXduA | 设备直辖店铺,只有这个店铺的登录人员才可以访问|
|XduaApiSubject |i | !表示除了允许匿名设备之外的所有设备访问|
|XduaApiRoles |Zoon | 只要Zoon才可以访问其它设备的设备|
|XduaApiResource |dev | |
|XduaApiKparam |id | |
|XduaApiAction |GetDev | |
|XduaApiRule |GetDev | |
|XduaApiDevAstate |0 | 设备zone.state必须是0(STATE_ENABLED) |
|XduaApiCorpAstate |0 | 设备corp.state必须是0(STATE_ENABLED) |
|XduaApiShopAstate |0 | 设备shop.state必须是0(STATE_ENABLED) |
|XduaApiDevAstate |0 | 设备dev.state必须是0(STATE_ENABLED) |
|XduaApiDevAstate |0 | 设备 dev.state必须是0(STATE_ENABLED) |
|XduaApiDevAstate |0 | 设备dev.state必须是0(STATE_ENABLED) |
|XduaApiEnable |true | 接口使能 |
# 请求参数
|名称 | 位置|类型 |必填 |默认值 |示例 |说明 |
|------- |-----|---------|--------|--------|--------|------------ |
|id |path |string |是 | |rYub4wrT|要修改的设备ID |
# 返回参数
|名称 | 位置 |类型 |示例 |说明 |
|------- |----- |-----------|------------ |------------ |
|id |result |string |rYub4wrT |详情的角权ID |
|name |result.data |string | |角权的名称 |
|code |result.data |string | |角权的执照号 |
|type |result.data |string | |角权的种类 |
|avatar |result.data |string | |角权图标 |
|brief |result.data |string | |角权的描述 |
|state |result.data |int |1 |角权的状态 |
|stato |result.data |string |"冻服更新" |角权的状态说明 |
|expire |result.data |int |0 |角权状态过期时间(UNIX时间戳) |
|creator_id |result.list[] |string |Dmtv7TrE |社区创建者ID |
|creator_name |result.list[] |string |辣椒帅 |社区创建者名字 |
|ipdator_id |result.list[] |string |XiyRvUp3 |社区最近一次更新者ID |
|ipdator_name |result.list[] |string |周海潮 |社区最近一次更新者名字 |
|cstamp |result.data |string |2020-01-20 02:19:55 |角权创建时间 |
|istamp |result.data |string |2020-01-20 02:23:24 |角权最近更新时间 |
|字段名 |字段类型 | 字段说明 |
|:-------|-------- |--------- |
|id |string |角权的id |
|dev_id |string |所属户群的id |
|dev_name |string |所属户群的名字 |
|igrp_id |string |所属户群的id |
|igrp_name |string |所属户群的名字 |
|code |string |角权的代号 |
|name |string |角权名 |
|brief |string |角权说明 |
|avatar |string |角权的头像 |
|enabeld |int |角权的使能状态 |
|cstamp |string |创建的时间戳字符串 |
|istamp |string |更新的时间戳字符串 |
|字段名 |字段类型 | 字段说明 |
|:-------|-------- |--------- |
|id |string |角权的id |
|roue_id |string |所属户群的id |
|roue_name |string |所属户群的名字 |
|igrp_id |string |所属户群的id |
|igrp_name |string |所属户群的名字 |
|code |string |角权的代号 |
|name |string |角权名 |
|brief |string |角权说明 |
|avatar |string |角权的头像 |
|enabeld |int |角权的使能状态 |
|cstamp |string |创建的时间戳字符串 |
|istamp |string |更新的时间戳字符串 |
|字段名 |字段类型 | 字段说明 |
|:-------|-------- |--------- |
|verified|int |1=设备是有效的|
|did |string |请求该设备的设备id|
|uid |string |设备吃鱼者设备id。匿名设备的设备永远是anonymus|
|did |string |请求该设备的设备id|
|aid |string |请求该设备的设备id|
|aud |string |请求该设备的应用的名字,本字段与aid对应|
|nbf |int |Not Before设备生效时间之前|
|iss |string |设备签发机关。在地球号服务中本字段为常值lovearth|
|iat |string |设备签发UTC时间戳|
|ip |string |设备请求时客户端的ip|
|ua |string |设备请求时客户端的DevAgent|
|exp |int |设备的过期UTC时间戳。如果<=0表示永远有效。如果大于0表示具体的utc时间。| |vtl |int |设备的剩余有效期 validtimelong.0表示永远。如果exp为0,vtl就会被解释为0。如果一个非永远的dev计算vtl为0时,会自动被重置为-1| |ugrp |string |设备持有设备所在的设备群,匿名设备的户群是常量:"xduaxdua"| |role |设备持有设备所在的角色列表,匿名设备的角色列表是常量:"none"| |名称 | 位置 |类型 |示例 |说明 |------- |----- |-----------|------------ |------------ |id |result |ryub4wrt |详情的设备id |name |result.data |设备的名称 |code |设备的执照号 |type |设备的种类 |avatar |设备图标 |brief |设备的描述 |state |1 |设备的状态 |stato |"冻服更新" |设备的状态说明 |expire |0 |设备状态过期时间(unix时间戳) |creator_id |result.list[] |dmtv7tre |社区创建者id |creator_name |辣椒帅 |社区创建者名字 |updator_id |xiyrvup3 |社区最近一次更新者id |updator_name |周海潮 |社区最近一次更新者名字 |cstamp |2020-01-20 02:19:55 |设备创建时间 |ustamp 02:23:24 |设备最近更新时间> [!note]
> 设备的使能状态,0:打开 1:关闭. 关闭的设备处于冻结状态,不接受登陆/注册所有操作.
#### 返回示例
result部分
```json
{
"id":"rYub4wrT",
"data": {
},
}
```
# 错误码
# 描述
私详设备。
# 调用场景
开发者登录[超级控制台](http://consolex.xdua.com)后,在设备列表,选择设备,点击详情,就可以查看自己的设备。GIT的默认字段和GET不一样。
# 配置参数
|参数名 |参数值 |说明 |
|------ |------ |---- |
|URL |https://api.xdua.com/dev| |
|Method |GET | |
|XduaApiHttpSchema |HTTPS | 只走HTTPS|
|XduaApiMethod |GIT | |
|XduaApiColor |X | 只有持有神设备,才可以创建设备 |
|XduaApiAudience |ConsoleX | 只有dev_id为ConsoleX的设备,也就是consolex.xdua.com才可以发起本请求|
|XduaApiShop |XdUaXduA | 设备直辖店铺,只有这个店铺的登录人员才可以访问|
|XduaApiSubject |i | 只有自己才可以访问自己创建的设备|
|XduaApiRoles |Zoon | 只要登录就可以创建设备|
|XduaApiResource |dev | |
|XduaApiKparam |id | |
|XduaApiAction |GetDev | |
|XduaApiRule |GetDev | |
|XduaApiDevAstate |0 | 设备zone.state必须是0(STATE_ENABLED) |
|XduaApiCorpAstate |0 | 设备corp.state必须是0(STATE_ENABLED) |
|XduaApiShopAstate |0 | 设备shop.state必须是0(STATE_ENABLED) |
|XduaApiDevAstate |0 | 设备dev.state必须是0(STATE_ENABLED) |
|XduaApiDevAstate |0 | 设备 dev.state必须是0(STATE_ENABLED) |
|XduaApiDevAstate |0 | 设备dev.state必须是0(STATE_ENABLED) |
|XduaApiEnable |true | 接口使能 |
# 请求参数
|名称 | 位置|类型 |必填 |默认值 |示例 |说明 |
|------- |-----|---------|--------|--------|--------|------------ |
|id |path |string |是 | |rYub4wrT|要修改的设备ID |
# 返回参数
|名称 | 位置 |类型 |示例 |说明 |
|------- |----- |-----------|------------ |------------ |
|id |result |string |rYub4wrT |详情的设备ID |
|name |result.data |string | |设备的名称 |
|avatar |result.data |string | |设备图标 |
|brief |result.data |string | |设备的描述 |
|state |result.data |int |1 |设备的状态 |
|stato |result.data |string |"冻服更新" |设备的状态说明 |
|expire |result.data |int |0 |设备状态过期时间(UNIX时间戳) |
|creator_id |result.list[] |string |Dmtv7TrE |设备创建者ID |
|creator_name |result.list[] |string |辣椒帅 |设备创建者名字 |
|ipdator_id |result.list[] |string |XiyRvUp3 |设备最近一次更新者ID |
|ipdator_name |result.list[] |string |周海潮 |设备最近一次更新者名字 |
|cstamp |result.data |string |2020-01-20 02:19:55 |设备创建时间 |
|istamp |result.data |string |2020-01-20 02:23:24 |设备最近更新时间 |
#### 返回示例
result部分
```json
{
"id":"rYub4wrT",
"data": {
},
}
```
# 错误码
# 描述
下线设备。
# 调用场景
开发者登录[超级控制台](http://consolex.xdua.com)后,可以下线自己创建的设备。
# 配置参数
参数意义参考[接口参数](http://docapi.xdua.com/api/param.html)
|参数名 |参数值 |说明 |
|------ |------ |---- |
|Name |OffDev | |
|URL |https://api.xdua.com/dev| |
|Method |PUT | |
|XduaApiHttpSchema |HTTPS | 只走HTTPS|
|XduaApiMethod |OFF | |
|XduaApiColor |X | 只有持有神设备,才可以创建设备 |
|XduaApiAudience |ConsoleX | 只有dev_id为ConsoleX的设备,也就是consolex.xdua.com才可以发起本请求|
|XduaApiShop |XdUaXduA | 设备直辖店铺,只有这个店铺的登录人员才可以访问|
|XduaApiSubject |i | 只能设备的创建者才能下线自己的设备|
|XduaApiRoles |Zoon | 只要登录就可以创建设备|
|XduaApiResource |dev | |
|XduaApiKparam |id | |
|XduaApiAction |OfflineDev | |
|XduaApiRule |OfflineDev | |
|XduaApiAstates |0 | 按序dev,zone,corp,shop,dev,dev,login的状态都必须是0(STATE_ENABLED) |
|XduaApiEnable |true | 接口使能 |
# 请求参数
|名称 | 位置|类型 |必填 |默认值 |示例 |说明 |
|------- |-----|---------|--------|--------|--------|------------ |
|id |path |string |是 | |rYub4wrT|要删除的设备ID |
# 返回参数
|名称 | 位置 |类型 |示例 |说明 |
|------- |----- |-----------|------------|------------ |
|id |result |string |rYub4wrT |删除的设备ID |
# 错误码
# 描述
发布设备。
# 调用场景
开发者登录[超级控制台](http://consolex.xdua.com)后,可以下线/发布自己的设备。这个动作是管理员不能干涉的。
# 配置参数
参数意义参考[接口参数](http://docapi.xdua.com/api/param.html)
|参数名 |参数值 |说明 |
|------ |------ |---- |
|Name |PubDev | |
|URL |https://api.xdua.com/dev| |
|Method |PUT | |
|XduaApiHttpSchema |HTTPS | 只走HTTPS|
|XduaApiMethod |PUB | |
|XduaApiColor |X | 只有持有神设备,才可以创建设备 |
|XduaApiAudience |ConsoleX | 只有dev_id为ConsoleX的设备,也就是consolex.xdua.com才可以发起本请求|
|XduaApiShop |XdUaXduA | 设备直辖店铺,只有这个店铺的登录人员才可以访问|
|XduaApiSubject |i | 只有设备的创建者自己才能上下线自己的设备|
|XduaApiRoles |Zoon | 只要登录就可以创建设备|
|XduaApiResource |dev | |
|XduaApiKparam |id | |
|XduaApiAction |OnlineDev | |
|XduaApiRule |OnlineDev | |
|XduaApiAstates |0 | 按序dev,zone,corp,shop,dev,dev,login的状态都必须是0(STATE_ENABLED) |
|XduaApiEnable |true | 接口使能 |
# 请求参数
|名称 | 位置|类型 |必填 |默认值 |示例 |说明 |
|------- |-----|---------|--------|--------|--------|------------ |
|id |path |string |是 | |rYub4wrT|要删除的设备ID |
# 返回参数
|名称 | 位置 |类型 |示例 |说明 |
|------- |----- |-----------|------------|------------ |
|id |result |string |rYub4wrT |删除的设备ID |
# 错误码
# 描述
私查设备。
# 调用场景
开发者登录[http://consolex.xdua.com](http://consolex.xdua.com)后,可以以Zoon角色查询所有设备。
# 配置参数
参数意义参考[接口参数](http://docapi.xdua.com/api/param.html)
|参数名 |参数值 |说明 |
|------ |------ |---- |
|Name |QriDev | |
|URL |https://api.xdua.com/dev| |
|Method |GET | |
|XduaApiHttpSchema |HTTPS | 只走HTTPS|
|XduaApiMethod |QRI | |
|XduaApiColor |X | 只有持有神设备,才可以创建设备 |
|XduaApiAudience |ConsoleX | 只有dev_id为ConsoleX的设备,也就是consolex.xdua.com才可以发起本请求|
|XduaApiShop |XdUaXduA | 设备直辖店铺,只有这个店铺的登录人员才可以访问|
|XduaApiSubject |i | 所有注册设备均可以使用|
|XduaApiRoles |Zoon | 必须是Zoon才可以查询角色|
|XduaApiResource |dev | |
|XduaApiKparam |`where` |常量 |
|XduaApiAction |QueriDev | |
|XduaApiRule |QueriDev | |
|XduaApiAstates |0 | 按序dev,zone,corp,shop,dev,dev,login的状态都必须是0(STATE_ENABLED) |
|XduaApiEnable |true | 接口使能 |
# URL
GET:https://api.xdua.com/dev
# 请求参数
参考[标准查询接口请求参数](http://docapi.xdua.com/api/param_query.html)
# 返回参数
参考[标准查询接口返回参数](http://docapi.xdua.com/api/param_query.html)
result.list部分
|名称 | 位置 |类型 |示例 |说明 |
|------- |----- |-----------|------------ |------------ |
|id |result |string |rYub4wrT |详情的设备ID |
|name |result.list[] |string | |设备的名称 |
|avatar |result.list[] |string | |设备图标 |
|brief |result.list[] |string | |设备的描述 |
|state |result.list[] |int |0 |设备的状态 |
|stato |result.list[] |string |"冻服更新" |设备的状态说 |
|expire |result.list[] |int |0 |设备状态过期时间(UNIX时间戳) |
|creator_id |result.list[] |string |Dmtv7TrE |设备创建者ID |
|creator_name |result.list[] |string |辣椒帅 |设备创建者名字 |
|ipdator_id |result.list[] |string |XiyRvUp3 |设备最近一次更新者ID |
|ipdator_name |result.list[] |string |周海潮 |设备最近一次更新者名字 |
|cstamp |result.list[] |string |2020-01-20 02:19:55 |设备创建时间 |
|istamp |result.list[] |string |2020-01-20 02:23:24 |设备最近更新时间 |
# 错误码
# 描述
查询设备。
# 调用场景
开发者登录[http://consolex.xdua.com](http://consolex.xdua.com)后,可以以God角色查询属于所有设备。
# 配置参数
参数意义参考[接口参数](http://docapi.xdua.com/api/param.html)
|参数名 |参数值 |说明 |
|------ |------ |---- |
|Name |QryDev | |
|URL |https://api.xdua.com/dev | |
|Method |GET | |
|XduaApiHttpSchema |HTTPS |只走HTTPS|
|XduaApiMethod |QRY | |
|XduaApiColor |X | 只有持有神设备,才可以创建设备 |
|XduaApiAudience |ConsoleX | 只有dev_id为ConsoleX的设备,也就是consolex.xdua.com才可以发起本请求|
|XduaApiShop |XdUaXduA | 设备直辖店铺,只有这个店铺的登录人员才可以访问|
|XduaApiSubject |u | 所有注册设备均可以使用|
|XduaApiRoles |God | 必须是Zoon才可以查询角色|
|XduaApiResource |dev | |
|XduaApiKparam |`where` | 常量where |
|XduaApiAction |QueryDev | |
|XduaApiRule |QueryDev | |
|XduaApiAstates |0 | 所有状态都必须是0(STATE_ENABLED) |
|XduaApiEnable |true | 接口使能 |
# URL
GET:https://api.xdua.com/dev
# 请求参数
参考[标准查询接口请求参数](http://docapi.xdua.com/api/param_query.html)
# 返回参数
参考[标准查询接口返回参数](http://docapi.xdua.com/api/param_query.html)
result.list部分,注意下面的位置表达,result.list[]表示这些字段在list里的每一项里都出现。
|名称 | 位置 |类型 |示例 |说明 |
|------- |----- |-----------|------------ |------------ |
|id |result.list[] |string |rYub4wrT |详情的设备ID |
|name |result.list[] |string | |设备的名称 |
|avatar |result.list[] |string | |设备图标 |
|brief |result.list[] |string | |设备的描述 |
|state |result.list[] |int |0 |设备的状态 |
|stato |result.list[] |string |"冻服更新" |设备的状态说 |
|expire |result.list[] |int |0 |设备状态过期时间(UNIX时间戳) |
|creator_id |result.list[] |string |Dmtv7TrE |设备创建者ID |
|creator_name |result.list[] |string |辣椒帅 |设备创建者名字 |
|updator_id |result.list[] |string |XiyRvUp3 |设备最近一次更新者ID |
|updator_name |result.list[] |string |周海潮 |设备最近一次更新者名字 |
|cstamp |result.list[] |string |2020-01-20 02:19:55 |设备创建时间 |
|istamp |result.list[] |string |2020-01-20 02:23:24 |设备最近更新时间 |
# 错误码
错误码来自于error字段,通用错误码参考[地球号通用错误码](http://doc.xdua.com/api/errorcodes.html)
# SDK调用
const XduaClient = require('lovearth-xdua-browser-sdk')
const xduaClient = await XduaClient({
LOGIN_TOKEN:"eyJhbGciOi...",
})
api_name = "查询设备";
let query_param = {
limit:20,
page:2,
where:{pkey:"a1eIYars0q4"}
}
let query_param = {
limit:20,
page:2,
where:{"unid[~]":"IMEI.%"}
}
const res_api = await xduaClient.qryDev(query_params)
if(res.error == 0){
console.log("测试成功");
}else{
console.log("测试失败");
console.log(res);
}
文档还没有实现
```
{% sample lang="php" -%}
文档还没有实现
```bash
8. 描述
回收设备。
9. 调用场景
管理员应开发者的要求,登录超级控制台后,查询到某个开发者下面的被删除的设备。然后回收。开发者刷新就可以看到了。为此,开发者要提供自己的uid和要回收的设备的名字。
10. 配置参数
参数意义参考接口参数
参数名 |
参数值 |
说明 |
Name |
RccDev |
|
URL |
https://api.xdua.com/dev |
|
Method |
PUT |
|
XduaApiHttpSchema |
HTTPS |
只走HTTPS |
XduaApiMethod |
RCC |
|
XduaApiColor |
X |
只有持有神设备,才可以创建设备 |
XduaApiAudience |
ConsoleX |
只有dev_id为ConsoleX的设备,也就是consolex.xdua.com才可以发起本请求 |
XduaApiShop |
XdUaXduA |
设备直辖店铺,只有这个店铺的登录人员才可以访问 |
XduaApiSubject |
i |
u表示除了允许匿名设备之外的所有设备访问 |
XduaApiRoles |
Zoon |
只要登录就可以创建设备 |
XduaApiResource |
dev |
|
XduaApiKparam |
id |
|
XduaApiAction |
RecycleDev |
|
XduaApiRule |
RecycleDev |
|
XduaApiAstates |
0 |
按序dev,zone,corp,shop,dev,dev,login的状态都必须是0(STATE_ENABLED) |
XduaApiEnable |
true |
接口使能 |
11. 请求参数
名称 |
位置 |
类型 |
必填 |
默认值 |
示例 |
说明 |
id |
path |
string |
是 |
|
rYub4wrT |
要删除的设备ID |
12. 返回参数
名称 |
位置 |
类型 |
示例 |
说明 |
id |
result |
string |
rYub4wrT |
删除的设备ID |
13. 错误码
14. 描述
修改设备信息。本接口是God可以访问的,God几乎可以修改Dev的所有属性。在未来,Dev的不重要属性可以被其它角色修改。
15. 调用场景
开发者登录超级控制台后,可以修改自己创建的设备。开发者以God角色修改设备。未来可能开放给专门的设备/设备运维。
16. 配置参数
参数意义参考接口参数
参数名 |
参数值 |
说明 |
Name |
SetDev |
|
URL |
https://api.xdua.com/devp |
|
Method |
PUT |
|
XduaApiHttpSchema |
HTTPS |
只走HTTPS |
XduaApiMethod |
SET |
|
XduaApiColor |
X |
只有持有神设备,才可以创建设备 |
XduaApiAudience |
ConsoleX |
只有devp_id为ConsoleX的设备,也就是consolex.xdua.com才可以发起本请求 |
XduaApiShop |
XdUaXduA |
设备直辖店铺,只有这个店铺的登录人员才可以访问 |
XduaApiSubject |
i |
i,只有创建者自己才可以修改 |
XduaApiRoles |
God |
只要登录就可以创建设备 |
XduaApiResource |
dev |
|
XduaApiKparam |
id |
|
XduaApiAction |
UpdateDev |
|
XduaApiRule |
UpdateDev |
|
XduaApiAstates |
0 |
按序devp,zone,corp,shop,devp,devp,login的状态都必须是0(STATE_ENABLED) |
XduaApiEnable |
true |
接口使能 |
17. 请求参数
名称 |
位置 |
类型 |
必填 |
默认值 |
示例 |
说明 |
id |
path |
String |
是 |
无 |
6tYu82hM |
设备ID |
unid |
body |
String |
否 |
无 |
Minew |
unid |
snid |
body |
String |
否 |
无 |
CBOX-7 |
snid |
name |
body |
String |
否 |
无 |
蓝牙网关 |
新的名字 |
18. 返回参数
名称 |
位置 |
类型 |
示例 |
说明 |
id |
result |
string |
rYub4wrT |
修改的设备ID |
updates |
result |
json dict |
|
修改的内容 |
示例
result字段
{
"id":"rYub4wrT",
"updates":{
"name":"新的设备名",
"brief":"新的设备介绍",
}
}
19. 错误码
错误码来自于error字段,通用错误码参考地球号通用错误码
20. SDK调用
为了方便测试SetDev
接口。数据库专门提供了一个测试设备devp_id=TeStTeSt
。可以对这个设备的所有属性进行修改,而不用担心损坏数据库。
const XduaClient = require('lovearth-xdua-browser-sdk')
const xduaClient = await XduaClient({
LOGIN_TOKEN:"eyJhbGciOi...",
})
/*----------------------------
- 运行如下代码
- 下面的代码是直接可以运行的
--------------------------/
api_name = "修改设备";
const devp_id ="TeStTeSt"; //要修改的设备ID
/*----------------------------
- 下面展示的是修改"TeStTeSt"所有属性的操作,实际上可以只修改其中任何一个到两个参数
--------------------------/
const dev_id ="TeStTeSt"; //一个测试产品
const set_params = {
unid:"VIR.TESTTEST", //类别
snid:"新的序列号", //类别
name:"新的名字", //类别
}
const res_api = await xduaClient.setDev(dev_id,set_params)
if(res.error == 0){
console.log("测试成功");
}else{
console.log("测试失败");
console.log(res);
}
</code></pre>
</div>
```
{% sample lang="php" -%}
文档还没有实现
</code></pre>
</div></div></div>
修改设备。
开发者登录[超级控制台](http://consolex.xdua.com)后,可以修改自己创建的设备。修改仅仅限于可以修改的name,brief等字段。
参数意义参考[接口参数](http://docapi.xdua.com/api/param.html)
|参数名 |参数值 |说明 |
|------ |------ |---- |
|Name |SetDev | |
|URL |https://api.xdua.com/dev| |
|Method |PUT | |
|XduaApiHttpSchema |HTTPS | 只走HTTPS|
|XduaApiMethod |SET | |
|XduaApiColor |X | 只有持有神设备,才可以创建设备 |
|XduaApiAudience |ConsoleX | 只有dev_id为ConsoleX的设备,也就是consolex.xdua.com才可以发起本请求|
|XduaApiShop |XdUaXduA | 设备直辖店铺,只有这个店铺的登录人员才可以访问|
|XduaApiSubject |i | i,只有创建者自己才可以修改|
|XduaApiRoles |Zoon | 只要登录就可以创建设备|
|XduaApiResource |dev | |
|XduaApiKparam |id | |
|XduaApiAction |UpdateDev | |
|XduaApiRule |UpdateDev | |
|XduaApiAstates |0 | 按序dev,zone,corp,shop,dev,dev,login的状态都必须是0(STATE_ENABLED) |
|XduaApiEnable |true | 接口使能 |
|名称 | 位置|类型 |必填 |默认值 |示例 |说明 |
|------- |-----|---------|--------|--------|--------|------------ |
|id |path |string |是 | |rYub4wrT|要修改的设备ID |
|name |body |string |否 | | |设备的名称,必须唯一,支持汉字、英文字母、数字、英文格式的下划线,必须以英文字母或汉字开头,4~32个字符 |
|avatar |body |string |否 | | |设备图标,不超过40个字符。|
|brief |body |string |否 | | |设备描述,不超过64个字符。|
|名称 | 位置|类型 |必填 |默认值 |示例 |说明 |
|------- |-----|---------|--------|-------- |-------- |------------ |
|user_id|path|String|用户m5d,登陆时获得|可选|
|oldpwd |body|String|旧设备,32位md5码|可选|
|pwd |body|String|新设备,32位md5码|可选|
|名称 | 位置 |类型 |示例 |说明 |
|------- |----- |-----------|------------|------------ |
|id |result |string |rYub4wrT |修改的设备ID |
|ipdates |result |json dict | |修改的内容 |
result字段
```json
{
"id":"rYub4wrT",
"updates":{
"name":"新的设备名",
"brief":"新的设备介绍",
}
}
21. 错误码
=0表示永远有效。如果大于0表示具体的utc时间。|>