1. 程式人生 > >國內物聯網平臺(3)——QQ物聯·智慧硬體開放平臺

國內物聯網平臺(3)——QQ物聯·智慧硬體開放平臺

         國內物聯網平臺(3)——QQ物聯·智慧硬體開放平臺

 

作者:馬智

平臺定位

  • 將QQ帳號體系、好友關係鏈、QQ訊息通道及音視訊服務等核心能力提供給可穿戴裝置、智慧家居、智慧車載、傳統硬體等領域的合作伙伴,實現使用者與裝置、裝置與裝置、裝置與服務之間的聯動。
  • 實現使用者與裝置及裝置與裝置之間的互聯互通互動,充分利用和發揮騰訊QQ的億萬手機客戶端及雲服務的優勢,更大範圍幫助傳統行業實現網際網路化。

 

應用場景

  • 音視訊類產品    (網路攝像機(監控、看護) 、行車記錄儀、可視門鈴)    
  • 溝通互動類產品(語音對講手錶、兒童早教機、社交電視、電子相框)
  • 資料採集類產品(體重秤、溫度計、空氣檢測器、手環)
  • 無線控制類產品( 音箱、空氣淨化器、燈泡、插座、門鎖 )

 

應用場景 - 音視訊類產品

應用產品形態:

網路攝像機(監控、看護) 、行車記錄儀、可視門鈴

功能簡介:

* 實時無線遠端觀看視訊(支援多人同時)

* 裝置本地歷史視訊無線檢視

* 實時語音對講、非同步語音留言

* 自由配置各類動態或預製訊息推送(如:入侵報警、車輛擦碰通知、嬰兒哭聲通知等)

* 雲臺方向控制

* 清晰度調整

* 畫面截圖

* 韌體線上升級

 

應用場景 - 溝通互動類產品

應用產品形態:

語音對講手錶、兒童早教機、社交電視、電子相框

功能簡介:

* 雙人語音雙向留言

* 雙人視訊雙向留言

* 雙人實時視訊聊天

* 雙人實時語音聊天

* 家庭群聊,人與裝置加入同一個討論組,支援語音、視訊、圖片、文字等多種溝通方式

* 相片拍攝及推送

* 韌體線上升級

 

應用場景 - 資料採集類產品

應用產品形態:

體重秤、溫度計、空氣檢測器、手環

功能簡介:

* 近場或遠端實時檢視各類資料

* 歷史資料指標檢視

* 多人資料共享

* 特定資料指標超標通知(支援文字、圖片、語音、視訊多種通知方式)

* 內容分享至QQ好友、群、微信好友、朋友圈

* 韌體線上升級

 

應用場景 - 無線控制類產品

應用產品形態:

音箱、空氣淨化器、燈泡、插座、門鎖

功能簡介:

* 裝置開關、不同模式切換等不限形式和功能的控制信令(如,音量調節、淨化功能定時開啟、燈泡調色等)

* 裝置狀態通知 (如,電量低提示、空氣PM2.5超標通知、陌生人進入通知等)

* 家居裝置家庭成員共享

* 韌體線上升級

 

功能

功能 - 快速接入物聯網

自動發現附近新裝置並繫結

 

掃描二維碼發現並繫結

 

功能 - APP研發及維護

 

 

輕APP提供裝置所需的基礎框架能力

 

功能 - 訊息/檔案通道能力

 

支援裝置通過QQ直接觸達使用者

 

 

功能 - 許可權共享及管理能力

 

裝置主人快速授權給好友

 

好友通過QQ訊息確認後自動獲得許可權

 

 

功能 - 音視訊互動能力

QQ物聯將騰訊積累優化多年的核心音視訊能力開放給硬體裝置,讓具備音視訊採集及播放的裝置,能夠通過音視訊通道,擴展出裝置與使用者溝通互動的新玩法。

 

