使用 PostRealTimeDeviceData 实现设备数据上云。

注意 有单次请求限制,设备数据条数 ≤ 5000,数据包大小 ≤ 1MB。

请求参数

名称 类型 是否必填 描述
serviceId String 数据源 Id(AI创作间项目 Id)
Data String 请求数据承载字段,详情请参考请求示例,数组一次最多支持5000条数据
Data 为以下形式的json格式的字符串,例如:
"[{\"deviceId\":\"HY_00000004\",\"key\":\"fuel_pv_1\",\"value\":\"35.065860413\",\"time\":\"2018-11-26 15:11:34\",\"systime\":\"2018-11-26 15:11:34\"}]";
各字段解释如下:
[
    {
        "deviceId": "设备ID",
        "key": "测点Key",
        "value": "测点值",
        "time": "数据产生时间",
        "systime": "数据产生时间"
    }
]

返回参数

名称 类型 是否必填 描述
Data String Normal 返回值数据承载字段
RequestId String Normal 随机生成,平台可根据 requestId 做业务请求追踪
code String Normal 状态码
message String Normal 提示信息

示例

  • Java SDK请求示例
    public class PostRealTimeDeviceData {
        /**
         * 数据源Id(AI创作间项目id)
         */
        public static final String SERVICE_ID = "010eefb7b8be4f338f5942cb18d49fca";
        /**
         * 地区
         */
        private static final String REGION_ID = "cn-hangzhou";
        /**
         * 用户AK
         */
        private static final String ACCESS_KEY_ID = "Your AccessKeyId.";
        /**
         * 项目名称
         */
        private static final String PRODUCT = "industry-brain";
        /**
         * 通道
         */
        private static final String END_POINT = "industrial-brain.[RegionId].aliyuncs.com";
        /**
         * 用户SK
         */
        private static final String SECRET_KEY = "Your secretKey.";
        /**
         * 主函数(设备数据上云)
         *
         * @param args
         */
        public static void main(String[] args) {
            registerProd();
        }
        /**
         * 请求线上环境
         */
        public static void registerProd() {
            // 工业大脑项目名称 请求地址
            DefaultProfile.addEndpoint(REGION_ID, PRODUCT, END_POINT);
            // 配置region(用户AK, SK)
            DefaultProfile defaultProfile = DefaultProfile.getProfile(REGION_ID, ACCESS_KEY_ID, SECRET_KEY);
            IAcsClient client = new DefaultAcsClient(defaultProfile);
            // 拼装 请求参数
            PostRealTimeDeviceDataRequest request = new PostRealTimeDeviceDataRequest();
            request.setServiceId(SERVICE_ID);
    //        // 选填 : 请求数据
    //        request.setRequestData();
    //        // 选填 : 算法配置
    //        request.setRequestParams();
    //        // 选填 : 返回结果是否携带算法配置
    //        request.setShowParams();
            try {
                // 开始请求接口,获取返回结果
                PostRealTimeDeviceDataResponse resp = client.getAcsResponse(request);
                // 打印返回结果
                System.out.println(JSONObject.fromObject(resp).toString());
            } catch (com.aliyuncs.exceptions.ClientException e) {
                e.printStackTrace();
            }
        }
    }
  • 返回示例
    {
        "data": "Success",
        "resuestId": "asmdasdadsadadda",
        "code": "0",
        "message": "Success"
    }
    返回值详解:
    {
        "data": "返回值数据承载字段",
        "resuestId": "随机生成,平台可根据requestId做业务请求追踪",
        "code": "状态码",
        "message": "提示信息"
    }