华为云用户手册

  • 响应参数 状态码: 201 表4 响应Body参数 参数 参数类型 描述 certificate_id String CA证书ID,在上传CA证书时由平台分配的唯一标识。 cn_name String CA证书CN名称。 owner String CA证书所有者。 status Boolean CA证书验证状态。true代表证书已通过验证,可进行设备证书认证接入。false代表证书未通过验证。 verify_code String CA证书验证码。 provision_enable Boolean 是否开启自注册能力,当为true时该功能必须配合预调配功能使用,true:是,false:否。 template_id String 绑定的预调配模板ID。 create_date String 创建证书日期。格式:yyyyMMdd'T'HHmmss'Z',如20151212T121212Z。 effective_date String CA证书生效日期。格式:yyyyMMdd'T'HHmmss'Z',如20151212T121212Z。 expiry_date String CA证书失效日期。格式:yyyyMMdd'T'HHmmss'Z',如20151212T121212Z。
  • 请求示例 上传设备CA证书。 POST https://{endpoint}/v5/iot/{project_id}/certificates { "content" : "-----BEGINCERTIFICATE-----\nMIID2TCCAsGgAwIBAgIJAOEDEgVdVMn9MA0G CS qGSIb3DQEBCwUAMIGCMQswCQYD\nVQQGEwJDTjERMA8GA1UECAwIR3VhbmRvbmcxETAPBgNVBAcMCFNoZW56aGVuMQ8w\nDQYDVQQKDAZIdWF3ZWkxDDAKBgNVBAsMA2lvdDESMBAGA1UEAwwJMTIzNDU2Nzg5\nMRowGAYJKoZIhvcNAQkBFgtkamthQHFxLmNvbTAeFw0xOTEyMTkxMzE1MjZaFw0y\nMjEwMDgxMzE1MjZaMIGCMQswCQYDVQQGEwJDTjERMA8GA1UECAwIR3VhbmRvbmcx\nETAPBgNVBAcMCFNoZW56aGVuMQ8wDQYDVQQKDAZIdWF3ZWkxDDAKBgNVBAsMA2lv\ndDESMBAGA1UEAwwJMTIzNDU2Nzg5MRowGAYJKoZIhvcNAQkBFgtkamthQHFxLmNv\nbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM72QUzoadvLfxGjt3UF\noZ4MJbblqnRbouO4KpOVHBXyS2yQVl4CWWMhLh4pp2efNUSqKuXHjY3r68PquyNn\nYk8zO59zVc7JHvjGkBvo7DgPRAhEKPLJIpRzkmlCBbxwTNCjc3FovGb/sHHNlpGn\ncCKUzMfPGNZuBiuemskuEXL/eMHxDPbXYWn4Wq0wt+28PKUL5jybY7nsXSNnmAPF\nTO0CAmq0meUukubT/jHDCQ78ihQ/iqw1RNq88aCqRleoHiGg5nWkjL+05GXqUrqV\nVnZNL+YqcXzuVMs5XgyhNM2AsuH2g3D8ZuF6Dj9qY1n/v/Cp/DGpxP3A74SlplnF\nD/0CAwEAAaNQME4wHQYDVR0OBBYEFAVPWVtpTdO6KQnmVrrNlMguWNR7MB8GA1Ud\nIwQYMBaAFAVPWVtpTdO6KQnmVrrNlMguWNR7MAwGA1UdEwQFMAMBAf8wDQYJKoZI\nhvcNAQELBQADggEBAE40ViqK+UaEn++Xq6f4Cmeg3JqYHu47v9RIAASNihYRBQ/r\n3RE7Af3GqjIO5nMJJuCMzdcoAU8N9KwkgXD+GLR9fYLEoEmq5CrhgaGDsCi85vCs\nmWhj5z8r5TG207xpmvH2KT447dnG+chMBE594ma85dCv+0mCDrqNToElipgT8+rY\nAYVClnIt3kbsTg1vSRNHadd+TpgRVxJZBF0fHcCAyc/2f3UJgPYNWShIetHM6BdI\n3fZ4H+eeHPjagm5kzmffli1cUv2/N+1hKUvcI4uFCqEwZRFtp90RyIbxUfQwi+Cs\nXVnwV+BZS5qD9bTcfxZMXhuVRwO/5xWYMYPN1uY=\n-----END CERTIFICATE-----", "app_id" : "jeQDJQZltU8iKgFFoW060F5SGZka" }
  • 响应示例 状态码: 201 Created { "certificate_id" : "string", "cn_name" : "string", "owner" : "string", "status" : true, "verify_code" : "string", "create_date" : "20191212T121212Z", "effective_date" : "20191212T121212Z", "expiry_date" : "20221212T121212Z", "provision_enable" : true, "template_id" : "61c970ce2d63eb6ee655dbf0" }
  • 请求示例 批量任务状态变更通知示例: 批量任务状态变更通知 { "resource" : "batchtask", "event" : "update", "event_time" : "20151212T121212Z", "event_time_ms" : "2015-12-12T12:12:12.000Z", "request_id" : "3fe58d5e-8697-4849-a165-7db128f7e776", "notify_data" : { "body" : { "status_desc" : "status_desc", "task_id" : "1a7ffc5c-d89c-44dd-8265", "task_type" : "softwareUpgrade", "app_id" : "1a7ffc5c-d89c-44dd-8265-b1653d951ce0", "status" : "Waitting" } } }
  • 请求参数 表1 请求Body参数 参数 是否必选 参数类型 描述 resource 是 String 参数说明:订阅的资源名称,取值为batchtask。 event 是 String 参数说明:订阅的资源事件,取值为update。 event_time 是 String 参数说明:资源事件生成时间,格式:yyyyMMdd'T'HHmmss'Z' UTC字符串,如:20151212T121212Z。若需要显示本地时区,您需要自己进行时间转换。 event_time_ms 否 String 参数说明:资源事件生成时间,格式:yyyy-MM-dd'T'HH:mm:ss.SSS'Z' UTC字符串,如:2015-12-12T12:12:12.000Z。若需要显示本地时区,您需要自己进行时间转换。 request_id 否 String 参数说明:消息ID,由设备侧指定或平台生成,用于跟踪业务流程。 notify_data 是 BatchTaskUpdateNotifyData object 参数说明:设备的自定义字段列表。 表2 BatchTaskUpdateNotifyData 参数 是否必选 参数类型 描述 body 是 BatchTaskUpdate object 参数说明:推送消息body。 表3 BatchTaskUpdate 参数 是否必选 参数类型 描述 app_id 是 String 参数说明:应用ID。 task_id 是 String 参数说明:批量任务ID。调用创建批量任务接口时返回的任务ID。 task_type 是 String 参数说明:任务类型。 firmwareUpgrade:固件升级 softwareUpgrade:软件升级 status 是 String 参数说明:任务状态。 Waitting 任务正在被等待执行 Processing 任务正在执行 Success 任务成功 PartialSuccess 任务部分成功 Fail 任务失败 Stopped 任务被停止 status_desc 是 String 参数说明:任务状态描述。
  • 响应示例 状态码: 200 OK { "device_id" : "c1224afb-e9f0-4916-8220-b6bab568e888", "command_id" : "b1224afb-e9f0-4916-8220-b6bab568e888", "service_id" : "Switch", "command_name" : "ON_OFF", "paras" : { "value" : "ON" }, "expire_time" : 0, "send_strategy" : "immediately", "created_time" : "20151212T121212Z", "status" : "DELIVERED", "result" : { "code" : 200 }, "sent_time" : "20151212T121212Z", "delivered_time" : "20151212T121212Z", "response_time" : "20151212T131312Z" }
  • URI GET /v5/iot/{project_id}/devices/{device_id}/async-commands/{command_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 参数说明:项目ID。获取方法请参见 获取项目ID 。 device_id 是 String 参数说明:下发命令的设备ID,用于唯一标识一个设备,在注册设备时由 物联网平台 分配获得。 取值范围:长度不超过128,只允许字母、数字、下划线(_)、连接符(-)的组合。 command_id 是 String 参数说明:下发命令的命令id,用于唯一标识一个消息,在下发命令时由物联网平台分配获得。 取值范围:长度不超过100,只允许字母、数字、下划线(_)、连接符(-)的组合。
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 device_id String 设备ID,用于唯一标识一个设备,在注册设备时由物联网平台分配获得。 command_id String 设备命令ID,用于唯一标识一条命令,在下发设备命令时由物联网平台分配获得。 service_id String 设备命令所属的设备服务ID,在设备关联的产品模型中定义。 command_name String 设备命令名称,在设备关联的产品模型中定义。 paras Object 设备执行的命令,Json格式,里面是一个个健值对,如果service_id不为空,每个健都是profile中命令的参数名(paraName);如果service_id为空则由用户自定义命令格式。设备命令示例:{"value":"1"},具体格式需要应用和设备约定。 expire_time Integer 物联网平台缓存命令的时长, 单位秒。 status String 下发命令的状态。 ·PENDING表示未下发,在物联网平台缓存着 ·EXPIRED表示命令已经过期,即缓存的时间超过设定的expire_time ·SENT表示命令正在下发 ·DELIVERED表示命令已送达设备 ·SUC CES SFUL表示命令已经成功执行 ·FAILED表示命令执行失败 ·TIMEOUT表示命令下发之后,没有收到设备确认或者响应结果一定时间后超时 result Object 设备命令执行的详细结果,由设备返回,Json格式。 created_time String 命令的创建时间,"yyyyMMdd'T'HHmmss'Z'"格式的UTC字符串。 sent_time String 物联网平台发送命令的时间,如果命令是立即下发, 则该时间与命令创建时间一致, 如果是缓存命令, 则是命令实际下发的时间。"yyyyMMdd'T'HHmmss'Z'"格式的UTC字符串。 delivered_time String 物联网平台将命令送达到设备的时间,"yyyyMMdd'T'HHmmss'Z'"格式的UTC字符串。 send_strategy String 下发策略, immediately表示立即下发,delay表示缓存起来,等数据上报或者设备上线之后下发。 response_time String 设备响应命令的时间,"yyyyMMdd'T'HHmmss'Z'"格式的UTC字符串。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 否 String 参数说明:用户Token。通过调用 IAM 服务 获取IAM用户Token接口获取,接口返回的响应消息头中“X-Subject-Token”就是需要获取的用户Token。简要的获取方法样例请参见 Token认证。 Instance-Id 否 String 参数说明:实例ID。物理多租下各实例的唯一标识,建议携带该参数,在使用专业版时必须携带该参数。您可以在IoTDA管理控制台界面,选择左侧导航栏“总览”页签查看当前实例的ID,具体获取方式请参考查看实例详情 。
  • 状态码 状态码如表1所示 表1 状态码 状态码 编码 错误码说明 100 Continue 继续请求。 这个临时响应用来通知客户端,它的部分请求已经被服务器接收,且仍未被拒绝。 101 Switching Protocols 切换协议。只能切换到更高级的协议。 例如,切换到HTTP的新版本协议。 201 Created 创建类的请求完全成功。 202 Accepted 已经接受请求,但未处理完成。 203 Non-Authoritative Information 非授权信息,请求成功。 204 NoContent 请求完全成功,同时HTTP响应不包含响应体。 在响应OPTIONS方法的HTTP请求时返回此状态码。 205 Reset Content 重置内容,服务器处理成功。 206 Partial Content 服务器成功处理了部分GET请求。 300 Multiple Choices 多种选择。请求的资源可包括多个位置,相应可返回一个资源特征与地址的列表用于用户终端(例如:浏览器)选择。 301 Moved Permanently 永久移动,请求的资源已被永久的移动到新的URI,返回信息会包括新的URI。 302 Found 资源被临时移动。 303 See Other 查看其它地址。 使用GET和POST请求查看。 304 Not Modified 所请求的资源未修改,服务器返回此状态码时,不会返回任何资源。 305 Use Proxy 所请求的资源必须通过代理访问。 306 Unused 已经被废弃的HTTP状态码。 400 BadRequest 非法请求。 建议直接修改该请求,不要重试该请求。 401 Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。 402 Payment Required 保留请求。 403 Forbidden 请求被拒绝访问。 返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 404 NotFound 所请求的资源不存在。 建议直接修改该请求,不要重试该请求。 405 MethodNotAllowed 请求中带有该资源不支持的方法。 建议直接修改该请求,不要重试该请求。 406 Not Acceptable 服务器无法根据客户端请求的内容特性完成请求。 407 Proxy Authentication Required 请求要求代理的身份认证,与401类似,但请求者应当使用代理进行授权。 408 Request Time-out 服务器等候请求时发生超时。 客户端可以随时再次提交该请求而无需进行任何更改。 409 Conflict 服务器在完成请求时发生冲突。 返回该状态码,表明客户端尝试创建的资源已经存在,或者由于冲突请求的更新操作不能被完成。 410 Gone 客户端请求的资源已经不存在。 返回该状态码,表明请求的资源已被永久删除。 411 Length Required 服务器无法处理客户端发送的不带Content-Length的请求信息。 412 Precondition Failed 未满足前提条件,服务器未满足请求者在请求中设置的其中一个前提条件。 413 Request Entity Too Large 由于请求的实体过大,服务器无法处理,因此拒绝请求。为防止客户端的连续请求,服务器可能会关闭连接。如果只是服务器暂时无法处理,则会包含一个Retry-After的响应信息。 414 Request-URI Too Large 请求的URI过长(URI通常为网址),服务器无法处理。 415 Unsupported Media Type 服务器无法处理请求附带的媒体格式。 416 Requested range not satisfiable 客户端请求的范围无效。 417 Expectation Failed 服务器无法满足Expect的请求头信息。 422 UnprocessableEntity 请求格式正确,但是由于含有语义错误,无法响应。 429 TooManyRequests 表明请求超出了客户端访问频率的限制或者服务端接收到多于它能处理的请求。建议客户端读取相应的Retry-After首部,然后等待该首部指出的时间后再重试。 500 InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。 501 Not Implemented 服务器不支持请求的功能,无法完成请求。 502 Bad Gateway 充当网关或代理的服务器,从远端服务器接收到了一个无效的请求。 503 ServiceUnavailable 被请求的服务无效。 建议直接修改该请求,不要重试该请求。 504 ServerTimeout 请求在给定的时间内无法完成。客户端仅在为请求指定超时(Timeout)参数时会得到该响应。 505 HTTP Version not supported 服务器不支持请求的HTTP协议的版本,无法完成处理。 父主题: 附录
  • 物联网平台支持的LwM2M对象资源 表1 资源路径 对象名 资源名 对应平台的功能 /rd?ep={nodeId} Device Register 设备连接 /3/0/3 Device Firmware Version 查询固件版本号 /4/0/0 Connectivity monitoring Network Bearer 识别设备接入网络类型 /4/0 Connectivity monitoring Network Signal Strength 查询信号强度 /4/0/8 Connectivity monitoring Cell ID 小区ID /5/0/1 Firmware Update Package URI 下发固件版本下载链接 /5/0/2 Firmware Update Update 通知固件升级 /5/0/3 Firmware Update State 固件升级状态通知 /5/0/5 Firmware Update Update Result 查询固件升级结果 /19/0/0 BinaryAppDataContainer Data 上行业务消息传输 /19/1/0 BinaryAppDataContainer Data 下行业务数据传输 BinaryAppDataContainer对象: 为简化设备厂商定义并使用LwM2M对象的复杂度,华为定义了19对象,由芯片或模组实现,设备只需要调用AT接口或函数接口来实现业务数据的收发,不需要关心LWM2M协议,参考此规范。
  • AT+HMCON 该指令用于设置MQTT协议连接参数。 指令 参数 参数缺省处理 AT响应结果 使用示例 AT+HMCON=bsmode,lifetime,serverip,serverport,deviceid,passwd,codec bsmode:0表示非bs模式,1表示bs模式。 默认值:0 - AT+HMCON=0,10,"iot-mqtts.cn-north-4.myhuaweicloud.com","8883","testID","testPasswd",0 lifetime:mqtt保持心跳时间,建议大于等于30。 默认值:300 +HMCON OK(连接成功) serverip: 设备接入服务 器地址或者BS服务器地址。 默认值:BS服务器地址 +HMCON ERR:code(连接失败,code表示失败原因码) serverport:设备接入服务器端口或者BS服务器端口。 默认值:MQ TTS 端口8883 - id:设备ID,最大长度256。 注册设备后获取 - pwd:设备密钥,最大长度256。 注册设备后获取 - codec:payload编码方式,0:原始编码,1:十六进制编码。 默认值:0 - 父主题: 模组AT指令参考
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 否 String 参数说明:用户Token。通过调用IAM服务 获取IAM用户Token接口获取,接口返回的响应消息头中“X-Subject-Token”就是需要获取的用户Token。简要的获取方法样例请参见 Token认证。 Instance-Id 否 String 参数说明:实例ID。物理多租下各实例的唯一标识,建议携带该参数,在使用专业版时必须携带该参数。您可以在IoTDA管理控制台界面,选择左侧导航栏“总览”页签查看当前实例的ID,具体获取方式请参考查看实例详情 。 最小长度:0 最大长度:36 表3 请求Body参数 参数 是否必选 参数类型 描述 type 否 String 参数说明:接入凭证类型,默认为AMQP的接入凭证类型。 取值范围: [AMQP,MQTT] 最小长度:0 最大长度:16 force_disconnect 否 Boolean 参数说明: 是否将AMQP/MQTT连接断开 缺省值:false
  • 响应示例 状态码: 200 Successful response { "products" : [ { "app_id" : "jeQDJQZltU8iKgFFoW060F5SGZka", "app_name" : "testAPP01", "product_id" : "5ba24f5ebbe8f56f5a14f605", "name" : "Thermometer", "device_type" : "Thermometer", "protocol_type" : "MQTT", "data_format" : "json", "manufacturer_name" : "ABC", "industry" : "smartCity", "description" : "this is a thermometer produced by Huawei", "create_time" : "20190303T081011Z" } ], "page" : { "count" : 10, "marker" : "5c90fa7d3c4e4405e8525079" } }
  • 请求参数 表3 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 否 String 参数说明:用户Token。通过调用IAM服务 获取IAM用户Token接口获取,接口返回的响应消息头中“X-Subject-Token”就是需要获取的用户Token。简要的获取方法样例请参见 Token认证。 Instance-Id 否 String 参数说明:实例ID。物理多租下各实例的唯一标识,建议携带该参数,在使用专业版时必须携带该参数。您可以在IoTDA管理控制台界面,选择左侧导航栏“总览”页签查看当前实例的ID,具体获取方式请参考查看实例详情 。
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 products Array of ProductSummary objects 产品信息列表。 page Page object 查询结果的分页信息。 表5 ProductSummary 参数 参数类型 描述 app_id String 资源空间ID。 app_name String 资源空间名称。 product_id String 产品ID,用于唯一标识一个产品,在物联网平台创建产品后由平台分配获得。 name String 产品名称。 device_type String 设备类型。 protocol_type String 设备使用的协议类型。取值范围:MQTT,CoAP,HTTP,HTTPS,Modbus,ONVIF, OPC-UA,OPC-DA,Other。 data_format String 设备上报数据的格式,取值范围:json,binary。 manufacturer_name String 厂商名称。 industry String 设备所属行业。 description String 产品的描述信息。 create_time String 在物联网平台创建产品的时间,格式:yyyyMMdd'T'HHmmss'Z',如20151212T121212Z。 表6 Page 参数 参数类型 描述 count Long 满足查询条件的记录总数。 marker String 本次分页查询结果中最后一条记录的ID,可在下一次分页查询时使用。
  • URI GET /v5/iot/{project_id}/products 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 参数说明:项目ID。获取方法请参见 获取项目ID 。 表2 Query参数 参数 是否必选 参数类型 描述 limit 否 Integer 参数说明:分页查询时每页显示的记录数。 取值范围:1-50的整数,默认值为10。 最小值:1 最大值:50 缺省值:10 marker 否 String 参数说明:上一次分页查询结果中最后一条记录的ID,在上一次分页查询时由物联网平台返回获得。分页查询时物联网平台是按marker也就是记录ID降序查询的,越新的数据记录ID也会越大。若填写marker,则本次只查询记录ID小于marker的数据记录。若不填写,则从记录ID最大也就是最新的一条数据开始查询。如果需要依次查询所有数据,则每次查询时必须填写上一次查询响应中的marker值。 取值范围:长度为24的十六进制字符串,默认值为ffffffffffffffffffffffff。 缺省值:ffffffffffffffffffffffff app_id 否 String 参数说明:资源空间ID。此参数为非必选参数,存在多资源空间的用户需要使用该接口时,可以携带该参数查询指定资源空间下的产品列表,不携带该参数则会查询该用户下所有产品列表。 取值范围:长度不超过36,只允许字母、数字、下划线(_)、连接符(-)的组合。 product_name 否 String 参数说明:产品名称。 取值范围:长度不超过64,只允许中文、字母、数字、以及_?'#().,&%@!-等字符的组合。 offset 否 Integer 参数说明:表示从marker后偏移offset条记录开始查询。当offset为0时,表示从marker后第一条记录开始输出。限制offset最大值是出于API性能考虑,您可以搭配marker使用该参数实现翻页,例如每页50条记录,1-11页内都可以直接使用offset跳转到指定页,但到11页后,由于offset限制为500,您需要使用第11页返回的marker作为下次查询的marker,以实现翻页到12-22页。 取值范围:0-500的整数,默认为0。 最小值:0 最大值:500 缺省值:0
  • URI DELETE /v5/iot/{project_id}/routing-rule/flowcontrol-policy/{policy_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 参数说明:项目ID。获取方法请参见 获取项目ID 。 policy_id 是 String 参数说明:数据流转流控策略id,用于唯一标识一个数据流转流控策略,在创建数据流转流控策略时由物联网平台分配获得。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 否 String 参数说明:用户Token。通过调用IAM服务获取IAM用户Token接口获取,接口返回的响应消息头中“X-Subject-Token”就是需要获取的用户Token。简要的获取方法样例请参见 Token认证。 Instance-Id 否 String 参数说明:实例ID。物理多租下各实例的唯一标识,一般华为云租户无需携带该参数,仅在物理多租场景下从管理面访问API时需要携带该参数。您可以在IoTDA管理控制台界面,选择左侧导航栏“总览”页签查看当前实例的ID。
  • AT+HMUNS 该指令用于取消订阅自定义主题。 指令 参数 参数缺省处理 AT响应结果 使用示例 AT+HMUNS=topic topic:自定义主题 自定义 +HMUNS OK when success +HMUNS ERR:code code:reference to en_oc_mqtt_err_code_t defines AT+HMUNS="$oc/devices/my_deviceid/user/my_subtopic" 父主题: 模组AT指令参考
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 否 String 参数说明:用户Token。通过调用IAM服务 获取IAM用户Token接口获取,接口返回的响应消息头中“X-Subject-Token”就是需要获取的用户Token。简要的获取方法样例请参见 Token认证。 Instance-Id 否 String 参数说明:实例ID。物理多租下各实例的唯一标识,建议携带该参数,在使用专业版时必须携带该参数。您可以在IoTDA管理控制台界面,选择左侧导航栏“总览”页签查看当前实例的ID,具体获取方式请参考查看实例详情 。
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 certificate_id String CA证书ID,在上传CA证书时由平台分配的唯一标识。 cn_name String CA证书CN名称。 owner String CA证书所有者。 status Boolean CA证书验证状态。true代表证书已通过验证,可进行设备证书认证接入。false代表证书未通过验证。 verify_code String CA证书验证码。 provision_enable Boolean 是否开启自注册能力,当为true时该功能必须配合预调配功能使用,true:是,false:否。 template_id String 绑定的预调配模板ID。 create_date String 创建证书日期。格式:yyyyMMdd'T'HHmmss'Z',如20151212T121212Z。 effective_date String CA证书生效日期。格式:yyyyMMdd'T'HHmmss'Z',如20151212T121212Z。 expiry_date String CA证书失效日期。格式:yyyyMMdd'T'HHmmss'Z',如20151212T121212Z。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 否 String 用户Token。通过调用IAM服务 获取IAM用户Token接口获取,接口返回的响应消息头中“X-Subject-Token”就是需要获取的用户Token。简要的获取方法样例请参见 Token认证。。 Instance-Id 否 String 实例ID。物理多租下各实例的唯一标识,建议携带该参数,在使用专业版时必须携带该参数。您可以在IoTDA管理控制台界面,选择左侧导航栏“总览”页签查看当前实例的ID,具体获取方式请参考查看实例详情 。 表3 请求Body参数 参数 是否必选 参数类型 描述 provision_enable 否 Boolean 是否开启自注册能力,当为true时该功能必须配合预调配功能使用,true:是,false:否。 template_id 否 String 预调配模板ID,该CA证书绑定的预调配模板id,当该字段传null时表示解除绑定关系。
  • 响应示例 状态码: 200 Successful response { "certificate_id" : "string", "cn_name" : "string", "owner" : "string", "status" : true, "verify_code" : "string", "provision_enable" : true, "template_id" : "61c970ce2d63eb6ee655dbf0", "create_date" : "20191212T121212Z", "effective_date" : "20191212T121212Z", "expiry_date" : "20221212T121212Z" }
  • URI DELETE /v5/iot/{project_id}/batchtask-files/{file_id} 表1 路径参数 参数 是否必选 参数类型 描述 file_id 是 String 参数说明:要删除的批量任务文件ID。 取值范围:长度不超过128,只允许字母、数字、下划线(_)、连接符(-)的组合。 最小长度:1 最大长度:128 project_id 是 String 参数说明:项目ID。获取方法请参见 获取项目ID 。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 否 String 参数说明:用户Token。通过调用IAM服务 获取IAM用户Token接口获取,接口返回的响应消息头中“X-Subject-Token”就是需要获取的用户Token。简要的获取方法样例请参见 Token认证。 Instance-Id 否 String 参数说明:实例ID。物理多租下各实例的唯一标识,建议携带该参数,在使用专业版时必须携带该参数。您可以在IoTDA管理控制台界面,选择左侧导航栏“总览”页签查看当前实例的ID,具体获取方式请参考查看实例详情 。 最小长度:1 最大长度:36
  • Topic定义 设备使用MQTT协议接入平台时,平台和设备通过Topic进行通信。平台预置的topic列表如下: Topic分类 Topic Publisher(发布者) Subscriber(订阅者) 用途 设备消息相关Topic $oc/devices/{device_id}/sys/messages/up 设备 平台 设备消息上报 $oc/devices/{device_id}/sys/messages/down 平台 设备 平台下发消息 设备命令相关Topic $oc/devices/{device_id}/sys/commands/request_id={request_id} 平台 设备 平台下发命令 $oc/devices/{device_id}/sys/commands/response/request_id={request_id} 设备 平台 设备返回命令响应 设备属性相关Topic $oc/devices/{device_id}/sys/properties/report 设备 平台 设备上报属性 $oc/devices/{device_id}/sys/gateway/sub_devices/properties/report 设备 平台 网关批量上报属性 $oc/devices/{device_id}/sys/properties/set/request_id={request_id} 平台 设备 平台设置设备属性 $oc/devices/{device_id}/sys/properties/set/response/request_id={request_id} 设备 平台 属性设置的响应结果 $oc/devices/{device_id}/sys/properties/get/request_id={request_id} 平台 设备 平台查询设备属性 $oc/devices/{device_id}/sys/properties/get/response/request_id={request_id} 设备 平台 属性查询响应结果 $oc/devices/{device_id}/sys/shadow/get/request_id={request_id} 设备 平台 设备侧主动获取平台的设备影子数据 $oc/devices/{device_id}/sys/shadow/get/response/request_id={request_id} 平台 设备 设备侧主动获取平台设备影子数据的响应 设备事件相关Topic $oc/devices/{device_id}/sys/events/up 设备 平台 设备事件上报与平台事件下发,可用于:设备网关管理、软固件升级、文件上传/下载、设备时间同步、设备信息上报、设备日志收集、远程配置 $oc/devices/{device_id}/sys/events/down 平台 设备 {device_id}用于标识Topic路由的目标设备,设备侧订阅该topic或往topic推送消息时,该值需要替换为设备与平台建立MQTT连接时使用的设备ID参数值。 {request_id}用于唯一标识这次请求。设备侧发起的消息带该参数时,需要保证设备侧该参数值的唯一性,可以用递增的数字或者UUID来实现。当设备收到平台下发的topic中包含request_id时,设备侧响应的request_id需要跟平台下发的保持一致。 设备侧订阅带{request_id}参数的topic时,可以使用通配#。如设备侧订阅命令下发请求的topic $oc/devices/{device_id}/sys/commands/request_id={request_id}时,可以用$oc/devices/{device_id}/sys/commands/#。 平台采用了隐式订阅的功能,对于下行的系统topic,设备无需订阅,平台默认该设备订阅了qos为0的系统topic。如果需要qos为1的下行系统topic,需要设备自行订阅。 除了device_id、request_id其他均为系统字段。 父主题: 设备侧MQTT/MQTTS接口参考
  • 概述 LwM2M(Lightweight M2M,轻量级M2M),由开发移动联盟(OMA)提出,是一种轻量级的、标准通用的物联网设备管理协议,可用于快速部署客户端/服务器模式的物联网业务。LwM2M为物联网设备的管理和应用建立了一套标准,它提供了轻便小巧的安全通信接口及高效的数据模型,以实现M2M设备管理和服务支持。物联网平台支持加密与非加密两种接入设备接入方式,其中加密业务数据交互端口为5684端口,采用DTLS+CoAP协议通道接入,非加密端口为5683,接入协议为CoAP。 LwM2M的语法和接口细节,请以此标准规范为准。 物联网平台支持协议规定的plain text, opaque, Core Link ,TLV , JSON编码格式。在多字段操作时(比如写多个资源),默认用TLV格式。
  • 请求示例 设备消息状态变更通知示例: 设备消息状态变更通知 { "resource" : "device.message.status", "event" : "update", "event_time" : "20151212T121212Z", "event_time_ms" : "2015-12-12T12:12:12.000Z", "request_id" : "3fe58d5e-8697-4849-a165-7db128f7e776", "notify_data" : { "header" : { "device_id" : "d4922d8a-6c8e-4396-852c-164aefa6638f", "product_id" : "ABC123456789", "app_id" : "d4922d8a-6c8e-4396-852c-164aefa6638f", "gateway_id" : "d4922d8a-6c8e-4396-852c-164aefa6638f", "node_id" : "ABC123456789", "tags" : [ { "tag_value" : "testTagValue", "tag_key" : "testTagName" } ] } }, "body" : { "error_info" : { "error_msg" : "Send to device failed, device not subscribe topic.", "error_code" : "IOTDA.014112" }, "name" : "name", "topic" : "topic", "message_id" : "1235", "status" : "DELIVERED", "timestamp" : "20151212T121212Z" } }
  • 请求参数 表1 请求Body参数 参数 是否必选 参数类型 描述 resource 是 String 参数说明:订阅的资源名称,取值为device.message.status。 event 是 String 参数说明:订阅的资源事件,取值为update。 event_time 是 String 参数说明:资源事件生成时间,格式:yyyyMMdd'T'HHmmss'Z' UTC字符串,如:20151212T121212Z。若需要显示本地时区,您需要自己进行时间转换。 event_time_ms 否 String 参数说明:资源事件生成时间,格式:yyyy-MM-dd'T'HH:mm:ss.SSS'Z' UTC字符串,如:2015-12-12T12:12:12.000Z。若需要显示本地时区,您需要自己进行时间转换。 request_id 否 String 参数说明:消息ID,由设备侧指定或平台生成,用于跟踪业务流程。 notify_data 是 DeviceMessageStatusUpdateNotifyDataV5 object 参数说明:推送消息。 表2 DeviceMessageStatusUpdateNotifyDataV5 参数 是否必选 参数类型 描述 header 是 NotifyDataHeader object 参数说明:推送消息header。 body 是 DeviceMessageStatusUpdate object 参数说明:推送消息body。 表3 NotifyDataHeader 参数 是否必选 参数类型 描述 app_id 否 String 参数说明:应用ID。 最大长度:256 device_id 否 String 参数说明:设备ID,用于唯一标识一个设备,在注册设备时由物联网平台分配获得。 最大长度:256 node_id 否 String 参数说明:设备标识码,通常使用IMEI、MAC地址或Serial No作为nodeId。 最大长度:256 product_id 否 String 参数说明:产品ID,用于唯一标识一个产品,在注册产品时由物联网平台分配获得。 最大长度:256 gateway_id 否 String 参数说明:网关ID,用于标识一个网关设备。当设备是直连设备时,gatewayId与设备的deviceId一致。当设备是非直连设备时,gatewayId为设备所关联的直连设备(即网关)的deviceId。 最大长度:256 tags 否 Array of TagV5DTO objects 参数说明:要绑定到指定资源的标签列表,标签列表中各项标签键值之间不允许重复,一个资源最多可以绑定10个标签。 表4 TagV5DTO 参数 是否必选 参数类型 描述 tag_key 是 String 参数说明:标签键,在同一资源下标签键唯一。绑定资源时,如果设置的键已存在,则将覆盖之前的标签值。如果设置的键值不存在,则新增标签。 tag_value 否 String 参数说明:标签值。 表5 DeviceMessageStatusUpdate 参数 是否必选 参数类型 描述 topic 否 String 参数说明:消息上报使用的mqtt topic。 message_id 是 String 参数说明:消息的序列号,唯一标识一条消息。 name 否 String 参数说明:消息名称。 status 否 String 参数说明:设备消息状态,包含:PENDING,DELIVERED,TIMEOUT,FAILED。 error_info 否 ErrorInfoDTO object 参数说明:消息下发失败信息。 timestamp 否 String 参数说明:消息更新时间,格式:yyyyMMdd'T'HHmmss'Z' UTC字符串,如:20151212T121212Z。 表6 ErrorInfoDTO 参数 是否必选 参数类型 描述 error_code 否 String 参数说明:异常信息错误码,包含IOTDA.014016和IOTDA.014112。IOTDA.014016表示设备不在线;IOTDA.014112表示设备没有订阅topic。 error_msg 否 String 参数说明:异常信息说明,包含设备不在线和设备没有订阅topic说明。
共100000条