设备端接收的错误码

本文介绍物联网平台可能返回给设备端的错误码及说明。

公共错误码

表 1. 通用公共错误码

错误码

原因

解决办法

400

处理请求时出错。

提交工单。

429

请求过于频繁,触发系统限流。

提交工单。

460

设备上报的数据为空,或参数格式错误、参数的数量超过限制等原因。

按照Alink协议下具体文档中的数据格式,检查参数信息。

500

系统发生未知异常。

提交工单。

5005

查询产品信息失败。

在物联网平台控制台,查询产品信息,核对ProductKey。

5244

查询LoRaWAN类型产品的元信息失败。

提交工单。

6100

查询设备信息时,未查询到指定设备信息。

在物联网平台控制台的设备管理中,核对设备信息。

6203

解析Topic时失败。

提交工单。

6250

查询产品信息失败。

在物联网平台控制台的查询产品信息,核对ProductKey。

6204

设备已被禁用,不能对设备进行操作。

在物联网平台控制台的设备管理中,查看设备状态。

6450

自定义/透传格式数据经过脚本解析为Alink标准格式数据后,无method

在物联网平台控制台的日志服务中,或设备本地日志中,检查设备上报的数据中是否有method参数。

6760

系统异常。

提交工单。

表 2. 数据解析公共错误码

错误码

原因

排查

26001

执行数据解析时,获取的脚本内容为空。

在物联网平台控制台,产品的数据解析页签下,确认脚本已提交。

说明

未提交的脚本不能被调用。

26002

脚本执行正常,但脚本内容有问题,如脚本中语法错误。

使用相同的数据测试脚本。查看具体的错误信息,修改脚本。建议在本地详细的自验后,再提交到物联网平台。

26006

脚本执行正常,脚本内容有误。脚本中,要求有protocolToRawDatarawDataToProtocol这两个服务。如果缺失,会报错。

在物联网平台控制台,产品的数据解析页签下,查询脚本内容中protocolToRawDatarawDataToProtocol服务是否存在。

26007

脚本执行正常,但返回结果不符合格式要求。 脚本中,要求有protocolToRawDatarawDataToProtocol这两个服务。protocolToRawData返回byte[]数组, rawDataToProtocol要求返回JSON对象。如果返回结果不符合这两种格式,会报这个错。

在物联网平台控制台或在本地测试脚本,并查看返回结果的格式是否符合要求。

26010

请求过于频繁,导致被限流。

提交工单。

表 3. TSL公共错误码

错误码

原因

排查

5159

TSL校验时,查询属性定义失败。

提交工单。

5160

TSL校验时,查询事件定义失败。

提交工单。

5161

TSL校验时,查询服务定义失败。

提交工单。

6207

设备上报的Alink数据格式,或者调用脚本解析后返回的数据格式,不是JSON格式。

请参见设备属性、事件、服务,查看对应数据格式,并按格式要求上报数据。

6300

method不存在。TSL校验时,设备上报的Alink(标准)格式数据,或自定义(透传)格式数据经过脚本转换后,没有Alink协议要求的method参数。

在物联网平台控制台的日志服务,或者设备的本地日志中,查看上报数据中是否有method参数。

6301

TSL校验时,发现定义的数据为array类型,但上报的数据不是array类型。

在物联网平台控制台,产品的功能定义页签下,查看产品的TSL中对应数据格式,并按格式要求上报数据。

6302

TSL校验服务的入参时,发现缺少必需的参数。

在物联网平台控制台,查看设备所属产品的功能定义,查询对应服务的入参,核对传入的参数。

6306

TSL校验时,发现:

  • 传入的参数类型和TSL中定义的类型不一致。

  • 传入的参数取值范围不符合功能定义时设置的参数范围。

在物联网平台控制台,查看设备所属产品的功能定义,核对传入的参数类型和取值范围。

6307

传入的参数不符合TSL中32位浮点数据的规范。TSL校验时,发现:

  • 传入的参数类型和TSL中定义的类型不一致。

  • 传入的参数取值范围不符合功能定义时设置的参数范围。

6308

