阿里云物聯網獲取設備屬性api接口:QueryDevicePropertyData

阿里云物聯網接口:QueryDevicePropertyData
?說明:調用該接口查詢指定設備或數字孿生節點,在指定時間段內,單個屬性的數據

比如提取上傳到物聯網的溫度數據

api文檔:QueryDevicePropertyData_物聯網平臺_API文檔-阿里云OpenAPI開發者門戶QueryDevicePropertyData調用該接口查詢指定設備或數字孿生節點,在指定時間段內,單個屬性的數據。是物聯網平臺的API文檔,是阿里云OpenAPI開發者門戶提供的OpenAPI開發手冊,包括云產品的OpenAPI、出入參、錯誤碼、變更歷史。https://next.api.aliyun.com/document/Iot/2018-01-20/QueryDevicePropertyData


阿里云物聯網平臺云端SDK下載:

    物聯網平臺SDK下載地址和示例_物聯網平臺(IoT)-阿里云幫助中心物聯網平臺云端SDK支持Java、Python、PHP、Node.js、.NET、Go和Swift語言,用于調用云端API,以實現物聯網平臺的云端能力,如產品管理、設備管理、Topic管理、數據流轉規則管理、消息通信等。本文介紹云端SDK的下載地址及使用示例。https://help.aliyun.com/zh/iot/developer-reference/download-iot-platform-sdks-2

    搞了好久才搞出來:

    • 1、java實現:

    • QueryDeviceTempData.java

    package com.example.iot;import com.aliyuncs.DefaultAcsClient;
    import com.aliyuncs.IAcsClient;
    import com.aliyuncs.exceptions.ClientException;
    import com.aliyuncs.iot.model.v20180120.QueryDevicePropertyDataRequest;
    import com.aliyuncs.iot.model.v20180120.QueryDevicePropertyDataResponse;
    import com.aliyuncs.profile.DefaultProfile;
    import com.aliyuncs.profile.IClientProfile;public class QueryDeviceTempData {public static void main(String[] args) {// 阿里云訪問密鑰String accessKeyId = "**";String accessKeySecret = "**";String regionId = "cn-shanghai";// 設備信息String productKey = "**";String deviceName = "**";// 初始化客戶端IClientProfile profile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);IAcsClient client = new DefaultAcsClient(profile);// 創建請求QueryDevicePropertyDataRequest request = new QueryDevicePropertyDataRequest();request.setProductKey(productKey);request.setDeviceName(deviceName);request.setIdentifier("indate"); // 溫度屬性標識符request.setStartTime(System.currentTimeMillis() - 3600 * 1000); // 查詢過去一小時的數據request.setEndTime(System.currentTimeMillis());request.setAsc(1); // 按時間升序排列request.setPageSize(10); // 每頁返回的數據條數try {// 發送請求并獲取響應QueryDevicePropertyDataResponse response = client.getAcsResponse(request);System.out.println("Response: " + response);// 解析響應if (response != null && response.getData() != null) {for (QueryDevicePropertyDataResponse.Data.PropertyInfo propertyInfo : response.getData().getList()) {System.out.println("Time: " + propertyInfo.getTime() + ", Value: " + propertyInfo.getValue());}}} catch (ClientException e) {e.printStackTrace();}}
    }

    • pom.xml文件:
    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>org.example</groupId><artifactId>QueryDevicePropertyData</artifactId><version>1.0-SNAPSHOT</version><properties><maven.compiler.source>21</maven.compiler.source><maven.compiler.target>21</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></properties><dependencies><!-- 阿里云核心庫 --><dependency><groupId>com.aliyun</groupId><artifactId>aliyun-java-sdk-core</artifactId><version>4.5.3</version></dependency><!-- 阿里云物聯網平臺SDK --><dependency><groupId>com.aliyun</groupId><artifactId>aliyun-java-sdk-iot</artifactId><version>7.4.0</version></dependency></dependencies></project>
    • java項目結構
    • java輸出:

    Response: com.aliyuncs.iot.model.v20180120.QueryDevicePropertyDataResponse@38d8f54a
    Time: 1740729954244, Value: 18.0
    Time: 1740730254422, Value: 18.0
    Time: 1740730554592, Value: 18.0
    Time: 1740730854785, Value: 18.0
    Time: 1740731154962, Value: 17.0
    ?

    2、python實現

    輸出json格式,想要哪些字段自行解析

    from aliyunsdkcore.client import AcsClient
    from aliyunsdkcore.acs_exception.exceptions import ClientException
    from aliyunsdkcore.acs_exception.exceptions import ServerException
    from aliyunsdkiot.request.v20180120.QueryDevicePropertyDataRequest import QueryDevicePropertyDataRequest# 設置你的AccessKey ID和AccessKey Secret
    access_key_id = '**'
    access_key_secret = '**'
    region_id = 'cn-shanghai'  # 根據你的實際情況選擇region# 創建AcsClient實例
    client = AcsClient(access_key_id, access_key_secret, region_id)# 創建QueryDevicePropertyDataRequest實例
    request = QueryDevicePropertyDataRequest()
    request.set_accept_format('json')# 設置請求參數
    request.set_ProductKey('**')  # 產品Key
    request.set_DeviceName('**')  # 設備名稱
    request.set_Identifier('temp')  # 屬性標識符
    request.set_StartTime(1740346648574)  # 開始時間,Unix時間戳,單位毫秒
    request.set_EndTime(1740357451888)  # 結束時間,Unix時間戳,單位毫秒
    request.set_PageSize(10)  # 每頁記錄數
    request.set_Asc(0)  # 0表示降序,1表示升序try:# 發送請求并獲取響應response = client.do_action_with_exception(request)print(response.decode('utf-8'))
    except ClientException as e:print(e.get_error_code())print(e.get_error_msg())
    except ServerException as e:print(e.get_error_code())print(e.get_error_msg())

    python程序輸出:{"RequestId":"036BBE41-52E9-5C5F-9312-D561C0D82282","Data":{"NextValid":false,"NextTime":1740355512752,"List":{"PropertyInfo":[{"Value":"-2.0","Time":1740357315548},{"Value":"-2.0","Time":1740357015021},{"Value":"-2.0","Time":1740356714858},{"Value":"-5.0","Time":1740356414687},{"Value":"-5.0","Time":1740356113089},{"Value":"-5.0","Time":1740355812915},{"Value":"-5.0","Time":1740355512754}]}},"Code":"","Success":true}

    本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
    如若轉載,請注明出處:http://www.pswp.cn/diannao/72046.shtml
    繁體地址,請注明出處:http://hk.pswp.cn/diannao/72046.shtml
    英文地址,請注明出處:http://en.pswp.cn/diannao/72046.shtml

    如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

    相關文章

    需求和開發模型

    文章目錄 什么是需求&#xff1f;用戶需求軟件需求用戶需求和軟件需求的不同 開發模型什么是“模型”&#xff1f;軟件的生命周期常見的開發模型瀑布模型&#xff08;Waterfall Model&#xff09;螺旋模型增量模型、迭代模型敏捷模型 測試模型V 模型W 模型&#xff08;雙 V 模型…

    21-發糖果

    n 個孩子站成一排。給你一個整數數組 ratings 表示每個孩子的評分。 你需要按照以下要求&#xff0c;給這些孩子分發糖果&#xff1a; 每個孩子至少分配到 1 個糖果。 相鄰兩個孩子評分更高的孩子會獲得更多的糖果。 請你給每個孩子分發糖果&#xff0c;計算并返回需要準備的 最…

    sql深入學習

    文章目錄 前言知識學習注釋的兩種形式字符型注入萬能密碼 布爾盲注報錯注入堆疊注入時間盲注二次注入 小技巧 前言 這次學習建立在對數據庫有基本的認識&#xff0c;了解基礎的增刪改查語句&#xff0c;數字型注入和字符型注入的基礎上&#xff0c;進一步深入學習知識&#xf…

    利用three.js在Vue項目中展示重構的stl模型文件

    一、目的 為了在前端頁面展示3d打印機打印過程 二、前期準備 完整模型的stl文件和模型切割成的n個stl文件 models文件夾下的文件就是切割后的stl文件 三、代碼 <template><div ref"threeContainer" class"three-container"></div><…

    【Eureka 緩存機制】

    今天簡單介紹一下Eureka server 的緩存機制吧?????? 一、先來個小劇場&#xff1a;服務發現的"拖延癥" 想象你是個外賣小哥&#xff08;客戶端&#xff09;&#xff0c;每次接單都要打電話問調度中心&#xff08;Eureka Server&#xff09;&#xff1a;“現在…

    Python--內置模塊和開發規范(下)

    2. 開發規范 2.1 單文件應用 文件結構示例 # 文件注釋 import os import jsonDB_PATH "data.json" # 常量放頂部def load_data():"""函數注釋&#xff1a;加載數據"""if os.path.exists(DB_PATH):with open(DB_PATH, "r"…

    go設計模式

    劉&#xff1a;https://www.bilibili.com/video/BV1kG411g7h4 https://www.bilibili.com/video/BV1jyreYKE8z 1. 單例模式 2. 簡單工廠模式 代碼邏輯&#xff1a; 原始&#xff1a;業務邏輯層 —> 基礎類模塊工廠&#xff1a;業務邏輯層 —> 工廠模塊 —> 基礎類模塊…

    搭建數字化生態平臺公司:痛點與蚓鏈解決方案

    在數字技術突飛猛進的當下&#xff0c;數字化生態平臺成為眾多企業實現創新發展、拓展業務版圖的 “秘密工具”。今天&#xff0c;咱們就一起來聊聊搭建這類平臺的公司&#xff0c;看看它們有啥獨特之處&#xff0c;又面臨哪些難題。 一、面臨的痛點 &#xff08;一&#xff0…

    標記符號“<”和“>”符號被稱為“尖括號”或“角括號”

    你提到的“<”和“>”符號被稱為“尖括號”或“角括號”。它們常用于編程語言中表示類型參數&#xff08;如泛型&#xff09;、HTML標簽&#xff08;如<div>&#xff09;、數學中的不等式&#xff08;如< 5&#xff09;等。 好的&#xff0c;我來用通俗的方式解…

    云平臺DeepSeek滿血版:引領AI推理革新,開啟智慧新時代

    引言&#xff1a;人工智能的未來——云平臺的卓越突破 在當今科技飛速發展的時代&#xff0c;人工智能&#xff08;AI&#xff09;技術正深刻地改變著我們生活與工作方式的方方面面。作為AI領域的創新者與領航者&#xff0c;云平臺始終走在技術前沿&#xff0c;憑借無窮的熱情…

    自然語言處理:文本規范化

    介紹 大家好&#xff01;很高興又能在這兒和大家分享自然語言處理相關的知識了。在上一篇發布于自然語言處理&#xff1a;初識自然語言處理-CSDN博客為大家初步介紹了自然語言處理的基本概念。而這次&#xff0c;我將進一步深入這個領域&#xff0c;和大家聊聊自然語言處理中一…

    HTTP非流式請求 vs HTTP流式請求

    文章目錄 HTTP 非流式請求 vs 流式請求一、核心區別 服務端代碼示例&#xff08;Node.js/Express&#xff09;非流式請求處理流式請求處理 客戶端請求示例非流式請求&#xff08;瀏覽器fetch&#xff09;流式請求處理&#xff08;瀏覽器fetch&#xff09; Python客戶端示例&…

    C語言機試編程題

    編寫版本&#xff1a;vc2022 1.求最大/小值 #include<stdio.h> int main(){int a[50],n;int max, min;printf("請輸入您要輸入幾個數");scanf_s("%d", &n);printf("請輸入您要比較的%d個數\n",n);for (int i 0; i<n; i) {scanf_…

    c++ 多個.cpp文件運行

    目錄 方法 1&#xff1a;將其他文件中的 main 改為普通函數 方法 2&#xff1a;使用頭文件組織代碼 方法 3&#xff1a;條件編譯&#xff08;僅用于調試或特殊需求&#xff09; 方法 4&#xff1a;創建類或命名空間管理邏輯 在一個C項目中&#xff0c;多個.cpp文件不能同…

    基于OFDR的層壓陸相頁巖油儲層中非對稱裂縫群傳播的分布式光纖監測

    關鍵詞&#xff1a;OFDR、分布式光纖傳感、裂縫傳播 一. 概述 四川盆地涼高山組優質頁巖油儲層存在復雜的垂直重疊巖性&#xff0c;大陸頁巖油儲層存在發育層理&#xff0c;薄層和天然裂縫&#xff0c;對水平井多級壓裂技術的裂縫網絡形態控制和監測構成挑戰。本研究提出了一…

    UniApp 按鈕組件 open-type 屬性詳解:功能、場景與平臺差異

    文章目錄 引言一、open-type 基礎概念1.1 核心作用1.2 通用使用模板 二、主流 open-type 值詳解2.1 contact - 客服會話功能說明平臺支持代碼示例 2.2 share - 內容轉發功能說明平臺支持注意事項 2.3 getUserInfo - 獲取用戶信息功能說明平臺支持代碼示例 2.4 getPhoneNumber -…

    【大模型】Ubuntu下 fastgpt 的部署和使用

    前言 本次安裝的版本為 fastgpt:v4.8.8-fix2。 最新版本fastgpt:v4.8.20-fix2 問答時報錯&#xff0c;本著跑通先使用起來&#xff0c;就沒有死磕下去&#xff0c;后面bug解了再進行記錄。 ? github連接&#xff1a;https://github.com/labring/FastGPT fastgpt 安裝說明&…

    【GenBI實戰】python腳本實現基于DeepSeek api的數據查詢和圖表可視化

    寫在前面 生成式 BI (GenBI) 正在改變我們與數據交互的方式。它允許用戶使用自然語言提出問題&#xff0c;并自動獲得數據洞察&#xff0c;而無需編寫復雜的 SQL 查詢或手動創建圖表。本文將帶你動手實戰&#xff0c;使用 Python 和 DeepSeek API (或其他類似的大語言模型 API…

    Web-to-Web和Server-to-Serve歸因方法

    Web2Web 和 S2S 歸因方法 1. Web2Web 歸因方法 原理&#xff1a; Web2Web&#xff08;Web-to-Web&#xff09;歸因方法主要用于跟蹤用戶在網站之間的行為路徑。它通過瀏覽器中的Cookie或其他標識符來追蹤用戶在不同網站之間的行為&#xff0c;從而確定用戶轉化的路徑。 使用…

    c++中迭代器和指針有什么區別?

    在 C 中&#xff0c;迭代器和指針雖然在某些場景下有相似的行為&#xff0c;但它們在設計目的、功能和使用場景上有本質區別。以下是詳細對比和最佳實踐&#xff1a; 一、核心區別對比表 特征指針迭代器本質原生數據類型&#xff0c;直接存儲內存地址類對象&#xff0c;抽象容…