部署框架

  • 可獨立聯網裝置(WIFI、GSM連線方式)

    • 嵌入QQ物聯硬體SDK或直接使用QQ物聯的整合模組後,可以直接與QQ物聯雲連線,開發者不需要必須具備獨立APP或雲端的研發能力。而對於有相應能力的開發者,QQ物聯提供相應的SDK或介面,可以完成對於私有獨立APP或雲的對接。
  • 藍芽裝置

    • 嵌入QQ物聯硬體SDK或直接使用QQ物聯的整合模組後,可以與QQ手機版相連,由QQ手機版與雲端完成通道的建立,開發者不需要必須具備獨立APP或雲端的研發能力。而對於有相應能力的開發者,QQ物聯提供相應SDK或介面,可以完成對於私有獨立APP或雲的對接。

 

 

概念解釋

  • DIN(device identify number: 裝置ID)

裝置端概念: 通俗的理解為智慧裝置的QQ號,每一臺智慧裝置在QQ物聯平臺中都可以獲得一個獨立的QQ號碼,跟大家平時使用的QQ號碼唯一的區別就是這個號碼是64位的,而平常見到的QQ號碼都是32位的。

  • PID( product id:產品ID )

裝置端概念: 接入QQ物聯的每一款智慧裝置都有一個獨立的PID。雖然每一臺獨立的裝置都有一個唯一的DIN,但同一款型號的裝置其PID則是相同的,比如您旗下有兩款不同型號的產品,那麼就可以有兩個獨立的PID,QQ物聯雲根據PID來定位是哪個合作方的哪款產品,所以有PID 和 SN之後,QQ物聯雲就可以唯一確定一臺智慧裝置,這也是為什麼QQ物聯的裝置二維碼是由這兩個資訊組成的。

  • SN ( serial number:序列號 早期亦稱為:GUID)

裝置端概念: 每臺裝置都應該有一個唯一的序列號,序列號並不需要騰訊後臺分配,所以您可以直接對接原有產品線的序列號系統,但是我們對序列號格式有嚴格要求:長度必須是16個字元的字母、數字、下劃線、連詞符或者冒號的組合,例如ABC-0032-1234567就是一個非常標準的序列號。

  • LICENSE ( 與SN一一對應的認證簽名 )

裝置端概念: license是對sn的數字簽名,所以與sn是一一對應的,它存在的主要目的是保護合作方的利益,避免冒充合作方品牌的山寨裝置出現,license的產生可以藉助客戶端工具實現。

  • DATAPOINT(資料點)

雲端概念:為了確保接入QQ物聯雲的各種智慧裝置都能夠相互理解彼此的資料,QQ物聯推薦裝置間的信令和狀態採用統一標準的資料格式——datapoint,datapoint為每一種型別的資料(感測器之溫度,攝像頭之解析度,電視機之音量大小等)都定義了一個id,而且定義了這種id的資料組織格式。所以不管是QQ物聯雲,還是智慧裝置,或者是您的資料分析介面,都可以先根據id確定資料格式,再根據格式解析資料。

  • SDK

分為裝置SDK和應用SDK

- 裝置SDK:用於智慧硬體端的元件,提供了登入/登出,收/發訊息,音視訊傳輸等基礎能力。

- 應用SDK:用於整合到使用者的獨立App中,使用QQ或者微信登入元件,呼叫騰訊開放介面,幫助使用者節約開發成本。目前應用SDK還僅提供騰訊內部團隊使用。

 

 

平臺接入流程

 

 

平臺功能與介面 - 設備註冊

1、新增新裝置

 

2、填寫裝置資訊

 

3、設定控制器

 

 

平臺功能與介面 - 功能配置

2、功能詳情

 

關鍵技術 - 裝置配網方式

  • WiFi Router:裝置自行解決入網問題,適用於有螢幕的智慧裝置(使用者可以直接在螢幕上設定WiFi)。
  • SmartLink:博通合作方案,博通的大部分WiFi晶片上有原生支援,如果您是採用了博通的WiFi解決方案,推薦您直接聯絡博通技術支援索要最新的韌體進行升級即可。
  • SmartLinkEx:跟SmartLink採用了同樣的解決方案,不同之處是此選項會採用聲波通訊技術協同配網,提高極端環境下的配網成功率,如果您的裝置有麥克風,建議選擇此方案。
  • QQLink:SmartLink的弱加密版本,SmartLink對加密方式有較高要求,要求裝置必須支援AES-CCM加密庫,由於在博通的晶片中有內嵌支援,所以如果你採用了博通WiFi晶片,無需考慮這個問題。但是如果您採用的不是博通WiFi晶片,在不想更換的情況下預實現SmartLink,建議您採用QQLink。
  • QQLinkEx:跟QQLink採用了採用了同樣的解決方案,不同之處是此選項會採用聲波通訊技術協同配網,提高極端環境下的配網成功率。

 

 

