成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

使用IoT Studio搭建氣象監(jiān)測(cè)屏

李昌杰 / 756人閱讀

摘要:使用開(kāi)發(fā)監(jiān)控大屏平臺(tái),即物聯(lián)網(wǎng)開(kāi)發(fā)平臺(tái)。在應(yīng)用編輯器中,搭建實(shí)時(shí)氣象數(shù)據(jù)監(jiān)控面板。設(shè)置完成后,該文字組件將顯示氣象監(jiān)測(cè)設(shè)備上報(bào)的溫度值。

?

1、概述

本實(shí)踐案例中使用LoRa氣象監(jiān)測(cè)設(shè)備監(jiān)測(cè)氣象信息,上報(bào)溫度、濕度、大氣壓、經(jīng)度、緯度等數(shù)據(jù),并使用IoT Studio平臺(tái)搭建監(jiān)控大屏,展示氣象監(jiān)測(cè)設(shè)備最新上報(bào)的數(shù)據(jù)和歷史數(shù)據(jù)曲線圖。

架構(gòu)圖

本案例的架構(gòu)圖如下。

?

方案設(shè)計(jì)

實(shí)現(xiàn)過(guò)程:

  1. 自主搭建氣象站的LoRa網(wǎng)絡(luò)。
  2. 配置LoRa氣象監(jiān)測(cè)設(shè)備接入物聯(lián)網(wǎng)平臺(tái)。
  3. 在IoT Studio平臺(tái)搭建監(jiān)控大屏。

物料準(zhǔn)備

購(gòu)買LoRa網(wǎng)關(guān)和LoRa氣象監(jiān)測(cè)設(shè)備硬件。

購(gòu)買已通過(guò)Link WAN認(rèn)證的產(chǎn)品(內(nèi)置Link WAN密鑰),可訪問(wèn)廣域物聯(lián)網(wǎng)阿里云IoT元器件館

2、配置LoRa網(wǎng)關(guān)

使用LoRa設(shè)備之前,您需在物聯(lián)網(wǎng)絡(luò)管理平臺(tái)上配置LoRa網(wǎng)關(guān),搭建物聯(lián)網(wǎng)所需的網(wǎng)絡(luò)服務(wù)。

前提條件

已開(kāi)通物聯(lián)網(wǎng)絡(luò)管理平臺(tái)。

操作步驟

  1. 登錄物聯(lián)網(wǎng)絡(luò)管理平臺(tái)控制臺(tái)
  2. 在左側(cè)導(dǎo)航欄,選擇快速入門。
  3. 選擇搭建與分享網(wǎng)絡(luò)對(duì)應(yīng)的開(kāi)始搭建。

  4. 單擊開(kāi)始體驗(yàn)。
  5. 注冊(cè)網(wǎng)關(guān),填入您的網(wǎng)關(guān)基本信息和位置信息后,單擊下一步。網(wǎng)關(guān)的GwEUI、PIN Code和頻段信息,請(qǐng)?jiān)谀W(wǎng)關(guān)設(shè)備的標(biāo)簽上查看。

    如下圖所示。

  6. 將網(wǎng)關(guān)通電、連網(wǎng)。

    稍等片刻之后,網(wǎng)關(guān)狀態(tài)顯示為在線,則表示網(wǎng)關(guān)連網(wǎng)上線成功。

  7. 添加入網(wǎng)憑證,單擊下一步。

  8. 將憑證授權(quán)給自己,單擊完成。

執(zhí)行結(jié)果

將憑證授權(quán)給自己后,在物聯(lián)網(wǎng)平臺(tái)上使用該憑證創(chuàng)建連網(wǎng)方式為L(zhǎng)oRaWAN的產(chǎn)品。

3、配置LoRa設(shè)備接入物聯(lián)網(wǎng)平臺(tái)

配置LoRa網(wǎng)關(guān)后,您需要在物聯(lián)網(wǎng)平臺(tái)上創(chuàng)建LoRa產(chǎn)品和設(shè)備,定義物模型,編寫、提交LoRa設(shè)備的數(shù)據(jù)解析腳本。