传入的参数不符合TSL中布尔类型数据的规范。TSL校验时,发现:

  • 传入的参数类型和TSL中定义的类型不一致。

  • 传入的参数取值范围不符合功能定义时设置的参数范围。

6310

传入的参数不符合TSL中字符类型数据的规范。TSL校验时,发现:

  • 传入的参数类型和TSL中定义的类型不一致。

  • 传入的字符类型的参数长度超过限制。

6322

传入的参数不符合TSL中64位浮点数据的规范。TSL校验时,发现:

  • 传入的参数类型和TSL中定义的类型不一致。

  • 传入的参数取值范围不符合功能定义时设置的参数范围。

6304

TSL校验时,发现传入的参数在结构体中不存在。

在物联网平台控制台,查看设备所属产品的功能定义,核对传入的参数类型。

6309

传入的参数不符合TSL中枚举类型数据的规范。

6311

传入的参数不符合TSL中日期类型数据的规范。TSL校验时,发现:

  • 传入的参数类型和TSL中定义的类型不一致。

  • 传入的字符类型不是UTC时间戳的字符格式。

6312

传入的参数不符合TSL中结构体类型数据的规范。TSL校验时,发现:

  • 传入的参数类型和TSL中定义的类型不一致。

  • 结构体类型中参数的个数和TSL中定义不一致。

6320

查询设备的TSL时,没有查询到设备的属性信息。

在物联网平台控制台,查看设备所属产品的功能定义中是否存在该属性。若不存在,需增加属性定义。

6321

解析TSL时,发现属性、事件或者服务的标识符为空。

提交工单。

6317

TSL校验时,发现TSL中缺少关键信息,如typespecs为空。

提交工单。

6324

传入的数组类型的参数不符合规范。TSL校验时,发现:

  • 传入的数组类型的参数不符合TSL定义。

  • 数组中参数个数超过了TSL中定义的最大个数。

  • 在物联网平台控制台的产品详情中,查看设备所属产品的功能定义,检查对应数组的定义。

  • 查看设备上报的日志,检查设备上报的数据中数组内元素的个数。

6325

传入的数组类型参数中有不支持的元素类型。目前,数组中元素的类型只支持整型、32位浮点类型、64位浮点类型、字符串类型、结构体类型。

检查传入的数组元素类型是否是支持的类型。

6326

TSL校验时,检查上报的数据中time字段格式时报错。

请参见设备属性、事件、服务,查看对应数据格式,并按格式要求上报数据。

6328

TSL校验时,发现传入的参数不是数组类型。

在物联网平台控制台,查看设备所属产品的功能定义,核对传入的对应参数是否是数组类型。

6318

TSL解析时,系统异常。

提交工单。

6313

6329

6323

6316

6314

6301

设备接入Link SDK相关错误码

  • 设备使用MQTT开源库Paho接入物联网平台后,连接断开时,可以看到MQTT断开相关的错误日志和相关的错误码。具体信息,请参见错误码

  • 设备使用Java Link SDK连接至物联网平台时,可能返回给设备端错误码。详细说明,请参见错误码

设备身份注册相关错误码

  • 直连设备身份注册

    • 请求Topic:/sys/${productKey}/${deviceName}/thing/sub/register
    • 响应Topic:/sys/${productKey}/${deviceName}/thing/sub/register_reply

    错误码:460、5005、5244、500、6288、6100、6619、6292、6203

    以下为设备身份注册的特有错误码说明,其他错误码说明请参见公共错误码章节。

    错误码

    原因

    排查

    6288

    设备动态注册开关未打开。

    在物联网平台控制台,设备所属的产品详情页,开启设备动态注册。

    6619

    设备已绑定到其它网关下。

    在物联网平台控制台,该子设备的详情页,查看该设备是否已绑定网关。

  • 直连设备一型一密动态注册

    错误码:460、6250、6288、6600、6289、500、6292

    以下为直连设备一型一密动态注册的特有错误码说明,其他错误码说明请参见公共错误码章节。

    错误码

    原因

    排查

    6288

    设备动态注册开关未打开。

    在物联网平台控制台,设备所属的产品详情页,开启设备动态注册。

    6292

    校验签名时,发现传入的签名方法不支持。

    请使用设备身份注册signMethod支持的签名方法。

    6600

    签名校验失败。

    请按照设备身份注册中的签名方法计算签名,并校验签名。

    6289

    一型一密动态注册直连设备时,发现设备已激活。

    在物联网平台控制台的设备管理中,查看该设备的状态。