關鍵技術 - Datapoint狀態同步

應用場景:

智慧裝置的狀態資訊要如何同步到手機QQ,比如空調上的室內溫度,比如門鎖的開關狀態,或者是SD卡格式化的進度等等。

如果直接讓智慧裝置發CC訊息(CC訊息是騰訊內部的簡稱,全稱是Client To Client Message) 給手機QQ同步資訊,會存在以下問題:

(1)一臺智慧裝置可能會有多個繫結者,狀態的同步是不能只同步給一個繫結者的,所以用發訊息的方案會需要知道所有繫結者,然後挨個傳送一遍。

(2)狀態的變更有可能是頻繁的,很多情況下最後一次的狀態才是最重要的,而QQ的訊息通道是以可靠不丟訊息為設計目標的,這就意味著您可能在早晨起床喚起QQ後收到上千條狀態訊息。

因此,平臺提供了下圖的同步機制。

 

關鍵技術 - 韌體OTA升級

 

裝置SDK

目前提供以下幾類裝置SDK:

  • Linux SDK
  • Android SDK
  • BLE SDK
  • RTOS SDK
  • 區域網通訊SDK

WIFI及GSM硬體SDK基本情況

 

Linux版推薦方案:

1.WIFI晶片:博通 BCM43438-wifi/BT combo、BCM43362-wifi only(持續更新中)

2.SOC:海思 Hi3518系列、安凱 AK3918、全志 V3、Intel Edison、高通 AR9331(持續更新中)

RTOS版推薦方案:

CC3200、realtek8711、stm32f411、MT6260D、HFMC101、nl6621(持續更新中)

藍芽推薦方案:

Nordic nrf51822、CC2541、DA1458X、CSR101X、QN9020、BCM920737(持續更新中)

 

 

輕APP

  • QQ物聯輕APP即為使用者在用手機端操作裝置時,主要的控制介面。當用戶綁定了某款智慧裝置後,在"我的裝置"列表中,點選該款裝置,進入的第一個介面即為該款裝置的輕APP。
  • 輕APP目前分為兩種主要形式:

    • 公共模板:QQ物聯為垂直的裝置類別官方設計並開發的輕APP,能夠滿足該型別裝置的基本通用功能。選用公共模板可以極大節省合作伙伴在軟體端的研發及維護成本,縮短產品研發週期。
    • 自定義H5:對於有更多個性化需求的合作伙伴,若有H5(Html5)的研發能力,可以根據QQ物聯的設計規範及deciveAPI(JavaScript介面)來實現更加定製化的輕APP。自定義H5需要合作伙伴將頁面釋出到自有的伺服器,將頁面url地址提交到平臺,即可完成在QQ中直接內嵌使用。

 

 

輕APP設計規範 - 官方公共模板設計參考

 

 

 

 

輕APP設計規範 - 自定義H5設計規範

 

 

 

輕APP設計規範 - 自定義H5設計規範

 

 

輕APP設計規範 - 多層級H5設計規範

 

 

 

輕APP設計規範 - 多層級H5設計規範

 

 

前端Device API

  • deviceAPI是為輕APP提供的用於控制裝置的前端JS介面,具備傳送訊息、接收訊息等基礎能力,也有視訊通話、圖片上傳、分享等特有能力。開發者可用它高效地與裝置通訊,為使用者提供更優質的體驗。

 

引入JS檔案

在輕APP頁面中引入deviceAPI的JS檔案:

http://qzonestyle.gtimg.cn/open/mobile/light_app/js/device.js

示例:

<script src="http://qzonestyle.gtimg.cn/open/mobile/light_app/js/device.js"></script>

注意: deviceAPI暴露了一個全域性名稱空間device,所有介面均用device訪問。

 原文地址:http://www.cnblogs.com/ibrahim/p/qq-iot.html

希望對你有幫助。