創(chuàng)建產(chǎn)品和設(shè)備

  1. 登錄物聯(lián)網(wǎng)平臺(tái)控制臺(tái)。
  2. 在實(shí)例概覽頁(yè),找到對(duì)應(yīng)的實(shí)例,單擊實(shí)例進(jìn)入實(shí)例詳情頁(yè)。

  3. 在左側(cè)導(dǎo)航欄,選擇設(shè)備管理?>?產(chǎn)品。
  4. 在產(chǎn)品頁(yè),單擊創(chuàng)建產(chǎn)品,創(chuàng)建一個(gè)連網(wǎng)方式為L(zhǎng)oRaWAN的產(chǎn)品。
    參數(shù)說(shuō)明
    產(chǎn)品名稱自定義產(chǎn)品名稱。
    所屬品類選擇為自定義品類。
    節(jié)點(diǎn)類型選擇直連設(shè)備。
    連網(wǎng)方式選擇為L(zhǎng)oRaWAN。
    入網(wǎng)憑證選擇您在物聯(lián)網(wǎng)絡(luò)平臺(tái)中創(chuàng)建并已授權(quán)的入網(wǎng)憑證。
    數(shù)據(jù)格式選擇為透?jìng)?自定義。
    認(rèn)證方式選擇為設(shè)備密鑰。
  5. 產(chǎn)品創(chuàng)建成功后,單擊添加設(shè)備欄下的前往添加,添加一個(gè)設(shè)備。

    設(shè)備的DevEUI和PIN Code,請(qǐng)?jiān)谀脑O(shè)備標(biāo)簽上查看。

  6. 測(cè)試設(shè)備連接物聯(lián)網(wǎng)平臺(tái)。

    按照設(shè)備上的標(biāo)識(shí),為設(shè)備連接天線、GPS天線、電池或電源。

    設(shè)備上電約2分鐘后,在物聯(lián)網(wǎng)平臺(tái)控制臺(tái)對(duì)應(yīng)的實(shí)例下的設(shè)備頁(yè)的設(shè)備列表中,該設(shè)備的狀態(tài)會(huì)顯示為在線。

定義物模型

物模型是將物理空間中的實(shí)體進(jìn)行數(shù)字化,并在云端構(gòu)建該實(shí)體的數(shù)據(jù)模型。在物聯(lián)網(wǎng)平臺(tái)中,定義物模型即定義產(chǎn)品功能(包括屬性、事件、服務(wù))。完成功能定義后,系統(tǒng)將自動(dòng)生成該產(chǎn)品的物模型。本示例中,氣象監(jiān)測(cè)設(shè)備上報(bào)溫度、濕度、氣壓、地理位置坐標(biāo)等信息。因此,先在物聯(lián)網(wǎng)平臺(tái)上,為這些信息定義數(shù)據(jù)模型,即定義對(duì)應(yīng)的屬性。

  1. 在物聯(lián)網(wǎng)平臺(tái)控制臺(tái)對(duì)應(yīng)實(shí)例下的左側(cè)導(dǎo)航欄,選擇設(shè)備管理?>?產(chǎn)品?。
  2. 在產(chǎn)品頁(yè),找到之前創(chuàng)建的產(chǎn)品,單擊對(duì)應(yīng)的查看。
  3. 在產(chǎn)品詳情頁(yè)功能定義頁(yè)簽下,選擇編輯草稿?>?添加自定義功能,添加以下自定義功能。
    屬性名標(biāo)識(shí)符類型取值范圍步長(zhǎng)單位讀寫類型
    溫度Temperaturedouble-99~1000.01讀寫
    濕度Humiditydouble1~1000.01%讀寫
    大氣壓Atmospherefloat550 ~10600.01hPa讀寫
    經(jīng)度Longitudedouble-180~1800.01°讀寫
    緯度Latitudedouble-90~900.01°讀寫
    海拔Altitudefloat0~99990.01m讀寫
    X加速度Acceleration_Xfloat-1000~10000.01mg讀寫
    Y加速度Acceleration_Yfloat-1000~10000.01mg讀寫
    Z加速度Acceleration_Zfloat-1000~10000.01mg讀寫
    運(yùn)行速度Speedfloat-10000 ~100000.01Km/h讀寫
    電池電壓Battery_voltagefloat0~1000000.01V讀寫
    氣體阻力Gas_resistancefloat-10000 ~100000.01無(wú)讀寫

    新增物模型的詳細(xì)操作說(shuō)明,請(qǐng)參見(jiàn)單個(gè)添加物模型

  4. 單擊發(fā)布上線將物模型發(fā)布為正式版。

