更新时间:2022-02-24 GMT+08:00

修改设备信息

典型场景

第三方应用在物联网平台注册设备后,若设备的基本信息发生变更,也可调用此接口在物联网平台修改设备的信息。

接口功能

支持第三方应用修改设备的基本信息,包括设备类型、设备模型、厂商信息、接入协议等。

接口描述

1
public function  modifyDeviceInfo($mdiInDto, $deviceId, $appId, $accessToken)

接口所属类

DeviceManagement

参数说明

参数

必选/可选

位置

描述

$mdiInDto

必选

body

见下表ModifyDeviceInforInDTO的描述。

$deviceId

必选

path

设备ID,用于唯一标识一个设备,在注册设备时由物联网平台分配获得。

$appId

必选

query

如果是本应用的设备,此参数值可以填写null,否则填写授权应用的appId。

$accessToken

必选

header

填写鉴权接口获取的accessToken。

ModifyDeviceInforInDTO

参数

必选/可选

位置

描述

$customFields

可选

body

自定义字段CustomField列表,用户可设置自定义字段。

$deviceConfig

可选

body

设备配置信息,具体参见DeviceConfigDTO结构体。

$deviceType

可选

body

设备类型,大驼峰命名方式,例如:MultiSensor、ContactSensor、CameraGateway。

在NB-IoT方案中,注册设备后必须修改deviceType,且要与profile中定义的保持一致。

$endUser

可选

body

终端用户,若为直连设备,则endUser可选;若为非直连设备,则endUser可以为null。

$location

可选

body

设备位置。

$manufacturerId

可选

body

厂商ID,唯一标识一个厂商。

在NB-IoT方案中,注册设备后必须修改manufacturerId,且要与profile中定义的保持一致。

$manufacturerName

可选

body

厂商名称。

$model

可选

body

设备型号。

在NB-IoT方案中,注册设备后必须修改model,且要与profile中定义的保持一致。

$mute

可选

body

表示设备是否处于冻结状态,即设备上报数据时,平台是否会管理和保存。

  • “TRUE”:冻结状态
  • “FALSE”:非冻结状态

$name

可选

body

设备名称。

$organization

可选

body

设备所属的组织信息。

$protocolType

可选

body

设备使用的协议类型,当前支持的协议类型:CoAP,huaweiM2M,Z-Wave,ONVIF,WPS,Hue,WiFi,J808,Gateway,ZigBee,LWM2M。

$region

可选

body

设备区域信息。

$timezone

可选

body

设备所在时区信息,使用时区编码,如北京时区对应的时区编码为Asia/Beijing。

$imsi

可选

body

NB-IoT终端的IMSI。

$ip

可选

body

设备的IP地址。

$isSecure

可选

body

指定设备的安全状态,默认值为“false”

  • “true”:安全
  • “false”:非安全

$psk

可选

body

psk参数,取值范围是“a-f、A-F、0-9”组成的字符串。

$tags

可选

body

设备的标签信息Tag2列表。

CustomField:

参数

必选/可选

位置

描述

fieldName

可选

Body

字段名字。

fieldType

可选

Body

字段类型。

fieldValue

可选

Body

字段值。

DeviceConfigDTO 结构体说明:

参数

必选/可选

描述

$dataConfig

可选

数据配置信息,具体参见DataConfigDTO 结构体。

DataConfigDTO 结构体说明:

参数

必选/可选

字段类型

描述

$dataAgingTime

可选

Integer

数据老化时长,取值范围:0-90,单位:天。

Tag2:

参数

必选/可选

类型

位置

描述

tagName

必选

String(1-128)

body

标签名称。

tagValue

必选

String(1-1024)

body

标签值。

tagType

可选

Integer

body

标签类型。

返回值

response:
Status Code: 200 OK

错误码

Http状态码

错误码

错误描述

说明

200

100203

The application is not existed.

应用不存在。

处理建议:

  • 请检查HTTP请求头域中携带的appId是否有误。
  • 请检查请求路径(url)中传入的appId是否有误。

400

100022

The input is invalid.

输入参数无效。

处理建议:请检查接口调用请求中携带参数的合法性。

400

100440

The isSecure is invalid.

isSecure参数值有误。

400

50400

The input is invalid.

输入参数无效。

处理建议:请检查接口调用请求中携带参数的合法性。

403

100203

The application is not existed.

应用不存在。

处理建议:

  • 请检查HTTP请求头域中携带的appId是否有误。
  • 请检查请求路径(url)中传入的appId是否有误。

403

100217

The application hasn't been authorized.

应用未被授权。

处理建议:若非应用授权场景,请确认请求参数中的appId为空。

403

1010009

app throttle exceed.

应用调用接口过于频繁,超过流控值(默认值是100次/60s)。

处理建议:联系物联网平台维护人员调大流控阈值或者控制接口的调用频率。

403

1010005

App_key or access_token is invalid.

错误的token信息。

处理建议:请检查接口请求中所携带的accessToken是否有误。

403

500004

The amount of frozen devices has reached the limit.

被冻结设备已达到上限。

404

100403

The device is not existed.

设备不存在。

处理建议:物联网平台未找到deviceId对应的设备,请检查deviceId是否有误。

404

100418

The deviceData is not existed.

设备信息不存在。

处理建议:

  • 请求参数中携带的deviceId错误。请确认该deviceId是否属于该appId或者deviceId是否写错。
  • Header中携带的appId有误,请确认该appId下是否有该deviceId。
  • 如果URL中携带了可选参数appId,请检查该appId是否有误。

500

100203

The application is not existed.

应用不存在。

处理建议:

  • 请检查HTTP请求头域中携带的appId是否有误。
  • 请检查请求路径(url)中传入的appId是否有误。

500

100441

The amount of nonSecure device has reached the limit.

非安全设备数量已达到上限。

500

50252

Internal server error.

服务器运行内部错误。

处理建议:物联网平台内部错误,请联系物联网平台维护人员处理。