項目四-智慧小區(qū)安全防護系統(tǒng)實訓報告

一、實訓背景

智慧小區(qū)安全防護系統(tǒng)項目的背景主要源于居民安全需求的提升、信息技術(shù)的發(fā)展、居民生活品質(zhì)的追求以及政策支持與引導等多方面因素。通過建設(shè)智慧小區(qū)安全防護系統(tǒng),可以有效提升小區(qū)的安全防護能力,為居民提供更加安全、便捷、舒適的居住環(huán)境。

二、實訓目標

1.創(chuàng)建智慧小區(qū)安全防護系統(tǒng)產(chǎn)品設(shè)備

1.1 實訓目的

1、通過中移OneNET物聯(lián)網(wǎng)開放平臺新建產(chǎn)品(MQTT);
2、根據(jù)項目場景創(chuàng)建產(chǎn)品物模型;
3、創(chuàng)建基于MQTT 的云平臺設(shè)備;
4、查看設(shè)備運行狀態(tài)及數(shù)據(jù)。

1.2 實訓步驟

1.2.1 創(chuàng)建基于 MQTT 協(xié)議的產(chǎn)品

1.通過中移物聯(lián)網(wǎng)首頁的“全部產(chǎn)品服務(wù)”菜單進入 “物聯(lián)網(wǎng)開放平臺”功能頁
image.png

2.創(chuàng)建產(chǎn)品

展開左側(cè)菜單“產(chǎn)品開發(fā)”功能,點擊“創(chuàng)建產(chǎn)品”按鈕,進行產(chǎn)品添加。(如已創(chuàng)建了產(chǎn)品,則展示有產(chǎn)品列表,可繼續(xù)點擊按鈕創(chuàng)建)
image.png

在彈出的頁面中第一步,參考下圖信息,選擇產(chǎn)品品類(不一定必須一致,符合項目任務(wù)背景即可)。第二步選擇智能化方式為“設(shè)備接入”方式。
image.png

在第三步填寫信息中,添加必要的產(chǎn)品信息(標記*號的項)。其中“節(jié)點類型”選擇“直連設(shè)備”,“接入?yún)f(xié)議”選擇“MQTT”,“數(shù)據(jù)協(xié)議”選擇“OneJson”,“聯(lián)網(wǎng)方式”選“Wi-Fi”,“開發(fā)方案”選擇“自定義方案”。
image.png

最后點擊確定,保存各項信息,稍等頁面提示產(chǎn)品創(chuàng)建成功。
image.png

1.2.2 根據(jù)項目場景創(chuàng)建產(chǎn)品物模型
1.進入產(chǎn)品開發(fā)詳情頁面
2.進入物模型管理頁面
3.添加系統(tǒng)功能點
4.添加自定義功能點
5.檢查并保存創(chuàng)建的物模型


image.png

添加完成如圖所示
image.png

1.2.3創(chuàng)建基于MQTT的設(shè)備
1.進入設(shè)備管理頁面
image.png

2.添加一個設(shè)備的信息,用于真實設(shè)備接入
image.png

image.png

3.再添加一個設(shè)備的信息,用于模擬工具接入
image.png

1.2.4設(shè)備狀態(tài)及信息查看
1.查看設(shè)備運行狀態(tài)
image.png

image.png

2.查看設(shè)備詳細信息
image.png

image.png

3.查看設(shè)備日志
image.png

image.png

2.智慧小區(qū)安全防護系統(tǒng)模擬設(shè)備接入

2.1 實訓目的

1、通過模擬工具調(diào)試設(shè)備接入
2、通過模擬設(shè)備,實現(xiàn)屬性上報
3、OneNET 平臺下發(fā)屬性值(命令)到模擬設(shè)備

2.1實訓步驟

2.1.1模擬設(shè)備接入OneNET 平臺
1.獲取產(chǎn)品、設(shè)備的必要信息(產(chǎn)品 ID、設(shè)備名稱、設(shè)備密鑰)

2.使用官方 Token 計算工具,獲得驗證 token 信息
image.png