編寫數(shù)據(jù)解析腳本

本示例中,LoRa設(shè)備上報(bào)的數(shù)據(jù)是二進(jìn)制格式,如01880537A5109D5A00846C。其中 1、2 字節(jié)為數(shù)據(jù)標(biāo)識(shí)碼01 88;3、4、5字節(jié)為海拔數(shù)據(jù)altitude:339m;6、7、8字節(jié)為緯度數(shù)據(jù)latitude:34.1925;9、10、11字節(jié)為經(jīng)度數(shù)據(jù)longitude:108.8858。

阿里云物聯(lián)網(wǎng)平臺(tái)的標(biāo)準(zhǔn)數(shù)據(jù)格式為Alink JSON格式,不能直接使用二進(jìn)制數(shù)據(jù)進(jìn)行業(yè)務(wù)處理;并且物聯(lián)網(wǎng)平臺(tái)下發(fā)的數(shù)據(jù)也是Alink JSON格式。您需要根據(jù)您的設(shè)備數(shù)據(jù)格式和定義的物模型,編寫數(shù)據(jù)解析腳本,提交到物聯(lián)網(wǎng)平臺(tái),以供物聯(lián)網(wǎng)平臺(tái)調(diào)用來(lái)解析上下行數(shù)據(jù)。

  1. 登錄物聯(lián)網(wǎng)平臺(tái)控制臺(tái),在對(duì)應(yīng)實(shí)例的產(chǎn)品詳情頁(yè),選擇數(shù)據(jù)解析頁(yè)簽。
  2. 在編輯腳本輸入框中,輸入解析腳本。

    說(shuō)明?腳本代碼中屬性的標(biāo)識(shí)符必須與定義物模型時(shí)定義的一致。

    詳細(xì)的數(shù)據(jù)解析腳本編寫指導(dǎo),請(qǐng)參見(jiàn)LoRaWAN設(shè)備數(shù)據(jù)解析

    本示例的數(shù)據(jù)解析腳本如下:

    // var COMMAND_REPORT = 02;// var COMMAND_SET = 01;var ALINK_PROP_REPORT_METHOD = "thing.event.property.post"; //標(biāo)準(zhǔn)ALink JSON格式Topic,設(shè)備上傳屬性數(shù)據(jù)到云端。var ALINK_PROP_SET_METHOD = "thing.service.property.set";var ALINK_VERSION = "1.1";function rawDataToProtocol(bytes) {    var uint8Array = new Uint8Array(bytes.length);    for (var i = 0; i < bytes.length; i++) {        uint8Array[i] = bytes[i] & 0xff;    }    var dataView = new DataView(uint8Array.buffer, 0);    var jsonMap = {};    // var fHead = uint8Array[0]; // 第0個(gè)BYTE為上報(bào)協(xié)議。// if (fHead == COMMAND_REPORT)    {        jsonMap["method"] = ALINK_PROP_REPORT_METHOD; //ALink JSON格式 - 屬性上報(bào)。        jsonMap["version"] = ALINK_VERSION; //ALink JSON格式 - 協(xié)議版本號(hào)固定字段。        jsonMap["id"] = "" + 12345; //ALink JSON格式 - 標(biāo)示該次請(qǐng)求id值。        var params = {};        switch (dataView.getInt16(0)) {        case 0x0267:            params["Temperature"] = Math.floor(dataView.getInt16(2) * 0.1 * 10) / 10;//保留兩位小數(shù)。            params["Humidity"] = Math.floor(100 * dataView.getUint8(6) * 0.01 / 2 * 10) / 10;            params["Atmosphere"] = Math.floor(dataView.getInt16(9) * 0.1 * 10) / 10;            break;        case 0x0188:            var buffer = new Uint8Array(4);            buffer[0] = 0;            buffer[1] = uint8Array[2];            buffer[2] = uint8Array[3];            buffer[3] = uint8Array[4];            var latitude = new DataView(buffer.buffer, 0);            params["Latitude"] = Math.floor(latitude.getInt32(0) * 0.0001 * 10000) / 10000;            buffer[0] = 0;            buffer[1] = uint8Array[5];            buffer[2] = uint8Array[6];            buffer[3] = uint8Array[7];            var longitude = new DataView(buffer.buffer, 0);            params["Longitude"] = Math.floor(longitude.getInt32(0) * 0.0001 * 10000) / 10000;            buffer[0] = 0;            buffer[1] = uint8Array[8];            buffer[2] = uint8Array[9];            buffer[3] = uint8Array[10];            var altitude = new DataView(buffer.buffer, 0);            params["Altitude"] = Math.floor(altitude.getInt32(0) * 0.01 * 100) / 100;            break;        case 0x0371:            params["Acceleration_X"] = dataView.getInt16(2);            params["Acceleration_Y"] = dataView.getInt16(4);            params["Acceleration_Z"] = dataView.getInt16(6);            break;        case 0x0702:            params["Battery_voltage"] = dataView.getInt16(2)/10;            params["Speed"] = Math.floor(dataView.getInt16(6) * 0.01 * 100) / 100;            break;        case 0x0902:            params["Gas_resistance"] = dataView.getInt16(2);            break;        }        jsonMap["params"] = params; //ALink JSON 格式 - params 標(biāo)準(zhǔn)字段 }        return jsonMap;    }    function protocolToRawData(bytes) {        var method = json["method"];        var id = json["id"];        var version = json["version"];        var payloadArray = [];        return payloadArray;    }}                        
  3. 測(cè)試腳本。
    1. 選擇模擬類型為設(shè)備上報(bào)數(shù)據(jù)。
    2. 在模擬輸入下的輸入框中,輸入一個(gè)模擬數(shù)據(jù):01880537A5109D5A00846C。
    3. 單擊執(zhí)行。

    解析結(jié)果顯示在運(yùn)行結(jié)果欄中。

  4. 確認(rèn)腳本能正確解析數(shù)據(jù)后,單擊提交,將腳本提交到物聯(lián)網(wǎng)平臺(tái)系統(tǒng)。

    說(shuō)明?物聯(lián)網(wǎng)平臺(tái)不能調(diào)用草稿狀態(tài)的腳本,只有已提交的腳本才會(huì)被調(diào)用來(lái)解析數(shù)據(jù)。

    設(shè)備上報(bào)的屬性數(shù)據(jù)經(jīng)腳本成功解析后,您可以在該設(shè)備的設(shè)備詳情頁(yè)物模型數(shù)據(jù)?>?運(yùn)行狀態(tài)頁(yè)簽下,查看設(shè)備上報(bào)的屬性數(shù)據(jù)。