设备拓扑关系相关错误码

  • 添加设备拓扑关系

    • 请求Topic:/sys/${productKey}/${deviceName}/thing/topo/add
    • 响应Topic:/sys/${productKey}/${deviceName}/thing/topo/add_reply

    错误码:460、429、6402、6100、401、6204、6400、6203

    以下为添加设备拓扑关系的特有错误码说明,其他错误码说明请参见公共错误码章节。

    错误码

    原因

    排查

    401

    添加拓扑关系时,校验签名信息失败。

    请按照管理拓扑关系中的签名方法计算签名,并校验。

    6402

    网关与子设备是同一个设备。添加拓扑关系时,不能把当前网关作为子设备添加到当前网关下。

    检查添加的子设备信息,是否有子设备信息和网关信息一致。

    6400

    为网关添加的子设备数量超过限制。

    请参见使用限制,查看相关限制,并在物联网平台控制台,该网关设备的子设备管理页签下,查看已有子设备数量。

  • 删除拓扑关系

    • 请求Topic:/sys/${productKey}/${deviceName}/thing/topo/delete
    • 响应Topic:/sys/${productKey}/${deviceName}/thing/topo/delete_reply

    错误码:460、429、6100、6401、6203

    以下为删除设备拓扑关系的特有错误码说明,其他错误码说明请参见公共错误码章节。

    错误码

    原因

    排查

    6401

    检查拓扑关系时,拓扑关系不存在。

    在物联网平台控制台设备管理,网关设备的设备详情子设备管理页签中,查看子设备信息。

  • 获取拓扑关系

    • 请求Topic:/sys/${productKey}/${deviceName}/thing/topo/get
    • 响应Topic:/sys/${productKey}/${deviceName}/thing/topo/get_reply

    错误码:460、429、500、6203

    错误码说明,请参见本文公共错误码章节。

  • 网关上报发现子设备

    • 请求Topic:/sys/${productKey}/${deviceName}/thing/list/found
    • 响应Topic:/sys/${productKey}/${deviceName}/thing/list/found_reply

    错误码:460、500、6250、6280、6203

    以下为特有错误码说明,其他错误码说明请参见公共错误码章节。

    错误码

    原因

    排查

    6280

    网关上报的子设备名称不符合规范。设备名称字符仅支持中文汉字、英文字母、数字和下划线(_),长度范围4~32个字符,一个中文汉字算两个字符。

    检查上报的设备名称是否符合规范。

子设备上下线相关错误码

  • 子设备上线

    接收消息的网关Topic:/ext/session/${productKey}/${deviceName}/combine/login_reply

    错误码:460、429、6100、6204、6287、6401、500、9241、9240

  • 子设备主动下线异常

    接收消息的网关Topic:/ext/session/${productKey}/${deviceName}/combine/logout_reply

    错误码:460、520、500

  • 子设备被迫下线

    接收消息的网关Topic:/ext/error/${productKey}/${deviceName}

    错误码:427、521、522、6401

  • 子设备发送消息失败

    接收消息的网关Topic:/ext/error/${productKey}/${deviceName}

    错误码:520

  • 网关代理子设备批量上报消息失败

    接收消息的网关Topic:/sys/${productKey}/${deviceName}/proxy/batch_post_reply

    错误码:9242

以下为设子设备上、下线相关的特有错误码说明,其他错误码说明请参见公共错误码章节。

错误码

原因

排查

427

设备证书信息被其他设备使用,使设备被迫下线。

物联网平台仅以设备证书信息(productKey、deviceName、deviceSecret)来判断设备。

  • 多个设备上烧录了相同的设备证书。

  • 设备端网络或电源不稳定,发生了瞬间断网或断电重连。这种情况下,设备与物联网平台是连接的,不影响设备使用。

  • 在物联网平台控制台设备的设备详情页,查看设备的上线时间,以此判断是否有其他设备使用相同的设备证书接入物联网平台。

  • 排查网络环境是否稳定