3.安裝并配置 MQTT.fx 工具模擬設(shè)備信息(下載并安裝“實訓資料包\工具包\MQTT 客戶端”路徑下的“mqttfx-1.7.1-windows-x64.exe”應用程序。安裝完畢后,雙擊桌面建立的MQTT.fx 快捷方式,運行MQTT.fx 客戶端:)
點擊界面齒輪圖標,進入客戶端配置頁面:
image.png

(1) 設(shè)置 Profile Name:可設(shè)置一個便于記憶的名字,如“某某產(chǎn)品某某設(shè)備接入模擬”
(2) 設(shè)置 Broker Address:mqtts.heclouds.com (MQTT 設(shè)備接入平臺網(wǎng)址)
(3) 設(shè)置 Broker 端口:1883 (本次實訓任務(wù)采用非 TLS 加密的 MQTT 連接)
(4) 設(shè)置 Client ID:{設(shè)備名稱}(前一個步驟中確定的設(shè)備名稱填入此處)在下方
的第一個選項頁“General”中設(shè)置。
(5)MQTT 協(xié)議版本號:取消默認勾中,確保下方版本選擇下拉框可選,并選擇為 3.1.1點擊 “User Credentials”選項頁,繼續(xù)設(shè)置。
(6) 設(shè)置 User Name:{產(chǎn)品 ID}(前一個步驟中確定的產(chǎn)品 ID)
(7) 設(shè)置 Password:{token} (前一個步驟中計算得到的 token)
(8)點擊OK 保存連接配置。

4.使用 MQTT.fx 工具模擬設(shè)備接入(運行 MQTT.fx 工具,點擊選擇剛剛保存的連接配置列表項,點擊“Connect”,如果一切正常,工具將很快登陸接入OneNET 平臺,此時 Connect 按鈕變灰,右側(cè) Disconnect 按鈕處于激活狀態(tài)。)
image.png

提示:可以點擊”Log“ 選項頁,查看工具連接服務(wù)端的情況,正常連接成功則提示類似如下圖紅框所示信息。
image.png

image.png

當工具顯示正常連接后,查看OneNET 平臺中當前模擬的設(shè)備在頁面顯示為在線狀態(tài)
image.png

5.斷開 MQTT.fx 工具模擬,查看 OneNET 平臺中設(shè)備的狀態(tài)變化(點擊 MQTT 工具窗口中的 “Disconnect”按鈕,斷開工具的 MQTT 連接,等待一會兒后,刷新OneNET平臺中設(shè)備列表頁面,查看顯示的設(shè)備狀態(tài)信息:可以看到其狀態(tài)都變?yōu)殡x線。)
image.png

2.2.2 模擬設(shè)備接入OneNET 平臺實現(xiàn)屬性上報

1.訂閱屬性上報結(jié)果通知消息
image.png
image.png

2.發(fā)送屬性上報消息
image.png

在下空白編輯區(qū)中,輸入如下內(nèi)容:
image.png

輸入并檢查無誤后,點擊“Publish”按鈕。
image.png

3.查看屬性上報結(jié)果
image.png

4.OneNET 平臺中查看設(shè)備的屬性最新值
image.png

2.2.3 OneNET 平臺下發(fā)屬性值到模擬工具
1.訂閱接收平臺下發(fā)屬性數(shù)據(jù)的 topic
image.png

2.OneNET 平臺下發(fā)屬性數(shù)據(jù)
image.png
image.png

3.模擬設(shè)備中查看收到的屬性數(shù)據(jù)值
image.png

3.基于真實設(shè)備接入 OneNET 平臺

3.1 實訓目的

1、基于真實設(shè)備,搭建軟硬件環(huán)境,接入 OneNET 平臺并實現(xiàn)設(shè)備屬性上報
2、通過OneNET 平臺的“設(shè)備調(diào)試”實現(xiàn)設(shè)備屬性下發(fā)
3、通過OneNET 平臺的“API 調(diào)試”實現(xiàn)設(shè)備屬性下發(fā)
4、直接基于API 方式實現(xiàn)設(shè)備屬性下發(fā)

3.1實訓步驟