4、使用IoT Studio開(kāi)發(fā)監(jiān)控大屏

IoT Studio平臺(tái),即物聯(lián)網(wǎng)開(kāi)發(fā)平臺(tái)。您可以使用IoT Studio中的Web應(yīng)用編輯器可搭建監(jiān)控大屏,用于展示設(shè)備上報(bào)的數(shù)據(jù)。

操作步驟

  1. 在物聯(lián)網(wǎng)平臺(tái)控制臺(tái)左側(cè)導(dǎo)航欄,選擇IoT Studio?>?項(xiàng)目管理,在普通項(xiàng)目下單擊新建項(xiàng)目,新建一個(gè)普通項(xiàng)目,具體操作參見(jiàn)普通項(xiàng)目。

    創(chuàng)建成功,自動(dòng)進(jìn)入該項(xiàng)目。

  2. 在項(xiàng)目左側(cè)導(dǎo)航欄,選擇產(chǎn)品,再單擊關(guān)聯(lián)物聯(lián)網(wǎng)平臺(tái)產(chǎn)品,將已創(chuàng)建的氣象監(jiān)測(cè)產(chǎn)品與該項(xiàng)目關(guān)聯(lián),具體操作參見(jiàn)關(guān)聯(lián)產(chǎn)品至普通項(xiàng)目。
  3. 在項(xiàng)目左側(cè)導(dǎo)航欄,選擇設(shè)備,再單擊關(guān)聯(lián)物聯(lián)網(wǎng)平臺(tái)設(shè)備,將要監(jiān)控?cái)?shù)據(jù)的來(lái)源設(shè)備與該項(xiàng)目關(guān)聯(lián),具體操作參見(jiàn)關(guān)聯(lián)設(shè)備至普通項(xiàng)目。
  4. 在項(xiàng)目左側(cè)導(dǎo)航欄,選擇主頁(yè),單擊Web應(yīng)用?>?新建,新建一個(gè)Web應(yīng)用,具體操作參見(jiàn)創(chuàng)建Web應(yīng)用。
  5. 在Web應(yīng)用編輯器中,搭建實(shí)時(shí)氣象數(shù)據(jù)監(jiān)控面板。
    1. 選擇自定義新增頁(yè),設(shè)置頁(yè)面標(biāo)題和背景顏色等面板頁(yè)面顯示效果。
    2. 在左側(cè)導(dǎo)航欄中,選擇

      組件,打開(kāi)組件列表。
    3. 從組件列表中,拖拽一個(gè)矩形組件到畫布上,并配置組件樣式,具體操作參見(jiàn)矩形。
    4. 從組件列表中,拖拽一個(gè)文字組件重疊于矩形組件上,再配置文字組件的數(shù)據(jù)源為氣象監(jiān)測(cè)設(shè)備的溫度屬性,具體操作參見(jiàn)文字。

      設(shè)置完成后,該文字組件將顯示氣象監(jiān)測(cè)設(shè)備上報(bào)的溫度值。

    5. 從組件列表中,拖拽一個(gè)文字組件重疊于矩形組件上,文字內(nèi)容設(shè)置為溫度(℃),作為溫度顯示組件的標(biāo)題。
    6. 選中配置好的三個(gè)組件,單擊鼠標(biāo)右鍵,選擇成組,將這三個(gè)組件組成組件組。

    7. 根據(jù)要展示的屬性數(shù)量,復(fù)制多個(gè)組。

      復(fù)制組件組時(shí),各組件的顯示效果配置和數(shù)據(jù)源配置同時(shí)被復(fù)制。

    8. 對(duì)復(fù)制的組件組單擊鼠標(biāo)右鍵,選擇解散組。

      復(fù)制的組件組所有配置均相同。需先解散組,才能重新配置組件數(shù)據(jù)源等信息。

    9. 分別將數(shù)據(jù)源設(shè)置為該產(chǎn)品的其他屬性,并設(shè)置對(duì)應(yīng)的屬性名稱和單位。
    10. 如有需要,還可在頁(yè)面上增加其他組件,如圖片組件等,參見(jiàn)基礎(chǔ)組件使用說(shuō)明。

      控制面板效果參考圖如下。

    11. 所有組件配置完成后,單擊頁(yè)面上方的

      預(yù)覽,預(yù)覽和測(cè)試應(yīng)用頁(yè)面。
  6. 在Web應(yīng)用編輯器中,新建空白頁(yè)面,配置屬性數(shù)據(jù)曲線展示圖。

    以配置溫度數(shù)據(jù)展示曲線圖為例。

    1. 在左側(cè)導(dǎo)航欄,選擇

      頁(yè)面,再單擊新建符號(hào)+,新增空白頁(yè)面。
    2. 在左側(cè)導(dǎo)航欄,選擇

      組件,拖拽一個(gè)實(shí)時(shí)曲線組件到畫布上,并配置實(shí)時(shí)曲線組件的數(shù)據(jù)源為氣象監(jiān)測(cè)設(shè)備的溫度屬性,具體操作參見(jiàn)實(shí)時(shí)曲線。
    3. 配置曲線圖的顯示樣式。調(diào)整曲線圖大小、坐標(biāo),設(shè)置是否顯示時(shí)間選擇器,設(shè)置系列名稱為溫度等。

      說(shuō)明?如果選中時(shí)間選擇器前的復(fù)選框,表示曲線圖上顯示時(shí)間選擇器。應(yīng)用發(fā)布后,可以設(shè)置時(shí)間,查看對(duì)應(yīng)時(shí)間段的溫度數(shù)據(jù)。

    4. 配置完成后,單擊頁(yè)面上方的

      預(yù)覽,預(yù)覽和測(cè)試應(yīng)用頁(yè)面。
  7. 單擊頁(yè)面上方的

    發(fā)布,發(fā)布應(yīng)用。