428

单个网关下子设备数目超过最大值。

限制说明,请参见使用限制的网关与子设备

请检查网关设备下的子设备数量。

521

设备已被删除。

在物联网平台控制台的设备管理页搜索设备,确认设备是否已被删除。

522

设备已被禁用。

在物联网平台控制台的设备管理页查看设备状态。

520

子设备会话错误。

  • 子设备会话不存在,可能子设备没有上线,也可能已经被下线。

  • 子设备会话在线,但是并不是通过当前网关会话上线的。

6287

按照产品或者设备的密钥校验签名失败。

请参见子设备上下线中的签名方法计算签名,并校验。

1914

单个批量上下线请求中,包含的子设备数量超过限制(5个)。

检查子设备批量上下线数量是否超过阈值。

1913

网关离线导致子设备被云端自动离线。

根据日志服务查询网关离线原因。

9242

一个批量上报消息请求中,网关代理子设备批量上报的消息条数超出限制(50条)。

检查子设备批量上报的消息条数是否超过阈值。

9241

网关代理子设备上线请求中,在线设备不能修改连接的设备类型。

连接的设备类型说明,请参见MQTT客户端直连中的conntype

检查网关设备和子设备是否已在线。

9240

一个批量上下线请求中,状态相关网关设备下子设备数量超出限制(10,000)。

检查子设备批量上下线数量是否超过阈值。

设备属性、事件、服务相关错误码

  • 设备上报属性

    • 透传数据格式:

      • 请求Topic:/sys/${productKey}/${deviceName}/thing/model/up_raw

      • 响应Topic:/sys/${productKey}/${deviceName}/thing/model/up_raw_reply

    • Alink数据格式:

      • 请求Topic:/sys/${productKey}/${deviceName}/thing/event/property/post

      • 响应Topic:/sys/${productKey}/${deviceName}/thing/event/property/post_reply

    错误码:460、500、6250、6203、6207、6313、6300、6320、6321、6326、6301、6302、6317、6323、6316、6306、6307、6322、6308、6309、6310、6311、6312、6324、6328、6325、6200、6201、26001、26002、26006、26007

    以下为上报属性的特有错误码说明,其他错误码说明请参见公共错误码章节。

    错误码

    原因

    排查

    6106

    上报的属性数据过多。设备一次上报的有效属性个数不能超过200个。

    在物联网平台控制台,监控运维 > 日志服务中,或设备本地的日志中,检查上报的属性个数。

  • 设备上报事件

    • 透传数据格式:

      • 请求Topic:/sys/${productKey}/${deviceName}/thing/model/up_raw

      • 响应Topic:/sys/${productKey}/${deviceName}/thing/model/up_raw_reply

    • Alink格式数据:

      • 默认模块

        • 请求Topic:/sys/${productKey}/${deviceName}/thing/event/${tsl.event.identifier}/post

        • 响应Topic:/sys/${productKey}/${deviceName}/thing/event/${tsl.event.identifier}/post_reply

      • 自定义模块:

        • 请求Topic:/sys/${productKey}/${deviceName}/thing/event/${tsl.functionBlockId}:${tsl.event.identifier}/post

        • 响应Topic:/sys/${productKey}/${deviceName}/thing/event/${tsl.functionBlockId}:${tsl.event.identifier}/post_reply

    错误码:460、500、6250、6203、6207、6313、6300、6320、6321、6326、6301、6302、6317、6323、6316、6306、6307、6322、6308、6309、6310、6311、6312、6324、6328、6325、6200、6201、26001、26002、26006、26007

    错误码说明,请参见本文公共错误码章节。

  • 网关批量上报子设备数据

    • 透传数据格式:

      • 请求Topic:/sys/${productKey}/${deviceName}/thing/model/up_raw

      • 响应Topic:/sys/${productKey}/${deviceName}/thing/model/up_raw_reply

    • Alink格式数据:

      • 请求Topic:/sys/${productKey}/${deviceName}/thing/event/property/pack/post

      • 响应Topic:/sys/${productKey}/${deviceName}/thing/event/property/pack/post_reply

    错误码:460、6401、6106、6357、6356、6100、6207、6313、6300、6320、6321、6326、6301、6302、6317、6323、6316、6306、6307、6322、6308、6309、6310、6311、6312、6324、6328、6325、6200、6201、26001、26002、26006、26007

    以下为网关批量上报子设备数据失败的特有错误码说明,其他错误码说明请参见公共错误码章节。

    错误码

    原因

    排查

    6401

    拓扑关系不存在。

    在物联网平台控制台,网关设备的子设备管理页签下,确认其子设备信息。

    6106

    上报的属性数据过多。设备一次上报的有效属性个数不能超过200个。

    在物联网平台控制台,监控运维 > 日志服务中,或设备本地的日志中,检查上报的属性个数。

    6357

    子设备数据过多。网关代替子设备上报数据,一次上报最多可包含20个子设备的数据。

    查看设备本地日志中的上报数据。

    6356

    上报的事件数据过多。网关代替子设备上报数据,一次上报的事件个数不可超过200。

    查看设备本地的日志中的上报数据。

