微信硬件平臺
概述
微信硬件平臺介紹
微信硬件平臺是微信在連接人升略、連接企業(yè)和服務(wù)之后血淌,推出的連接硬件設(shè)備的物聯(lián)網(wǎng)解決方案注祖。微信硬件平臺以微信用戶ID體系為基礎(chǔ)皱碘,以用戶價值為依歸询一,立志于打造用戶和設(shè)備廠家共贏的物聯(lián)平臺,實現(xiàn)人,設(shè)備健蕊、廠家的互聯(lián)互通菱阵。
通過微信硬件平臺提供的AirSync、AirKiss缩功、硬件JSAPI晴及、直連SDK等技術(shù),藍(lán)牙設(shè)備嫡锌、Wi-Fi設(shè)備與移動網(wǎng)絡(luò)設(shè)備等智能設(shè)備都能便捷地實現(xiàn)與微信之間的互聯(lián)和通訊虑稼,用戶可以通過公眾號查看和控制自己的手環(huán)、電視势木、空調(diào)和其它智能家電等蛛倦。
智能設(shè)備能夠通過各種方式與微信綁定,如:掃描設(shè)備二維碼跟压、調(diào)用JSAPI與用戶建立對應(yīng)關(guān)系等胰蝠。硬件設(shè)備廠商可以因此準(zhǔn)確地了解到設(shè)備用戶的相關(guān)信息。
此外震蒋,微信硬件平臺向智能設(shè)備提供了多種增值服務(wù)茸塞,包括社交元素、模式識別技術(shù)等查剖,設(shè)備廠家可為用戶提供更多的服務(wù)钾虐,以提升用戶黏性。
微信硬件平臺的優(yōu)勢
微信硬件平臺為設(shè)備提供直連數(shù)據(jù)通道笋庄,設(shè)備可以通過直連SDK直接接入微信硬件服務(wù)器效扫,將大大減輕設(shè)備廠家接入難度與研發(fā)投入負(fù)擔(dān)、縮短產(chǎn)品上市周期直砂。
微信擁有完善的ID體系菌仁。接入微信硬件平臺即意味著第三方設(shè)備能夠使用微信的各類ID體系。
微信為第三方提供了輕應(yīng)用形式的開發(fā)方案静暂。結(jié)合標(biāo)準(zhǔn)微信JSAPI和微信硬件平臺特有的API济丘,硬件廠商可以快速構(gòu)建自己的輕應(yīng)用。
微信擁有數(shù)量龐大的活躍用戶洽蛀。有利于硬件設(shè)備口碑傳播的同時摹迷,App推廣的成本也將大幅降低。
微信硬件平臺為第三方提供了O2O的便捷郊供。設(shè)備廠商可以在公眾號上建立微信小店峡碉,根據(jù)設(shè)備運(yùn)行情況,定期提供配件和耗材的購買服務(wù)驮审,為用戶提供更好的服務(wù)體驗鲫寄。
接入方案介紹
設(shè)備接入方案即設(shè)備接入微信硬件平臺使用的數(shù)據(jù)傳輸方案吉执,目前包含平臺基礎(chǔ)接入方案與微信硬件云標(biāo)準(zhǔn)接入方案。
-
1.平臺基礎(chǔ)接入方案
適用對象:
(1)擁有后臺服務(wù)器的設(shè)備廠商
(2)希望在公眾號體系內(nèi)獨(dú)立實現(xiàn)設(shè)備相關(guān)功能(即不需要微信硬件平臺提供的產(chǎn)品標(biāo)準(zhǔn)能力)
(3)希望設(shè)備可以收發(fā)微信消息(圖片/音樂/文件/地理位置等)微信硬件平臺是基于微信公眾平臺基礎(chǔ)構(gòu)建的塔拳,微信公眾平臺基礎(chǔ)技術(shù)架構(gòu)如圖1所示鼠证。
圖1 微信公眾平臺技術(shù)架構(gòu)公眾號運(yùn)營分為編輯模式和開發(fā)模式。
在編輯模式下靠抑,公眾號運(yùn)營者登錄微信公眾號管理頁面量九,通過手動方式編輯消息和管理用戶。
在開發(fā)模式下颂碧,運(yùn)營者可以獲得更多高級的接口功能(包括設(shè)備功能)荠列,通過編寫消息接口程序,讓第三方服務(wù)器自動管理用戶和消息载城。
圖2 微信硬件平臺基礎(chǔ)接入方案技術(shù)架構(gòu)在這個基礎(chǔ)架構(gòu)里肌似,設(shè)備廠家必須有自己的服務(wù)器,通過硬件平臺基礎(chǔ)消息接口诉瓦,接收設(shè)備和用戶消息川队,提供設(shè)備服務(wù)。
-
2.微信硬件云標(biāo)準(zhǔn)接入方案
適用對象:希望通過微信硬件平臺提供的產(chǎn)品標(biāo)準(zhǔn)能力集定義設(shè)備數(shù)據(jù)睬澡,實現(xiàn)設(shè)備數(shù)據(jù)互聯(lián)互通的設(shè)備固额。(1)設(shè)備直連微信硬件云通道
微信硬件平臺為設(shè)備提供直連數(shù)據(jù)通道,設(shè)備可以通過直連SDK直接接入微信硬件服務(wù)器煞聪,打通設(shè)備到云端的通道斗躏。框架如圖3所示:
圖3 設(shè)備直連微信硬件云通道在直連方案中昔脯,微信硬件平臺將提供設(shè)備信息管理啄糙、綁定關(guān)系存儲、設(shè)備權(quán)限管理云稚、設(shè)備固件版本控制隧饼、設(shè)備數(shù)據(jù)統(tǒng)計、數(shù)據(jù)登錄鑒權(quán)静陈、狀態(tài)更新燕雁、固件更新等服務(wù)。
具體描述:請參照文檔 新增直連數(shù)據(jù)通道
(2)設(shè)備商云連接微信硬件云通道
設(shè)備連接廠商服務(wù)器后窿给,可通過設(shè)備openAPI與微信硬件云對接贵白÷示埽框架如圖4所示:
圖4 設(shè)備商云連接微信硬件云通道目前崩泡,設(shè)備廠商可通過微信硬件平臺提供的開發(fā)模式接入設(shè)備。整體技術(shù)架構(gòu)如圖5所示:
圖5 微信硬件平臺開發(fā)模式技術(shù)架構(gòu)
接入流程
認(rèn)證服務(wù)號
開通設(shè)備功能
開發(fā)
審核并發(fā)售
平臺基礎(chǔ)接入流程
-
1.申請認(rèn)證公眾號&開通設(shè)備功能
1.1 公眾號申請
1.2登錄公眾平臺猬膨,點(diǎn)擊左邊功能欄的"添加功能插件"角撞,選擇"設(shè)備功能"呛伴。
點(diǎn)擊"開通",閱讀并同意《微信公眾平臺微信互聯(lián)設(shè)備功能服務(wù)協(xié)議》谒所。
-
2.添加產(chǎn)品
進(jìn)行產(chǎn)品開發(fā)前热康,第三方需要在"公眾平臺-設(shè)備功能"內(nèi)添加接入的產(chǎn)品。一個公眾號允許添加多種產(chǎn)品(比如可以添加N款音箱和N款車機(jī))劣领,每種添加成功的產(chǎn)品都默認(rèn)獲得微信硬件平臺分配的100個設(shè)備授權(quán)配額姐军。
2.1進(jìn)入"設(shè)備功能",點(diǎn)擊"添加產(chǎn)品"
2.2產(chǎn)品基礎(chǔ)資料登記
其中尖淘,接入方案中勾選“平臺基礎(chǔ)接入方案”奕锌。“平臺基礎(chǔ)接入方案”即:
2.3產(chǎn)品能力登記
-
3.產(chǎn)品開發(fā)調(diào)試
3.1服務(wù)器配置
廠商可以選擇配置新的服務(wù)器村生,用于接收硬件產(chǎn)生的消息和事件惊暴,如“耗電提醒”等。
該服務(wù)器配置對于“平臺基礎(chǔ)接入方案”并非必需趁桃,若廠商配置了服務(wù)器辽话,則所有有關(guān)硬件的消息(如綁定事件、耗電提醒等)會發(fā)送到該服務(wù)器URL中卫病,而其余公眾號有關(guān)消息(如關(guān)注事件油啤、客服消息等)依然發(fā)送到公眾號配置的服務(wù)器URL中。
若廠商未配置服務(wù)器忽肛,則所有消息(包括硬件消息和公眾號消息)都會發(fā)送到原有公眾號配置的服務(wù)器URL中村砂。
具體配置方式如下:
3.1.1登錄公眾平臺,點(diǎn)擊“設(shè)備功能”屹逛,進(jìn)入“設(shè)置”頁面
3.1.2點(diǎn)擊“修改配置”按鈕础废,進(jìn)入服務(wù)器配置填寫頁面。填寫服務(wù)器地址(URL)罕模、Token和EncodingAESKey评腺。其中URL是開發(fā)者用來接收微信互聯(lián)設(shè)備消息和事件的接口URL。Token可由開發(fā)者任意填寫淑掌,用作生成簽名(該Token會和接口URL中包含的Token進(jìn)行對比蒿讥,從而驗證安全性)。EncodingAESKey由開發(fā)者填寫或隨機(jī)生成抛腕,將用作消息體加解密密鑰芋绸。
3.1.3選擇消息加密方式:明文模式、兼容模式和安全模式担敌。模式的選擇與服務(wù)器配置在提交后會立即生效摔敛,請開發(fā)者謹(jǐn)慎填寫及選擇。加解密方式的默認(rèn)狀態(tài)為明文模式全封,選擇兼容模式和安全模式需提前配置好相關(guān)加解密代碼马昙,詳情請參考消息體簽名及解密部分的文檔桃犬。
3.2后臺接口調(diào)試
3.2.1設(shè)備授權(quán)
硬件設(shè)備接入微信硬件平臺首先要進(jìn)行設(shè)備授權(quán)。查看 設(shè)備授權(quán)新接口獲取到的二維碼即為一機(jī)一碼行楞,設(shè)備廠商利用二維碼生成器把獲取到的二維碼串生成為二維碼攒暇,用戶掃描該二維碼后,關(guān)注廠商公眾號子房,即可綁定設(shè)備注意:設(shè)備授權(quán)時必須填上product_id
3.2.2接收設(shè)備綁定/解綁事件
用戶掃描一機(jī)一碼形用,關(guān)注廠商公眾號,即可綁定設(shè)備证杭,此時廠商會接收到微信硬件平臺推送的綁定事件尾序。綁定關(guān)系即deviceid(設(shè)備id)與openid(用戶id)的關(guān)系。若用戶解綁設(shè)備躯砰,廠商會收到解綁事件每币。
具體接口: http://iot.weixin.qq.com/wiki/document-2_2.html
3.2.3其他API查看 平臺基礎(chǔ)消息接口
微信硬件云標(biāo)準(zhǔn)接入流程 —— 設(shè)備直連微信硬件云通道
-
1.申請認(rèn)證公眾號&開通設(shè)備功能
1.1公眾號申請
1.2登錄公眾平臺,點(diǎn)擊左邊功能欄的"添加功能插件"琢歇,選擇"設(shè)備功能"兰怠。
點(diǎn)擊"開通",閱讀并同意《微信公眾平臺微信互聯(lián)設(shè)備功能服務(wù)協(xié)議》李茫。
-
2.添加產(chǎn)品
進(jìn)行產(chǎn)品開發(fā)前揭保,第三方需要在"公眾平臺-設(shè)備功能"內(nèi)添加接入的產(chǎn)品。一個公眾號允許添加多種產(chǎn)品(比如可以添加N款音箱和N款車機(jī))魄宏,每種添加成功的產(chǎn)品都默認(rèn)獲得微信硬件平臺分配的100個設(shè)備授權(quán)配額秸侣。
2.1進(jìn)入"設(shè)備功能",點(diǎn)擊"添加產(chǎn)品"
2.2產(chǎn)品基礎(chǔ)資料登記
其中宠互,接入方案中勾選“微信硬件云標(biāo)準(zhǔn)接入方案”——“設(shè)備直連微信硬件云通道”味榛。“設(shè)備直連微信硬件云通道”即:
SDK開發(fā)部分后續(xù)具體介紹予跌。
2.3產(chǎn)品能力登記
-
3.產(chǎn)品開發(fā)調(diào)試
3.1服務(wù)器配置
為了接收到微信發(fā)送的設(shè)備消息(如綁定事件搏色、耗電提醒等),設(shè)備廠商需要在mp平臺上配置接收微信硬件消息的URL券册。配置啟用后频轿,微信轉(zhuǎn)發(fā)的消息將會按照OpenAPI的接口定義以Json格式推送到開發(fā)者配置URL。
3.1.1登錄公眾平臺烁焙,點(diǎn)擊“設(shè)備功能”航邢,進(jìn)入“設(shè)置”頁面
3.1.2點(diǎn)擊“修改配置”按鈕,進(jìn)入服務(wù)器配置填寫頁面骄蝇。填寫服務(wù)器地址(URL)膳殷、Token和EncodingAESKey。其中URL是開發(fā)者用來接收微信互聯(lián)設(shè)備消息和事件的接口URL乞榨。Token可由開發(fā)者任意填寫秽之,用作生成簽名(該Token會和接口URL中包含的Token進(jìn)行對比,從而驗證安全性)吃既。EncodingAESKey由開發(fā)者填寫或隨機(jī)生成考榨,將用作消息體加解密密鑰。
3.1.3選擇消息加密方式:明文模式鹦倚、兼容模式和安全模式河质。模式的選擇與服務(wù)器配置在提交后會立即生效,請開發(fā)者謹(jǐn)慎填寫及選擇震叙。加解密方式的默認(rèn)狀態(tài)為明文模式掀鹅,選擇兼容模式和安全模式需提前配置好相關(guān)加解密代碼,詳情請參考消息體簽名及解密部分的文檔媒楼。
3.2后臺接口調(diào)試
3.2.1設(shè)備授權(quán)硬件設(shè)備接入微信硬件平臺首先要進(jìn)行設(shè)備授權(quán)乐尊。查看 設(shè)備授權(quán)新接口獲取到的二維碼即為一機(jī)一碼,設(shè)備廠商利用二維碼生成器把獲取到的二維碼串生成為二維碼划址,用戶掃描該二維碼后扔嵌,關(guān)注廠商公眾號,即可綁定設(shè)備注意:設(shè)備授權(quán)時必須填上product_id
3.2.2接收設(shè)備綁定/解綁事件用戶掃描一機(jī)一碼夺颤,關(guān)注廠商公眾號痢缎,即可綁定設(shè)備,此時廠商會接收到微信硬件平臺推送的綁定事件世澜。綁定關(guān)系即deviceid(設(shè)備id)與openid(用戶id)的關(guān)系独旷。若用戶解綁設(shè)備,廠商會收到解綁事件寥裂。具體接口: http://iot.weixin.qq.com/wiki/document-2_2.html
3.2.3其他API查看 平臺基礎(chǔ)消息接口
-
4.OpenAPI調(diào)試
微信硬件平臺和設(shè)備云端URL消息交互嵌洼,分成三種消息類型:
-
微信硬件平臺查詢設(shè)備消息
當(dāng)微信硬件平臺側(cè)需要查詢設(shè)備信息的時候,微信硬件平臺將會POST查詢消息發(fā)送到設(shè)備云端URL上封恰,設(shè)備云端收到請求后咱台,立即返回成功收到請求。待設(shè)備云端異步查詢成功后俭驮,將查詢結(jié)果POST給微信硬件平臺回溺。
-
微信硬件平臺設(shè)置設(shè)備消息
當(dāng)微信硬件平臺側(cè)需要設(shè)置設(shè)備信息的時候,微信硬件平臺將會POST設(shè)置消息發(fā)送到設(shè)備云端URL上混萝,接入者收到請求后遗遵,立即返回成功收到請求。待設(shè)備云端異步設(shè)置設(shè)備成功后逸嘀,將設(shè)置結(jié)果POST給微信硬件平臺车要。
-
設(shè)備云端通知微信硬件平臺消息
當(dāng)設(shè)備狀態(tài)有變化或者有消息需要通知微信硬件平臺側(cè)時候,設(shè)備云端POST消息給微信硬件平臺崭倘。微信硬件平臺立即返回成功收到請求翼岁。待微信硬件平臺將消息處理成功后类垫,將處理消息成功的行為POST給設(shè)備云端URL上。查看 設(shè)備端open API文檔
-
微信硬件云標(biāo)準(zhǔn)接入流程 —— 設(shè)備商云連接微信硬件云通道
-
1.申請認(rèn)證公眾號&開通設(shè)備功能
1.1公眾號申請
1.2登錄公眾平臺琅坡,點(diǎn)擊左邊功能欄的"添加功能插件"悉患,選擇"設(shè)備功能"。
點(diǎn)擊"開通"榆俺,閱讀并同意《微信公眾平臺微信互聯(lián)設(shè)備功能服務(wù)協(xié)議》售躁。
-
2.添加產(chǎn)品
進(jìn)行產(chǎn)品開發(fā)前,第三方需要在"公眾平臺-設(shè)備功能"內(nèi)添加接入的產(chǎn)品茴晋。一個公眾號允許添加多種產(chǎn)品(比如可以添加N款音箱和N款車機(jī))陪捷,每種添加成功的產(chǎn)品都默認(rèn)獲得微信硬件平臺分配的100個設(shè)備授權(quán)配額呕屎。
2.1進(jìn)入"設(shè)備功能"闽寡,點(diǎn)擊"添加產(chǎn)品"
2.2產(chǎn)品基礎(chǔ)資料登記
其中猜极,接入方案中勾選“微信硬件云標(biāo)準(zhǔn)接入方案”——廠商云連接微信硬件云通道萨咕⌒蠛牛“廠商云連接微信硬件云通道”即:
2.3產(chǎn)品能力登記
-
3.產(chǎn)品開發(fā)調(diào)試
3.1服務(wù)器配置
為了接收到微信發(fā)送的設(shè)備消息(如綁定事件叠艳、耗電提醒等)徐矩,設(shè)備廠商需要在mp平臺上配置接收微信硬件消息的URL掐隐。配置啟用后烹玉,微信轉(zhuǎn)發(fā)的消息將會按照OpenAPI的接口定義以Json格式推送到開發(fā)者配置URL驰怎。
3.1.1登錄公眾平臺,點(diǎn)擊“設(shè)備功能”二打,進(jìn)入“設(shè)置”頁面
3.1.2點(diǎn)擊“修改配置”按鈕县忌,進(jìn)入服務(wù)器配置填寫頁面。填寫服務(wù)器地址(URL)继效、Token和EncodingAESKey症杏。其中URL是開發(fā)者用來接收微信互聯(lián)設(shè)備消息和事件的接口URL。Token可由開發(fā)者任意填寫瑞信,用作生成簽名(該Token會和接口URL中包含的Token進(jìn)行對比厉颤,從而驗證安全性)。EncodingAESKey由開發(fā)者填寫或隨機(jī)生成凡简,將用作消息體加解密密鑰逼友。
3.1.3選擇消息加密方式:明文模式、兼容模式和安全模式秤涩。模式的選擇與服務(wù)器配置在提交后會立即生效帜乞,請開發(fā)者謹(jǐn)慎填寫及選擇。加解密方式的默認(rèn)狀態(tài)為明文模式筐眷,選擇兼容模式和安全模式需提前配置好相關(guān)加解密代碼黎烈,詳情請參考消息體簽名及解密部分的文檔。
3.2后臺接口調(diào)試
3.2.1設(shè)備授權(quán)
硬件設(shè)備接入微信硬件平臺首先要進(jìn)行設(shè)備授權(quán)。查看 設(shè)備授權(quán)新接口獲取到的二維碼即為一機(jī)一碼照棋,設(shè)備廠商利用二維碼生成器把獲取到的二維碼串生成為二維碼资溃,用戶掃描該二維碼后,關(guān)注廠商公眾號烈炭,即可綁定設(shè)備注意:設(shè)備授權(quán)時必須填上product_id
3.2.2接收設(shè)備綁定/解綁事件
用戶掃描一機(jī)一碼溶锭,關(guān)注廠商公眾號,即可綁定設(shè)備梳庆,此時廠商會接收到微信硬件平臺推送的綁定事件。綁定關(guān)系即deviceid(設(shè)備id)與openid(用戶id)的關(guān)系卑惜。若用戶解綁設(shè)備膏执,廠商會收到解綁事件。具體接口: http://iot.weixin.qq.com/wiki/document-2_2.html
3.2.3其他API查看 平臺基礎(chǔ)消息接口
-
4.OpenAPI調(diào)試
微信硬件平臺和設(shè)備云端URL消息交互露久,分成三種消息類型:
-
微信硬件平臺查詢設(shè)備消息
當(dāng)微信硬件平臺側(cè)需要查詢設(shè)備信息的時候更米,微信硬件平臺將會POST查詢消息發(fā)送到設(shè)備云端URL上,設(shè)備云端收到請求后毫痕,立即返回成功收到請求征峦。待設(shè)備云端異步查詢成功后,將查詢結(jié)果POST給微信硬件平臺消请。
-
微信硬件平臺設(shè)置設(shè)備消息
當(dāng)微信硬件平臺側(cè)需要設(shè)置設(shè)備信息的時候栏笆,微信硬件平臺將會POST設(shè)置消息發(fā)送到設(shè)備云端URL上,接入者收到請求后臊泰,立即返回成功收到請求蛉加。待設(shè)備云端異步設(shè)置設(shè)備成功后,將設(shè)置結(jié)果POST給微信硬件平臺缸逃。
-
設(shè)備云端通知微信硬件平臺消息
當(dāng)設(shè)備狀態(tài)有變化或者有消息需要通知微信硬件平臺側(cè)時候针饥,設(shè)備云端POST消息給微信硬件平臺。微信硬件平臺立即返回成功收到請求需频。待微信硬件平臺將消息處理成功后丁眼,將處理消息成功的行為POST給設(shè)備云端URL上。查看 設(shè)備端openAPI文檔
-
技術(shù)介紹
這里介紹了一些關(guān)鍵技術(shù)以及協(xié)議
包括Airkiss昭殉,AriSync苞七,藍(lán)牙精簡協(xié)議,直連SDK等