Get Firmware File

获取指定固件版本号的固件详情。

操作权限

需授权的资源

所需操作权限

设备管理

Read

请求格式

GET https://{apigw-address}/connect-service/v2.1/ota-firmwares?action=get

请求参数(URI)

名称

位置(Path/Query)

必需/可选

数据类型

描述

orgId

Query

必需

String

资产所属的组织ID。 如何获取orgId信息>>

firmwareId

Query

必需

String

需要获取详情的目标固件的ID。

响应参数

名称

数据类型

描述

data

FirmwareInfo结构体

固件详情。FirmwareInfo结构体的结构参见下表。

FirmwareInfo结构体

名称

数据类型

描述

orgId

String

资产所属的组织ID。

firmwareId

String

固件ID。

productKey

String

设备的Product key。

name

StringI18n

固件名称。

version

String

固件版本号。

desc

String

固件描述。

signMethod

String

固件文件签名算法。

sign

String

固件文件签名。

fileUrl

String

固件文件标识符。

fileSize

String

固件文件大小。

enableVerification

Boolean

固件用于升级任务时是否必须验证过。

isVerified

Boolean

固件是否经过验证。

createTime

Long

固件创建时间。

错误码

代码

错误信息

描述

24404

Firmware not found

找不到固件。

示例

请求示例

url: https://{apigw-address}/connect-service/v2.1/ota-firmwares?action=get&orgId=yourOrgId&firmwareId=yourFirmwareId
method: GET

返回示例

{
    "code":0,
    "msg":"OK",
    "requestId":"28da9093-400f-4eb1-8cdc-83e4ec77070d",
    "data":{
        "orgId":"yourOrgId",
        "firmwareId":"yourFirmwareId",
        "productKey":"BXwU4kMk",
        "name":{
            "defaultValue":"HC_TEST",
            "i18nValue":{

            }
        },
        "version":"2.0",
        "desc":null,
        "signMethod":"md5",
        "sign":"12c696fa5c075e8687458fd6ce164b57",
        "fileUrl":"enos-connect://2325a9b338800000.zip",
        "fileSize":1767,
        "isVerified":false,
        "enableVerification":false,
        "createTime":1590746442378
    }
}

Java SDK调用示例

package com.envisioniot.enos.connect_service.ota.firmware;


import com.envision.apim.poseidon.config.PConfig;
import com.envision.apim.poseidon.core.Poseidon;
import com.envisioniot.enos.connect_service.v2_1.ota.firmware.GetFirmwareFileRequest;
import com.envisioniot.enos.connect_service.v2_1.ota.firmware.GetFirmwareFileResponse;

public class GetFirmware {
    public static void main(String[] args) {
        final String appKey = "yourAppKey";
        final String appSecret = "yourAppSecret";
        String serverUrl = "yourServerUrl";

        String orgId = "yourOrgId";
        String firmwareId = "yourFirmwareId";

        GetFirmwareFileRequest request = new GetFirmwareFileRequest();
        request.setOrgId(orgId);
        request.setFirmwareId(firmwareId);

        GetFirmwareFileResponse response = Poseidon
                .config(PConfig.init().appKey(appKey).appSecret(appSecret).debug())
                .url(serverUrl)
                .getResponse(request, GetFirmwareFileResponse.class);
    }
}