设备期望属性值相关错误码

  • 设备获取期望属性值

    • 请求Topic:/sys/${productKey}/${deviceName}/thing/property/desired/get
    • 响应Topic:/sys/${productKey}/${deviceName}/thing/property/desired/get_reply

    错误码:460、6104、6661、500

    以下为设备期望属性值操作失败的特有错误码说明,其他错误码说明请参见公共错误码章节。

    错误码

    原因

    排查

    6104

    请求中包含的属性个数过多。一次请求可包含的属性个数不能超过200个。

    在物联网平台控制台,监控运维 > 日志服务中,或者设备本地日志中,查看上报数据中的属性个数。

    6661

    查询期望属性失败。系统异常。

    提交工单排查。

  • 设备清空期望属性值

    • 请求Topic:/sys/${productKey}/${deviceName}/thing/property/desired/delete
    • 响应Topic:/sys/${productKey}/${deviceName}/thing/property/desired/delete_reply

    错误码:460、6104、6661、500、6207、6313、6300、6320、6321、6326、6301、6302、6317、6323、6316、6306、6307、6322、6308、6309、6310、6311、6312、6324、6328、6325

设备标签相关错误码

  • 设备上报标签信息

    • 请求Topic:/sys/${productKey}/${deviceName}/thing/deviceinfo/update
    • 响应Topic:/sys/${productKey}/${deviceName}/thing/deviceinfo/update_reply

    错误码:460、6100

  • 设备删除标签信息

    • 请求Topic:/sys/${productKey}/${deviceName}/thing/deviceinfo/delete
    • 响应Topic:/sys/${productKey}/${deviceName}/thing/deviceinfo/delete_reply

    错误码:460、500

获取TSL模板相关错误码

  • 请求Topic:/sys/${productKey}/${deviceName}/thing/dsltemplate/get

  • 响应Topic:/sys/${productKey}/${deviceName}/thing/dsltemplate/get_reply

错误码:460、5159、5160、5161

设备请求升级包信息相关错误码

  • 请求Topic:/sys/${productKey}/${deviceName}/thing/ota/firmware/get

  • 响应Topic:/sys/${productKey}/${deviceName}/thing/ota/firmware/get_reply

错误码:429、9112、500

以下为设备请求升级包信息的特有错误码,其他错误码,请参见公共错误码章节。

错误码

原因

排查

9112

未查询到指定的设备信息。

在物联网平台控制台的设备管理中,确认设备信息是否正确。

设备请求配置信息相关错误码

  • 请求Topic:/sys/${productKey}/${deviceName}/thing/config/get
  • 响应Topic:/sys/${productKey}/${deviceName}/thing/config/get_reply

错误码:460、500、6713、6710

以下为设备请求配置信息的特有错误码,其他错误码,请参见公共错误码章节。

错误码

原因

排查

6713

远程配置服务不可用。该产品的远程配置开关未打开。

在物联网平台控制台,监控运维 > 远程配置中,打开该产品的远程配置开关。