3.2.1 真實設(shè)備接入OneNET 平臺實現(xiàn)屬性上報
1.基于 OneNET 物聯(lián)網(wǎng)實驗箱搭建實訓項目終端硬件平臺

  1. 終端設(shè)備軟件系統(tǒng)搭建
    (1) 運行 Keil uVision5 應用程序
    (2) 載入項目三終端設(shè)備側(cè)代碼工程
    3.修改設(shè)備程序的 OneNET 平臺網(wǎng)絡(luò)接入配置參數(shù)

    修改如下幾處代碼,讓工程具備正確的網(wǎng)絡(luò)訪問以及 OneNET 平臺接入驗證和適配本次實訓任務(wù)所需的物模型數(shù)據(jù)屬性上報、寫入能力。具體代碼文件在工程中的位置如下圖所示:
    image.png

    (1)工程相對路徑\device\src\net_device.c 約 677 行處,將{wifi}、{password}替換為設(shè)備所在 Wifi 網(wǎng)絡(luò)用戶名和密碼(將{}括號一起替換,下同)
    image.png

    (2)工程相對路徑\onenet\src\onenet.c 約 56 行處,依次修改{設(shè)備密鑰}、{產(chǎn)品 id}、{設(shè)備名稱}為之前步驟中在 OneNET 平臺 中所創(chuàng)建的產(chǎn)品、設(shè)備相關(guān)信息,本例中設(shè)備名稱就是之前步驟中創(chuàng)建的“Controller”設(shè)備,并對應填入其設(shè)備密鑰
    image.png

    4.修改設(shè)備程序的上報屬性值映射關(guān)系以及 OneNET 平臺下發(fā)屬性生效命令處理代碼

    (1)工程相對路徑\applications\application.c 約 132 行處,根據(jù)之前步驟中在 OneNET 平臺中所創(chuàng)建的物模型信息,依次增加屬性點標識符以及對應需上報的設(shè)備數(shù)據(jù)變量,如下所示:
    image.png

    (2)工程相對路徑\onenet\src\cmd_callback.c 約 51 行處,根據(jù)之前步驟中在OneNET 平臺 中所創(chuàng)建的物模型信息,增改此處的屬性點標識符,對應設(shè)置需寫入生效的設(shè)備數(shù)據(jù)處理函數(shù)名,并同時實現(xiàn)該函數(shù)的聲明以及具體函數(shù)代碼,完成寫入信息在本地設(shè)備上的實際生效邏輯
    image.png

    (3)在文件適當位置增加該方法的具體實現(xiàn)邏輯代碼:
    image.png

    5.編譯工程,連接下載器燒寫程序到設(shè)備中
    6.OneNET 平臺側(cè)查看設(shè)備狀態(tài)
    image.png

    7.OneNET 平臺側(cè)查看設(shè)備上報數(shù)據(jù)信息
    image.png

    3.2.2基于真實設(shè)備接入 OneNET 平臺
    1.下發(fā)屬性在終端設(shè)備上執(zhí)行生效(設(shè)備調(diào)試)
    (1)設(shè)備端軟硬件環(huán)境準備

    沿用上一個實訓任務(wù)中搭建的設(shè)備硬件系統(tǒng),以及繼續(xù)使用 Keil5 開發(fā)工具載入的項目三終端設(shè)備側(cè)代碼工程(該工程代碼在完成上一實訓任務(wù)后,已經(jīng)能夠接入 OneNET 平臺并上報屬性點數(shù)據(jù))。
    將設(shè)備上電,等待OneNET 平臺 中顯示該設(shè)備處于上線狀態(tài),進入下一實訓步驟。
    (2)通過 OneNET平臺 的設(shè)備調(diào)試方式進行屬性下發(fā)
    打開設(shè)備管理列表頁面,選擇之前步驟中創(chuàng)建的MQTT產(chǎn)品下的“Controller”設(shè)備,點擊“詳情”進入設(shè)備詳情頁面,并點擊 “設(shè)備調(diào)試”選項,進入 OneNET 平臺 的設(shè)備調(diào)試功能頁面。本任務(wù)中,需要切換調(diào)試方式為“應用模擬器”,下方頁面展示了可以設(shè)置的屬性(物模型中可寫的屬性功能點)。


    image.png
    image.png

    先勾選一個功能點,然后設(shè)置下發(fā)的數(shù)值。(以蜂鳴器為例,這是一個 bool 型功能點,勾選后,可設(shè)置值為 true、false 兩個之一,本次任務(wù)選擇 true 作為下發(fā)數(shù)值)點擊頁面下方的“屬性設(shè)置”按鈕,右側(cè)調(diào)試日志展示了下發(fā)的報文,設(shè)備端也同時將該數(shù)值執(zhí)行生效。
    image.png

    2.下發(fā)屬性在終端設(shè)備上執(zhí)行生效(API 調(diào)試)
    (1)設(shè)備端軟硬件環(huán)境準備(同上)
    (2)進入“API 調(diào)試”功能頁面
    點擊“運維監(jiān)控”菜單下“API 調(diào)試”子菜單,并展開工作頁面左列顯示的大類調(diào)試類別中的“物模型使用”下拉列表,選擇“設(shè)置設(shè)備屬性”API項,如下圖所示:
    image.png

    在中間頁面展示的必填參數(shù)中,填寫頁面中輸入必要的參數(shù),如下圖所示,本次任務(wù)中,填入真實接入的設(shè)備“Controller”所對應的相關(guān)信息:
    image.png

    其中的params內(nèi)容填寫要設(shè)置的屬性標識符以及對應設(shè)置值,本次任務(wù)中設(shè)置蜂鳴器狀態(tài)為true,文本示例參考如下:
    {
    "beep": true
    }
    image.png

    3.基于API 方式實現(xiàn)設(shè)備屬性下發(fā)
    (1)準備 API 接口調(diào)試工具 Postman
    (2)查閱接口文檔,了解有關(guān)屬性下發(fā)的 API 調(diào)用方式
    點擊前面任務(wù)中API“設(shè)置設(shè)備屬性”參數(shù)填寫頁面左上角的“查看API文檔”鏈接,查看右側(cè)顯示的API文檔,了解“設(shè)置設(shè)備屬性”這個API的調(diào)用方式及對應的請求、響應相關(guān)參數(shù)信息。
    image.png

    (3)填入必要參數(shù)
    ①.根據(jù)API文檔的信息,確定設(shè)備屬性設(shè)置的請求方式、請求 url ,填入到 Postman 工具url填寫欄,將 Postman工具url填寫欄前面的下拉選項改為“POST”。
    ②.確定請求 body 內(nèi)容及格式,以蜂鳴器屬性值(beep)下發(fā)為例, product_id為產(chǎn)品ID,device_name為設(shè)備名稱,params 為需要下發(fā)的結(jié)構(gòu)化數(shù)據(jù),同時包含了要下發(fā)的“beep”屬性點的值,示例中為 true 數(shù)據(jù)。以鍵值對形式將上述需要設(shè)置的具體參數(shù)組裝為 body 報文內(nèi)容,最終填入 Postman 工具的 Body 選項頁內(nèi)。
    {
    "product_id": "84qVvid4b5",
    "device_name": "Controller",

    "params":
    {
    "beep": true
    }

    ③.確定請求的 Header 內(nèi)容,這里需要一個向 OneNET 平臺鑒權(quán)所需的必要信息字段,就
    是“authorization ”信息,下面是該信息的一個生成示例,具體生成方式可參考其他實訓任務(wù)
    環(huán)節(jié)中的操作步驟指導,應用側(cè)請求鑒權(quán),res 參數(shù)須以“userid/ 用戶 ID”的格式填入,版本
    號須為“2022-05-01”,字段具體內(nèi)容根據(jù)實際情況進行填入。
    (4)發(fā)起 API 請求,查看結(jié)果

    發(fā)起請求前確認當前真實設(shè)備已在線,以蜂鳴器屬性值(beep)下發(fā)為例,通過 postman 發(fā)起請求, 通過平臺鑒權(quán)后,該請求會下發(fā)到對應的真實設(shè)備,打開蜂鳴器開關(guān),蜂鳴器會按照程序里預置的邏輯進行鳴響。
    image.png

    (5)更改 api 報文,對同樣屬性點,設(shè)置新的屬性值,并下發(fā)
    以蜂鳴器屬性值(beep)下發(fā)為例,更改下發(fā)的屬性值為 false,報文如下:
    {
    "product_id": "***********",
    "device_name": "Controller",
    "params": {
    "beep": false
    }
    }
    再次通過 postman 發(fā)起請求,通過平臺鑒權(quán)后,該請求會下發(fā)到對應的真實設(shè)備,蜂鳴器關(guān)閉。
    image.png

    4.基于OneNET 云平臺的場景聯(lián)動
    (1)進入 OneNET 平臺 場景聯(lián)動管理功能
    檢查實驗箱目前搭建的硬件系統(tǒng)是“核心模塊”以及“Wifi 模塊”、“蜂鳴器模塊”、 “超聲波模塊”等模塊,燒寫程序上電運行。
    確保用戶已登錄 OneNET 云平臺,進入 OneNET 平臺 控制臺頁面,點擊“數(shù)據(jù)流轉(zhuǎn)”菜單下“場景聯(lián)動”子菜單,進入場景聯(lián)動管理功能頁面。
    (2)創(chuàng)建場景聯(lián)動規(guī)則
    場景聯(lián)動是一種開發(fā)自動化業(yè)務(wù)邏輯的編程方式,目前支持設(shè)備、時間、第三方數(shù)據(jù)源等多維度的條件觸發(fā),這些觸發(fā)條件以及執(zhí)行動作組合起來,形成一套規(guī)則。點擊頁面右上角“新建場景”,填寫場景名稱,這里我們需要一個“距離太近告警”的場景,點擊添加進入下一步。
    image.png

    (3)編輯距離探測告警的聯(lián)動規(guī)則
    如果是初次創(chuàng)建,這里直接展示的觸發(fā)條件以及執(zhí)行動作編輯頁面。
    首先選擇觸發(fā)條件為:滿足全部條件執(zhí)行,其次在“條件一”內(nèi)容中,依次選擇:
    ①.觸發(fā)方式:“設(shè)備觸發(fā)”
    ②.選擇產(chǎn)品分組:“選擇產(chǎn)品”
    ③.選擇具體產(chǎn)品:選擇之前實訓任務(wù)中創(chuàng)建的MQTT產(chǎn)品名稱
    ④.選擇設(shè)備: 選擇該產(chǎn)品下的Controller設(shè)備
    ⑤.選擇信息源類型:“設(shè)備功能點”
    ⑥.選擇功能:選擇該產(chǎn)品下的“距離”數(shù)據(jù)點
    ⑦.修改關(guān)系運算符:“<”
    ⑧.數(shù)值:填入“5”(雙引號不要填)
    image.png

    其次點擊增加“執(zhí)行動作”,在“動作一”內(nèi)容中,依次選擇:
    ①.選擇動作類型:“設(shè)備執(zhí)行”
    ②.選擇產(chǎn)品分組:“選擇產(chǎn)品”
    ③.選擇具體產(chǎn)品:選擇之前實訓任務(wù)中創(chuàng)建的MQTT產(chǎn)品名稱
    ④.選擇設(shè)備: 選擇該產(chǎn)品下的Controller設(shè)備
    ⑤.選擇功能:選擇該產(chǎn)品下的“蜂鳴器”
    ⑥.數(shù)據(jù)值選擇“1”。
    image.png

    點擊“確定”創(chuàng)建好改場景信息,并修改其啟用狀態(tài)為“開”。
    image.png

    (4)再新增一個聯(lián)動規(guī)則,實現(xiàn)距離安全時取消告警
    參考步驟 3 描述,再新增一個聯(lián)動規(guī)則,名稱可以為“距離安全取消告警”。該規(guī)則的具體條件及動作與步驟3大部分相同,除了其中的條件部分,距離邏輯判斷修改為“>”,數(shù)值為“20”,執(zhí)行動作部分,蜂鳴器的數(shù)值改為“0”。最后點擊“確認”按鈕,并同樣將該條場景規(guī)則的啟用狀態(tài)修改為“開”,完成本次編輯內(nèi)容。
    image.png

    (5)設(shè)備上線,觀察場景實現(xiàn)效果
    image.png

4.安全防護系統(tǒng)的可視化實現(xiàn)

4.1 實訓目的

1、學會OneNET 平臺數(shù)據(jù)可視化編輯器的使用
2、能夠進行可視化數(shù)據(jù)源的配置
3、對智慧小區(qū)安全防護系統(tǒng)進行可視化展現(xiàn)

4.2實訓步驟

4.2.1物聯(lián)網(wǎng)云平臺可視化組件配置運用
1.創(chuàng)建一個可視化項目

點擊”數(shù)據(jù)可視化 view“菜單后,點擊“立即試用”按鈕進入。新增一個可視化項目,在彈出的模板選擇頁面,選擇一個 2D 項目模板下的“空白模板”作為本次項目可視化的基礎(chǔ)模板,填寫位于右側(cè)的項目名稱、項目描述后,點擊“確定”完成可視化項目創(chuàng)建。
image.png

2.增加數(shù)據(jù)源模板
image.png

(1) 名稱,設(shè)置數(shù)據(jù)源的名稱,注意不能是中文,該名稱將作為關(guān)鍵字與數(shù)據(jù)一起傳遞到可視化組件頁面中解析。比如下圖所示,設(shè)為“distance”。
(2) userId:填寫用戶ID;
(3) accessKey:填寫用戶的accessKey;該項與上一項均需進入用戶中心、“訪問權(quán)限”頁面查看獲取。
(4) 產(chǎn)品ID:為之前任務(wù)中創(chuàng)建的產(chǎn)品ID;
(5) 設(shè)備名稱:點選輸入框,等待平臺將上述已經(jīng)填寫的3項內(nèi)容作為條件匹配查找設(shè)備,并將符合的設(shè)備以下拉的方式展示,以本次任務(wù)為例,顯示了之前實訓環(huán)節(jié)的設(shè)備“Controller”,選中該設(shè)備。
(6) 數(shù)據(jù)流:選擇一個設(shè)備中可以用于讀取的屬性功能名作為數(shù)據(jù)產(chǎn)生點。本例中選擇“距離”。點擊“創(chuàng)建”按鈕,耐心等待平臺返回創(chuàng)建結(jié)果。


image.png

3.選擇一個模板自定義頁面和組件
image.png

4.設(shè)置圖表的數(shù)據(jù)來源
image.png

image.png

image.png

注:設(shè)置不使用數(shù)據(jù)過濾器

5.點擊“數(shù)據(jù)處理結(jié)果”按鈕,查看彈出的窗口中展示的數(shù)據(jù),這些數(shù)據(jù)就是設(shè)備定時上報的屬性點形成的(圖例中的 value對應的值,就是上報的間隔距離值)。關(guān)閉彈出窗口繼續(xù)下一步。
image.png

6.設(shè)置圖表的橫軸列展示字段名與數(shù)據(jù)提供字段相匹配
現(xiàn)在切換回“樣式”屬性 Tab 頁。展開“數(shù)據(jù)系列”的節(jié)點,修改列字段名為“value”,保持與數(shù)據(jù)源中提供的數(shù)值字段“value”相一致。
7.預覽可視化視圖并回到編輯狀態(tài)迭代優(yōu)化視圖效果
編輯視圖界面,可以看到折線圖已顯示出實際的折線數(shù)據(jù)圖表,可以點擊右上角“預覽”按鈕,在全頁面狀態(tài)下查看整個可視化視圖的效果。
8.保存視圖,完成可視化項目
image.png

三、實訓總結(jié)

1.通過中移OneNET物聯(lián)網(wǎng)開放平臺 新建產(chǎn)品(MQTT);
2.根據(jù)項目場景創(chuàng)建產(chǎn)品物模型;
3創(chuàng)建基于MQTT 的云平臺設(shè)備;
4.查看設(shè)備運行狀態(tài)及數(shù)據(jù)。
5.通過模擬工具調(diào)試設(shè)備接入;
6.通過模擬設(shè)備,實現(xiàn)屬性上報;
7.OneNET 平臺下發(fā)屬性值(命令)到模擬設(shè)備;
8.基于設(shè)備工程,實現(xiàn) OneNET 平臺下發(fā)屬性在終端設(shè)備上執(zhí)行生效;
9.基于API 方式實現(xiàn)設(shè)備屬性下發(fā);
10.學會OneNET 平臺數(shù)據(jù)可視化編輯器的使用;
11.能夠進行可視化數(shù)據(jù)源的配置;
12.對智慧小區(qū)安全防護系統(tǒng)進行可視化展現(xiàn)。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容