后續(xù)步驟

應(yīng)用發(fā)布后,在左側(cè)導(dǎo)航欄中選擇

應(yīng)用設(shè)置,可以開(kāi)啟應(yīng)用Token驗(yàn)證,為應(yīng)用綁定您自己的域名等。

更多Web應(yīng)用可視化開(kāi)發(fā)操作指導(dǎo),請(qǐng)參見(jiàn)Web可視化開(kāi)發(fā)文檔

?

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/123020.html

相關(guān)文章

  • 智能家居實(shí)訓(xùn)

    摘要:致力于建立行業(yè)產(chǎn)品技術(shù)施工等標(biāo)準(zhǔn),為企業(yè)提供行業(yè)信息和技術(shù)交流相關(guān)規(guī)范培訓(xùn)產(chǎn)品服務(wù)展示監(jiān)督檢測(cè)和咨詢服務(wù),維護(hù)會(huì)員單位消費(fèi)者的合法權(quán)益,積極推進(jìn)智能家居行業(yè)的良性可持續(xù)發(fā)展。這是編制并發(fā)布的中國(guó)智能家居生態(tài)發(fā)展白皮書(shū),具有一定的權(quán)威性。 ...

    BothEyes1993 評(píng)論0 收藏0
  • 鴻蒙(HMOS)開(kāi)發(fā)基礎(chǔ)篇(三)開(kāi)發(fā)工具特性介紹

    DevEco Studio特性介紹 1 開(kāi)發(fā)平臺(tái)介紹1.1 應(yīng)用開(kāi)發(fā)1.2 設(shè)備開(kāi)發(fā) 2 分布式應(yīng)用開(kāi)發(fā)2.1 UI設(shè)計(jì)Preview2.2 調(diào)試 X 往期文章 1 開(kāi)發(fā)平臺(tái)介紹 鴻蒙開(kāi)發(fā)包含了分布式應(yīng)用開(kāi)發(fā)和分布式設(shè)備開(kāi)發(fā) 1.1 應(yīng)用開(kāi)發(fā) 鴻蒙應(yīng)用是在多設(shè)備運(yùn)行的,同一個(gè)工程可以在多設(shè)備自適應(yīng),根據(jù)設(shè)備選擇交互方式、UI布局,這個(gè)問(wèn)題還在不斷的發(fā)展和完善,需要開(kāi)發(fā)者共同推進(jìn) 鴻蒙應(yīng)用...

    不知名網(wǎng)友 評(píng)論0 收藏0
  • 開(kāi)發(fā)之路(設(shè)計(jì)模式二:觀察者模式)

    摘要:繼續(xù)我們的設(shè)計(jì)模式學(xué)習(xí),有個(gè)好的觀察者可以讓你開(kāi)發(fā)效率大大提高直接進(jìn)入正題,我們用一個(gè)氣象站程序來(lái)模擬此模式。內(nèi)置了觀察者模式的實(shí)現(xiàn)。 繼續(xù)我們的設(shè)計(jì)模式學(xué)習(xí),有個(gè)好的觀察者可以讓你開(kāi)發(fā)效率大大提高 直接進(jìn)入正題,我們用一個(gè)氣象站程序來(lái)模擬此模式。有一個(gè)氣象站程序,能對(duì)濕度,溫度,氣壓進(jìn)行監(jiān)測(cè)并顯示在顯示裝置上面模擬圖如下,此系統(tǒng)中有三個(gè)部分氣象站:獲取實(shí)際氣象數(shù)據(jù)的裝置Weather...

    n7then 評(píng)論0 收藏0
  • 啟明云端分享:小米智能手環(huán)主控的秘密

    摘要:年末,年即將走進(jìn)尾聲,忙碌了一年準(zhǔn)備給家里人買一份禮物,這些天看了很多產(chǎn)品,最終選定了小米智能手環(huán)。 年末,2021年即將走進(jìn)尾聲,忙碌了一年準(zhǔn)備給家里人買一份禮物...

    wpw 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<