6710

未查询到远程配置信息。

在物联网平台控制台,监控运维 > 远程配置中,查看是否为该产品编辑了远程配置文件。

设备自定义任务相关错误码

  • 设备获取自定义任务详情

    • 请求Topic:/sys/${productKey}/${deviceName}/thing/job/get
    • 响应Topic:/sys/${productKey}/${deviceName}/thing/job/get_reply

    错误码:71012、71034、71035

  • 设备更新任务下作业状态

    • 请求Topic:/sys/${productKey}/${deviceName}/thing/job/update
    • 响应Topic:/sys/${productKey}/${deviceName}/thing/job/update_reply

    错误码:71018、71019、71034、71035

错误码

原因

排查

71012

设备获取任务详情中,发起请求的数据格式不是JSON格式。

请参见获取设备任务详情,查看正确的数据格式,并按照数据格式上报请求。

71018

任务已处于以下任一状态:

  • 已完成

  • 已超时

  • 取消中

  • 已取消

  • 删除中

在物联网平台控制台的设备管理 > 任务的任务列表中,确认目标任务的状态。

71019

任务下作业的ID不存在。

在物联网平台控制台的设备管理 > 任务页面,进入目标任务的任务详情 > 作业概览页签,确认作业ID是否存在。

71034

任务下作业ID不属于当前设备。

在物联网平台控制台的设备管理 > 任务页面,进入目标任务的任务详情 > 作业概览页签,确认当前设备是否包含该作业ID。

71035

  • 获取任务详情时,请求数据中任务ID不是自定义任务的ID。

  • 任务下作业已处于最终状态:

    • REMOVED:已删除

    • TIMED_OUT:已超时

    • FAILED:失败

    • SUCCEEDED:成功

    • CANCELLED:已取消

    • REJECTED:已拒绝

在物联网平台控制台的设备管理 > 任务页面,进入目标任务的任务详情页面:

  • 任务信息页签,确认当前任务的任务类型是否为自定义任务

  • 作业概览页签,确认目标作业的状态。

设备上传文件相关错误码

上传文件的数据格式和参数说明,请参见文件上传

  • 设备请求上传文件

    • 请求Topic:/sys/${productKey}/${deviceName}/thing/file/upload/mqtt/init
    • 响应Topic:/sys/${productKey}/${deviceName}/thing/file/upload/mqtt/init_reply

    错误码:78117、78123、78124、78125

  • 设备上传文件分片

    • 请求Topic:/sys/${productKey}/${deviceName}/thing/file/upload/mqtt/send
    • 响应Topic:/sys/${productKey}/${deviceName}/thing/file/upload/mqtt/send_reply

    错误码:78118、78119、78120、78121、78122、78124、78125、78126

错误码

原因

排查

78117

设备请求上传文件的大小超出最大限制(16 MB)。

确认待上传文件大小是否符合要求。

78118

设备上传文件分片的大小超出最大限制(128 KB)。

确认上传文件的分片大小是否符合要求。详细信息 ,请参见上传文件

78120

设备上传文件分片的大小不满足最小限制(256 B)。

78119

设备上传后续文件分片时的offset值,与实际已上传到物联网平台云端的文件大小不一致。

确认设备上传文件分片时的offset的值是否正确。

78121

设备上传文件分片时,当前文件分片的文件完整性校验失败。

根据CRC算法校验的错误信息,排查原因。

78122

设备上传文件的任务不存在。

确认上传文件的标识ID是否正确或存在。

78123

同名文件已存在。

确认设备端设置的文件处理策略,是否支持上传同名文件。详细信息 ,请参见上传文件

78124

文件上传任务已经完成。

重要

针对已完成上传的文件,设备端不能再进行上传文件分片和取消文件上传任务的操作。

确认物联网平台是否已存在上传的文件,具体操作,请参见查看文件

78125

文件完整性校验失败。

确认物联网平台云端计算的文件完整性校验值,是否与设备上传文件时的完整性校验值相同。

78126

设备端并行上传了文件的同一分片数据。

确认设备端是否收到当前分片数据的响应消息后,再发送的下一个分片数据。