基于無線通信模塊的云接入系統(tǒng)和方法
【專利摘要】本發(fā)明提出一種基于無線通信模塊的云接入系統(tǒng)和方法,該基于無線通信模塊的云接入系統(tǒng)包括無線通信模塊、通過無線通信模塊相互通信的云服務(wù)器和家用電器,其中,無線通信模塊中包括:串口數(shù)據(jù)收發(fā)線程,用于與家用電器進行通信;網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程,用于與云服務(wù)器進行通信;業(yè)務(wù)邏輯線程,用于與串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程進行消息交換,以對串口數(shù)據(jù)收發(fā)線程和網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程收發(fā)的消息進行控制;以及主線程,主線程用于對串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程和業(yè)務(wù)邏輯線程進行控制。通過本發(fā)明能夠?qū)崿F(xiàn)多個線程的協(xié)作運行,有效提升云服務(wù)器接入過程中的線程調(diào)度效果,便于后期無線通信模塊硬件系統(tǒng)的功能擴展。
【專利說明】
基于無線通信模塊的云接入系統(tǒng)和方法
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種基于無線通信模塊的云接入系統(tǒng)和方法。
【背景技術(shù)】
[0002]云服務(wù)器作為近年來的一種熱門技術(shù)和發(fā)展趨勢,其根本原理就是通過資源共享以達到降低成本的同時,提高IT基礎(chǔ)平臺彈性擴展的效率。目前云服務(wù)器的建設(shè)旨在為廣大用戶按需提供服務(wù)。云服務(wù)器承載了大量重要的業(yè)務(wù)系統(tǒng)及數(shù)據(jù),同時不同的家用電器需要接入云服務(wù)器以給用戶提供相關(guān)業(yè)務(wù),因此云服務(wù)器接入存在著諸多需求和挑戰(zhàn)。
[0003]相關(guān)技術(shù)在基于無線通信模塊的云接入系統(tǒng)中,當(dāng)接入多個云服務(wù)器與多個家用電器時,業(yè)務(wù)邏輯和數(shù)據(jù)處理過程耦合性高,云服務(wù)器接入體驗差。
【發(fā)明內(nèi)容】
[0004]本發(fā)明旨在至少在一定程度上解決相關(guān)技術(shù)中的技術(shù)問題之一。
[0005]為此,本發(fā)明的一個目的在于提出一種基于無線通信模塊的云接入系統(tǒng),能夠?qū)崿F(xiàn)多個線程的協(xié)作運行,有效提升云服務(wù)器接入過程中的線程調(diào)度效果,便于后期無線通信模塊硬件系統(tǒng)的功能擴展。
[0006]本發(fā)明的另一個目的在于提出一種基于無線通信模塊的云接入方法。
[0007]本發(fā)明的另一個目的在于提出一種無線通信模塊。
[0008]為達到上述目的,本發(fā)明第一方面實施例提出的基于無線通信模塊的云接入系統(tǒng),包括:無線通信模塊、通過所述無線通信模塊相互通信的云服務(wù)器和家用電器,其中,所述無線通信模塊中包括:串口數(shù)據(jù)收發(fā)線程,用于與所述家用電器進行通信;網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程,用于與所述云服務(wù)器進行通信;業(yè)務(wù)邏輯線程,用于與所述串口數(shù)據(jù)收發(fā)線程、所述網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程進行消息交換,以對所述串口數(shù)據(jù)收發(fā)線程和所述網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程收發(fā)的消息進行控制;以及主線程,所述主線程用于對所述串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程和業(yè)務(wù)邏輯線程進行控制。
[0009]本發(fā)明第一方面實施例提出的基于無線通信模塊的云接入系統(tǒng),通過業(yè)務(wù)邏輯線程與串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程進行消息交換,以對串口數(shù)據(jù)收發(fā)線程和網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程收發(fā)的消息進行控制,主線程對串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程和業(yè)務(wù)邏輯線程進行控制,能夠?qū)崿F(xiàn)多個線程的協(xié)作運行,有效提升云服務(wù)器接入過程中的線程調(diào)度效果,便于后期無線通信模塊硬件系統(tǒng)的功能擴展。
[0010]為達到上述目的,本發(fā)明第二方面實施例提出的基于無線通信模塊的云接入方法,包括:業(yè)務(wù)邏輯線程與串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程進行消息交換,以對所述串口數(shù)據(jù)收發(fā)線程和所述網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程收發(fā)的消息進行控制;主線程對所述串口數(shù)據(jù)收發(fā)線程、所述網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程和所述業(yè)務(wù)邏輯線程進行控制。
[0011]本發(fā)明第二方面實施例提出的基于無線通信模塊的云接入方法,通過業(yè)務(wù)邏輯線程與串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程進行消息交換,以對串口數(shù)據(jù)收發(fā)線程和網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程收發(fā)的消息進行控制,主線程對串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程和業(yè)務(wù)邏輯線程進行控制,能夠?qū)崿F(xiàn)多個線程的協(xié)作運行,有效提升云服務(wù)器接入過程中的線程調(diào)度效果,便于后期無線通信模塊硬件系統(tǒng)的功能擴展。
[0012]為達到上述目的,本發(fā)明第三方面實施例提出的無線通信模塊,包括:串口數(shù)據(jù)收發(fā)線程,用于與所述家用電器進行通信;網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程,用于與所述云服務(wù)器進行通信;業(yè)務(wù)邏輯線程,用于與所述串口數(shù)據(jù)收發(fā)線程、所述網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程進行消息交換,以對所述串口數(shù)據(jù)收發(fā)線程和所述網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程收發(fā)的消息進行控制;以及主線程,所述主線程用于對所述串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程和業(yè)務(wù)邏輯線程進行控制;應(yīng)用事件回調(diào)子模塊,所述主線程通過所述應(yīng)用事件回調(diào)子模塊控制所述業(yè)務(wù)邏輯線程;以及應(yīng)用事件消息隊列,用于接收事件消息,并供所述主線程讀取,其中,所述事件消息包括應(yīng)用事件消息和WIFI回調(diào)事件消息;狀態(tài)機事件分發(fā)處理子模塊,用于根據(jù)所述事件消息的模式屬性將所述事件消息分發(fā)至對應(yīng)的狀態(tài)機,其中,所述模式屬性為AP-Mode、STA-Mo de,或者Sy s t em中的任一種,讀取所述應(yīng)用事件消息隊列中的所述應(yīng)用事件消息和WIFI回調(diào)事件消息,配置所述無線通信模塊的狀態(tài)轉(zhuǎn)換機制;狀態(tài)機,用于根據(jù)所述事件消息和狀態(tài)轉(zhuǎn)換機制控制所述無線通信模塊的狀態(tài)進行切換。
[0013]本發(fā)明第三方面實施例提出的無線通信模塊,通過業(yè)務(wù)邏輯線程與串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程進行消息交換,以對串口數(shù)據(jù)收發(fā)線程和網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程收發(fā)的消息進行控制,主線程對串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程和業(yè)務(wù)邏輯線程進行控制,能夠?qū)崿F(xiàn)多個線程的協(xié)作運行,有效提升云服務(wù)器接入過程中的線程調(diào)度效果,通過根據(jù)事件消息的模式屬性將事件消息分發(fā)至對應(yīng)的狀態(tài)機,其中,模式屬性為AP-Mode、STA-Mode , 或者 System 中的任一種 ,并根據(jù)事件消息和對應(yīng)的狀態(tài)機的狀態(tài)轉(zhuǎn)換機制控制無線通信模塊的狀態(tài)進行切換,能夠?qū)崿F(xiàn)無線通信模塊中三種狀態(tài)機的協(xié)作運行,有效提升無線通信模塊的狀態(tài)管理效果。
[0014]本發(fā)明附加的方面和優(yōu)點將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發(fā)明的實踐了解到。
【附圖說明】
[0015]本發(fā)明上述的和/或附加的方面和優(yōu)點從下面結(jié)合附圖對實施例的描述中將變得明顯和容易理解,其中:
[0016]圖1是本發(fā)明一實施例提出的基于無線通信模塊的云接入系統(tǒng)的結(jié)構(gòu)示意圖;
[0017]圖2是本發(fā)明實施例中無線通信模塊的硬件結(jié)構(gòu)示意圖;
[0018]圖3是本發(fā)明實施例中無線通信模塊消息交換流程示意圖;
[0019]圖4是本發(fā)明另一實施例提出的主線程對無線通信模塊的狀態(tài)機進行管理的方法的流程示意圖;
[0020]圖5是本發(fā)明另一實施例提出的主線程對無線通信模塊的狀態(tài)機進行管理的方法的流程示意圖;
[0021 ]圖6是本發(fā)明實施例中無線通信模塊狀態(tài)切換示意圖;
[0022]圖7是本發(fā)明另一實施例提出的基于無線通信模塊的云接入方法的流程示意圖。
【具體實施方式】
[0023]下面詳細描述本發(fā)明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標(biāo)號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,僅用于解釋本發(fā)明,而不能理解為對本發(fā)明的限制。相反,本發(fā)明的實施例包括落入所附加權(quán)利要求書的精神和內(nèi)涵范圍內(nèi)的所有變化、修改和等同物。
[0024]圖1是本發(fā)明一實施例提出的基于無線通信模塊的云接入系統(tǒng)的結(jié)構(gòu)示意圖,該基于無線通信模塊的云接入系統(tǒng)包括無線通信模塊101、通過無線通信模塊101相互通信的云服務(wù)器102和家用電器103,其中,無線通信模塊101中包括:串口數(shù)據(jù)收發(fā)線程,用于與家用電器103進行通信;網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程,用于與云服務(wù)器102進行通信;業(yè)務(wù)邏輯線程,用于與串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程進行消息交換,以對串口數(shù)據(jù)收發(fā)線程和網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程收發(fā)的消息進行控制;以及主線程,主線程用于對串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程和業(yè)務(wù)邏輯線程進行控制。
[0025]云服務(wù)器102作為近年來的一種熱門技術(shù)和發(fā)展趨勢,其原理就是通過資源共享以達到降低成本的同時,提高IT基礎(chǔ)平臺彈性擴展的效率。目前云服務(wù)器102的建設(shè)旨在為廣大用戶按需提供服務(wù)。云服務(wù)器102承載了大量重要的業(yè)務(wù)系統(tǒng)及數(shù)據(jù),同時不同的家用電器103需要接入云服務(wù)器102以給用戶提供相關(guān)業(yè)務(wù),因此云服務(wù)器102接入存在著諸多需求和挑戰(zhàn)。
[0026]在本發(fā)明的一個實施例中,該基于無線通信模塊的云接入系統(tǒng)包括無線通信模塊101。
[0027]在本發(fā)明的實施例中,無線通信模塊101具體為無線WIFI通信模塊。
[0028]其中,無線WIFI通信模塊支持W1-Fi技術(shù),用于家用電器103。
[0029]家用電器103例如空調(diào)器、冰箱,以及熱水器等。
[0030]例如,用戶家里的非對稱數(shù)字用戶線路(Asymmetric Digital SubscriberLine,ADSL)、小區(qū)寬帶等,可以通過使用家用W1-Fi技術(shù)連接無線通信模塊101以實現(xiàn)移動終端的無線上網(wǎng)。
[0031]進一步,例如在本發(fā)明的實施例中,用戶也可以通過使用無線通信模塊101將家用電器103與對應(yīng)的云服務(wù)器102互聯(lián),以實現(xiàn)家用電器103與云服務(wù)器102的資源共享。
[0032]圖2是本發(fā)明實施例中無線通信模塊101的硬件結(jié)構(gòu)示意圖,圖2以云服務(wù)器102為美的云和小米云示例。
[0033]圖2中包括Μ-Smart軟件開發(fā)工具包(SoftwareDevelopment Kit,SDK)21、小米SDK22、廠商底層SDK23、美的云24,以及小米云25。其中,M-Smart SDK21用于實現(xiàn)基于M-Smart系統(tǒng)的業(yè)務(wù)邏輯線程的處理邏輯,小米SDK22用于實現(xiàn)小米云25的協(xié)議轉(zhuǎn)換文件xm_prof i le.c中的協(xié)議,廠商底層SDK23用于實現(xiàn)無線通信模塊101的底層硬件邏輯,美的云24和小米云25用于提供云服務(wù)資源。
[0034]在本發(fā)明的一個實施例中,該基于無線通信模塊的云接入系統(tǒng)還包括通過無線通信模塊101相互通信的云服務(wù)器102和家用電器103。
[0035]其中,云服務(wù)器102是一種簡單高效、安全可靠、處理能力可彈性伸縮的計算服務(wù)。云服務(wù)器102用于給各類互聯(lián)網(wǎng)用戶提供綜合業(yè)務(wù)能力的服務(wù)。云服務(wù)器102例如美的云、京東云、阿里云,或者小米云。
[0036]云服務(wù)器102具有智能云接入、智能云存儲,以及智能信息推送的功能。當(dāng)用戶通過使用無線通信模塊101將家用電器103與對應(yīng)的云服務(wù)器102互聯(lián)后,云服務(wù)器102可以將資源推送至家用電器103,用戶可以通過移動終端中家用電器103的應(yīng)用程序?qū)矣秒娖?03進行控制。
[0037]例如,美的微波爐的使用功能有新開發(fā)的烹飪菜譜資源,微波爐廠商將該新開發(fā)的烹飪菜譜資源存儲在美的云的智能云存儲中,當(dāng)用戶通過使用無線通信模塊101將美的微波爐與美的云互聯(lián)后,美的云會將該新開發(fā)的烹飪菜譜資源推送至美的微波爐,以使用戶可以通過移動終端中美的微波爐的應(yīng)用程序控制美的微波爐執(zhí)行新開發(fā)的烹飪菜譜資源。
[0038]家用電器103指在家庭及類似場所中使用的各種電氣和電子器具。家用電器103例如電視機、電冰箱,或者空調(diào)器等。
[0039]隨著智能家居技術(shù)的不斷進步和用戶生活水平的提高,越來越多的家用電器103能夠?qū)崿F(xiàn)智能化運轉(zhuǎn),用戶可以在移動終端中安裝家用電器103的應(yīng)用程序,通過應(yīng)用程序控制家用電器103進行工作,用戶也可以通過使用無線通信模塊101將家用電器103與對應(yīng)的云服務(wù)器102互聯(lián)。
[0040]具體地,用戶可以將需要獲取云服務(wù)器102中的業(yè)務(wù)系統(tǒng)和數(shù)據(jù)的家用電器103通過無線通信模塊101接入對應(yīng)的云服務(wù)器102,以實現(xiàn)云服務(wù)器102中資源的共享。
[0041]例如,需要獲取云服務(wù)器102中的業(yè)務(wù)系統(tǒng)和數(shù)據(jù)的家用電器103為美的空調(diào)器,美的空調(diào)器需要從美的云服務(wù)器102中共享協(xié)議匹配的資源,因此,將美的空調(diào)器通過無線通信模塊101接入美的云,以實現(xiàn)美的空調(diào)器與美的云中資源的共享,或者,也可以將美的空調(diào)器通過無線通信模塊101接入小米云,以實現(xiàn)美的空調(diào)器與小米云中資源的共享。
[0042]在本發(fā)明的一個實施例中,無線通信模塊101包括串口數(shù)據(jù)收發(fā)線程,用于與家用電器103進行通信。
[0043]串口即串行接口,是采用串行通信方式的擴展接口。其中,串行通信方式是指一條信息的各位數(shù)據(jù)被逐位按順序傳送的通訊方式。
[0044]線程是程序執(zhí)行流的最小單元,一個標(biāo)準(zhǔn)的線程由線程ID,當(dāng)前指令指針(PC),寄存器集合和堆棧組成。線程適用于服務(wù)器中的文件管理或者通信控制。
[0045]例如,當(dāng)無線通信模塊101接收到家用電器103發(fā)送的報文時,對該報文以串行通信方式進行處理,以將處理后的報文上報至云服務(wù)器102。
[0046]在本發(fā)明的一個實施例中,無線通信模塊101還包括網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程,用于與云服務(wù)器102進行通信。
[0047]例如,當(dāng)無線通信模塊101通過網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程接收到云服務(wù)器102發(fā)送的報文時,對該報文進行處理,以將處理后的報文下發(fā)至家用電器103。
[0048]在本發(fā)明的一個實施例中,無線通信模塊101還包括業(yè)務(wù)邏輯線程,用于與串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程進行消息交換,以對串口數(shù)據(jù)收發(fā)線程和網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程收發(fā)的消息進行控制。
[0049]其中,本發(fā)明實施例中的業(yè)務(wù)邏輯線程為基于M-Smart系統(tǒng)的業(yè)務(wù)邏輯線程。M-Smart系統(tǒng)開放具體提供的服務(wù)內(nèi)容,M-Smart系統(tǒng)針對使用第三方云、使用美的內(nèi)建云、沒有云的三種互聯(lián)網(wǎng)合作者開放對接形式。
[0050]具體地,業(yè)務(wù)邏輯線程通過M-Smart協(xié)議與串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程進行消息交換。
[0051]可選地,業(yè)務(wù)邏輯線程通過網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程獲取云服務(wù)器102發(fā)送至家用電器103的第一類型報文;業(yè)務(wù)邏輯線程獲取云服務(wù)器102的類型信息,并根據(jù)類型信息將第一類型報文轉(zhuǎn)換為第二類型報文;業(yè)務(wù)邏輯線程通過串口數(shù)據(jù)收發(fā)線程將第二類型報文發(fā)送至家用電器103。
[0052]其中,報文是網(wǎng)絡(luò)中交換與傳輸?shù)臄?shù)據(jù)單元,即站點一次性要發(fā)送的數(shù)據(jù)塊。報文包含了將要發(fā)送的完整的數(shù)據(jù)信息,其長短不一致,長度不限且長度可變。通過不斷地將數(shù)據(jù)封裝成分組、包、幀來傳輸。
[0053]在本發(fā)明的實施例中,云服務(wù)器102的類型信息可以例如云ID,不同的云ID標(biāo)識不同的云服務(wù)器102,該云ID可以設(shè)置在第一類型報文的報文頭中,可以是報文頭中的預(yù)留字段,也可以設(shè)置在其它字段,本發(fā)明實施例對此不進行具體限制。
[0054]可選地,獲取云服務(wù)器102的類型信息,具體包括:無線通信模塊101獲取與云服務(wù)器102相連接的Socket連接信息;以及無線通信模塊101根據(jù)Socket連接信息確定類型信息。
[0055]具體地,如圖3所示,為本發(fā)明實施例中無線通信模塊101消息交換流程示意圖。包括:串口數(shù)據(jù)收發(fā)線程31、基于M-Smart系統(tǒng)的業(yè)務(wù)邏輯線程32、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程33、串口數(shù)據(jù)收發(fā)緩沖器34、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)緩沖器35、基于M-Smart系統(tǒng)的轉(zhuǎn)換協(xié)議36、云服務(wù)器102,以及家用電器103。
[0056]下發(fā)消息交換流程例如,無線通信模塊101中的網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程33獲取到云服務(wù)器102發(fā)送至家用電器103的第一類型報文后,網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程33創(chuàng)建網(wǎng)絡(luò)收發(fā)數(shù)據(jù)包消息隊列,并將第一類型報文添加至網(wǎng)絡(luò)收發(fā)數(shù)據(jù)包消息隊列,無線通信模塊101中的基于M-Smart系統(tǒng)的業(yè)務(wù)邏輯線程32通過云服務(wù)器102SDK中協(xié)議轉(zhuǎn)換文件的函數(shù)接口從網(wǎng)絡(luò)收發(fā)數(shù)據(jù)包消息隊列對應(yīng)的網(wǎng)絡(luò)數(shù)據(jù)收發(fā)緩沖器35中獲取第一類型報文,根據(jù)第一類型報文的報文頭中的云ID,對第一類型報文進行協(xié)議轉(zhuǎn)換,得到第二類型報文,將第二類型報文存儲在云接入系統(tǒng)分配的串口數(shù)據(jù)收發(fā)緩沖器34中,并觸發(fā)應(yīng)用事件回調(diào)子模塊控制基于M-Smart系統(tǒng)的業(yè)務(wù)邏輯線程32將第二類型報文通過串口數(shù)據(jù)收發(fā)線程31下發(fā)至家用電器103。其中,云服務(wù)器102SDK中的協(xié)議轉(zhuǎn)換文件例如,阿里云al i_sdk.c的協(xié)議轉(zhuǎn)換文件al i_卩1'0;1^16.0、京東云」(1_8(11^.0的協(xié)議轉(zhuǎn)換文件」(1_。1'0;1^16.0、小米云1111_8(11^.0的協(xié)議轉(zhuǎn)換文件xm_prof ile.c,以及美的云md_sdk.c的協(xié)議轉(zhuǎn)換文件md_prof ile.C。
[0057]可選地,無線通信模塊101接收家用電器103發(fā)送的第二類型報文,并獲取第二類型報文對應(yīng)的目的地址,以及根據(jù)目標(biāo)地址確定對應(yīng)云服務(wù)器102的類型信息;無線通信模塊101根據(jù)云服務(wù)器102的類型信息調(diào)用對應(yīng)的轉(zhuǎn)換協(xié)議;以及無線通信模塊101根據(jù)轉(zhuǎn)換協(xié)議將第二類型報文轉(zhuǎn)換為第一類型報文,并將第一類型報文發(fā)送至對應(yīng)的云服務(wù)器102。
[0058]在本發(fā)明的實施例中,第二類型報文對應(yīng)的目的地址標(biāo)識云服務(wù)器102,該目的地址可以設(shè)置在第二類型報文的報文頭中,可以是報文頭中的預(yù)留字段,也可以設(shè)置在其它字段,本發(fā)明實施例對此不進行具體限制。
[0059]具體地,如圖3所示,上報消息交換流程例如,無線通信模塊101中的串口數(shù)據(jù)收發(fā)線程31接收家用電器103發(fā)送的第二類型報文后,串口數(shù)據(jù)收發(fā)線程31創(chuàng)建串口收發(fā)數(shù)據(jù)包消息隊列,并將第二類型報文添加至串口收發(fā)數(shù)據(jù)包消息隊列中,無線通信模塊101中的基于M-Smart系統(tǒng)的業(yè)務(wù)邏輯線程32通過云服務(wù)器102SDK中協(xié)議轉(zhuǎn)換文件的函數(shù)接口從串口收發(fā)數(shù)據(jù)包消息隊列對應(yīng)的串口數(shù)據(jù)收發(fā)緩沖器34中獲取第二類型報文,根據(jù)第二類型報文的報文頭中目的地址對應(yīng)的云服務(wù)器102的類型信息,對第二類型報文進行協(xié)議轉(zhuǎn)換,得到第一類型報文,將第一類型報文存儲在云接入系統(tǒng)分配的網(wǎng)絡(luò)數(shù)據(jù)收發(fā)緩沖器35中,并觸發(fā)應(yīng)用事件回調(diào)子模塊控制基于M-Smart系統(tǒng)的業(yè)務(wù)邏輯線程32將第一類型報文通過網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程33上報至云服務(wù)器102。
[0060]在本發(fā)明的一個實施例中,無線通信模塊101還包括主線程,主線程用于對串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程和業(yè)務(wù)邏輯線程進行控制。
[0061]可選地,主線程用于對無線通信模塊101的狀態(tài)機進行管理。
[0062]主線程用于對無線通信模塊101的狀態(tài)機進行管理,具體包括:無線通信模塊101接收事件消息;根據(jù)事件消息的模式屬性將事件消息分發(fā)至對應(yīng)的狀態(tài)機,其中,模式屬性為AP-Mode、STA-Mode,或者System中的任一種;根據(jù)事件消息和對應(yīng)的狀態(tài)機的狀態(tài)轉(zhuǎn)換機制控制無線通信模塊101的狀態(tài)進行切換。
[0063]可選地,主線程對無線通信模塊101的狀態(tài)機進行管理的流程實施例詳見圖4和圖5實施例。
[0064]在本發(fā)明的一個實施例中,無線通信模塊101還包括轉(zhuǎn)換協(xié)議數(shù)據(jù)庫,用于存儲云服務(wù)器102對應(yīng)的轉(zhuǎn)換協(xié)議。
[0065]在本發(fā)明的實施例中,轉(zhuǎn)換協(xié)議數(shù)據(jù)庫中具體包括基于M-Smart系統(tǒng)的轉(zhuǎn)換協(xié)議。[ΟΟ??] 例如,阿里云ali_sdk.c的協(xié)議轉(zhuǎn)換文件ali_prof ile.c中的協(xié)議、京東云jd_sdk.c的協(xié)議轉(zhuǎn)換文件jd_prof ile.c中的協(xié)議、小米云xm_sdk.c的協(xié)議轉(zhuǎn)換文件xm_prof i I e.c中的協(xié)議,以及美的云md_sdk.c的協(xié)議轉(zhuǎn)換文件md_prof i I e.c中的協(xié)議。
[0067]本實施例中,通過業(yè)務(wù)邏輯線程與串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程進行消息交換,以對串口數(shù)據(jù)收發(fā)線程和網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程收發(fā)的消息進行控制,主線程對串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程和業(yè)務(wù)邏輯線程進行控制,能夠?qū)崿F(xiàn)多個線程的協(xié)作運行,有效提升云服務(wù)器接入過程中的線程調(diào)度效果,便于后期無線通信模塊硬件系統(tǒng)的功能擴展。
[0068]圖4是本發(fā)明另一實施例提出的主線程對無線通信模塊的狀態(tài)機進行管理的方法的流程示意圖,該主線程對無線通信模塊的狀態(tài)機進行管理的方法包括:
[0069]S401:無線通信模塊接收事件消息。
[0070]無線通信模塊具體為無線WIFI通信模塊。
[0071]其中,無線WIFI通信模塊支持W1-Fi技術(shù),用于家用電器。
[0072]例如,用戶家里的非對稱數(shù)字用戶線路(Asymmetric Digital Subscriber Line,ADSL)、小區(qū)寬帶等,可以通過使用家用W1-Fi技術(shù)連接無線通信模塊以實現(xiàn)移動終端的無線上網(wǎng)。進一步,用戶也可以通過使用無線通信模塊將家用電器與對應(yīng)的云服務(wù)器互聯(lián),以實現(xiàn)家用電器與云服務(wù)器的資源共享。
[0073]目前的家用電器中的無線通信模塊通常是作為接收端使用,即須依賴另一網(wǎng)絡(luò)提供裝置(例如,有線網(wǎng)絡(luò))來提供網(wǎng)絡(luò)連接給家用電器。然而,使用者可能會想利用無線通信模塊增加網(wǎng)絡(luò)信號涵蓋的范圍;或者,也可能想同時使無線通信模塊將有線網(wǎng)絡(luò)轉(zhuǎn)變成無線網(wǎng)絡(luò);或者,也可能想使無線通信模塊作為無線基站(AP),來使電子裝置互相連接。相關(guān)技術(shù)中的家用電器中的無線通信模塊通常只能提供其中一種網(wǎng)絡(luò)形態(tài)或功能。
[0074]可選地,事件消息包括應(yīng)用事件消息和WIFI回調(diào)事件消息,無線通信模塊接收事件消息,包括:應(yīng)用事件消息隊列接收業(yè)務(wù)邏輯線程生成的應(yīng)用事件消息;WIFI事件回調(diào)子模塊接收WIFI回調(diào)事件消息,并在接收到WIFI回調(diào)事件消息之后,將WIFI回調(diào)事件消息添加至應(yīng)用事件消息隊列。
[0075]其中,應(yīng)用事件消息由無線通信模塊中的主線程通過應(yīng)用事件回調(diào)子模塊控制業(yè)務(wù)邏輯線程生成,WIFI回調(diào)事件消息由應(yīng)用程序產(chǎn)生。
[0076]具體地,應(yīng)用事件消息可以為無線通信模塊的上層應(yīng)用主動產(chǎn)生的事件,例如,無線通信模塊取消AP模式,則會產(chǎn)生AF_EVT_AP_ST0P的應(yīng)用事件消息。
[0077]WIFI回調(diào)事件消息可以為無線通信模塊的WIFI底層反饋的事件,例如,無線通信模塊的AP模式開啟成功,則會產(chǎn)生AF_EVT_AP_STARTED_SUCCESS的WIFI回調(diào)事件消息。
[0078]可選地,無線通信模塊接收事件消息之前,還包括:配置無線通信模塊的狀態(tài)轉(zhuǎn)換機制。
[0079]S402:根據(jù)事件消息的模式屬性將事件消息分發(fā)至對應(yīng)的狀態(tài)機,其中,模式屬性為 AP-Mode、STA-Mode,或者 System 中的任一種。
[0080]具體地,由狀態(tài)機事件分發(fā)處理子模塊根據(jù)事件消息的模式屬性將事件消息分發(fā)至對應(yīng)的狀態(tài)機,其中,模式屬性為AP-Mode、STA-Mode,或者System中的任一種。
[0081 ] 無線通信模塊支持熱點(Access Point,AP)工作模式AP-Mode,AP_Mode應(yīng)用在無線局域網(wǎng)成員設(shè)備(即客戶端)的加入,即網(wǎng)絡(luò)下行,提供以無線方式組建無線局域網(wǎng)WLAN,相當(dāng)WLAN的中心設(shè)備。無線通信模塊也可以支持工作站模式STA-Mode,也可以理解為某個網(wǎng)格中的一個工作站即客戶端。當(dāng)一個無線通信模塊的WIFI芯片提供STA-Mode功能時,無線通信模塊就可以連到另外的一個網(wǎng)絡(luò)當(dāng)中。AP-Mode提供給移動終端等連接,STA-Mode用于提供網(wǎng)絡(luò)的數(shù)據(jù)上行服務(wù)。另外,無線通信模塊所在系統(tǒng)的系統(tǒng)網(wǎng)絡(luò)狀態(tài),即無線通信模塊在所在系統(tǒng)中與網(wǎng)絡(luò)使用者的網(wǎng)絡(luò)連接狀態(tài),可以由系統(tǒng)狀態(tài)屬性進行描述,對應(yīng)由System狀態(tài)機進行系統(tǒng)狀態(tài)間的切換管理。
[0082]其中,狀態(tài)機包括AP-Mode狀態(tài)機、STA-Mode狀態(tài)機,以及System狀態(tài)機,模式屬性AP-Mode對應(yīng)AP-Mode狀態(tài)機、模式屬性STA-Mode對應(yīng)STA-Mode狀態(tài)機,以及模式屬性System對應(yīng)System狀態(tài)機。
[0083]S403:根據(jù)事件消息和對應(yīng)的狀態(tài)機的狀態(tài)轉(zhuǎn)換機制控制無線通信模塊的狀態(tài)進行切換。
[0084]其中,無線通信模塊的狀態(tài)包括AP-Mode狀態(tài)機中的建立AP中、AP運行中、以及空閑三種狀態(tài),STA-Mode狀態(tài)機中的連接中、已連接、以及空閑三種狀態(tài);System狀態(tài)機中的網(wǎng)絡(luò)未建立、網(wǎng)絡(luò)已建立、以及初始化三種狀態(tài)。
[0085 ]可選地,根據(jù)事件消息和對應(yīng)的狀態(tài)機的狀態(tài)轉(zhuǎn)換機制控制無線通信模塊的狀態(tài)進行切換,包括:如果事件消息的模式屬性為AP-Mode,則AP-Mode狀態(tài)機根據(jù)事件消息和AP-Mode狀態(tài)機的狀態(tài)轉(zhuǎn)換機制控制無線通信模塊的狀態(tài)在建立AP中、AP運行中、以及空閑三種狀態(tài)之間進行切換;如果事件消息的模式屬性為STA-Mode,則STA-Mode狀態(tài)機根據(jù)事件消息和STA-Mode狀態(tài)機的狀態(tài)轉(zhuǎn)換機制控制無線通信模塊的狀態(tài)在連接中、已連接、以及空閑三種狀態(tài)之間進行切換;如果事件消息的模式屬性為System,則System狀態(tài)機根據(jù)事件消息和System狀態(tài)機的狀態(tài)轉(zhuǎn)換機制控制無線通信模塊的狀態(tài)在網(wǎng)絡(luò)未建立、網(wǎng)絡(luò)已建立、以及初始化三種狀態(tài)之間進行切換。
[0086]本實施例中,通過根據(jù)事件消息的模式屬性將事件消息分發(fā)至對應(yīng)的狀態(tài)機,其中,模式屬性為AP-Mode、STA-Mode,或者System中的任一種,并根據(jù)事件消息和對應(yīng)的狀態(tài)機的狀態(tài)轉(zhuǎn)換機制控制無線通信模塊的狀態(tài)進行切換,能夠?qū)崿F(xiàn)無線通信模塊中三種狀態(tài)機的協(xié)作運行,有效提升無線通信模塊的狀態(tài)管理效果。
[0087]圖5是本發(fā)明另一實施例提出的主線程對無線通信模塊的狀態(tài)機進行管理的方法的流程示意圖,該主線程對無線通信模塊的狀態(tài)機進行管理的方法包括:
[0088]S501:配置無線通信模塊的狀態(tài)轉(zhuǎn)換機制。
[0089]具體地,通過狀態(tài)機事件分發(fā)處理子模塊將AP-Mode狀態(tài)機、STA-Mode狀態(tài)機,以及System狀態(tài)機的狀態(tài)屬性疊加,以配置無線通信模塊的狀態(tài)轉(zhuǎn)換機制。
[0090]其中,狀態(tài)機的狀態(tài)屬性用于標(biāo)識無線通信模塊的狀態(tài)。
[0091]通過本步驟,可以使無線通信模塊中的內(nèi)置程序調(diào)用配置好的狀態(tài)屬性,使無線通信模塊能在不同的狀態(tài)間進行切換,實現(xiàn)無線通信模塊中三種狀態(tài)機的協(xié)作運行。
[0092]S502:應(yīng)用事件消息隊列接收業(yè)務(wù)邏輯線程生成的應(yīng)用事件消息。
[0093]其中,應(yīng)用事件消息由無線通信模塊中的主線程通過應(yīng)用事件回調(diào)子模塊控制業(yè)務(wù)邏輯線程生成。
[0094]具體地,應(yīng)用事件消息可以為無線通信模塊的上層應(yīng)用主動產(chǎn)生的事件,例如,無線通信模塊取消AP模式,則會產(chǎn)生AF_EVT_AP_ST0P的應(yīng)用事件消息。
[0095]S503: WIFI事件回調(diào)子模塊接收WIFI回調(diào)事件消息,并在接收到WIFI回調(diào)事件消息之后,將WIFI回調(diào)事件消息添加至應(yīng)用事件消息隊列。
[0096]WIFI回調(diào)事件消息可以為無線通信模塊的WIFI底層反饋的事件,例如,無線通信模塊的AP模式開啟成功,則會產(chǎn)生AF_EVT_AP_STARTED_SUCCESS的WIFI回調(diào)事件消息。
[0097]S504:讀取應(yīng)用事件消息隊列中的應(yīng)用事件消息和WIFI回調(diào)事件消息。
[0098]具體地,由無線通信模塊中的主線程通過狀態(tài)機事件分發(fā)處理子模塊讀取應(yīng)用事件消息隊列中的應(yīng)用事件消息和WIFI回調(diào)事件消息。
[0099]S505:根據(jù)事件消息的模式屬性將事件消息分發(fā)至對應(yīng)的狀態(tài)機,其中,模式屬性為 AP-Mode、STA-Mode,或者 System 中的任一種。
[0100]具體地,由狀態(tài)機事件分發(fā)處理子模塊根據(jù)事件消息的模式屬性將事件消息分發(fā)至對應(yīng)的狀態(tài)機,其中,模式屬性為AP-Mode、STA-Mode,或者System中的任一種。
[0101]無線通信模塊支持熱點(Access Point,AP)工作模式AP-Mode,AP_Mode應(yīng)用在無線局域網(wǎng)成員設(shè)備(即客戶端)的加入,即網(wǎng)絡(luò)下行,提供以無線方式組建無線局域網(wǎng)WLAN,相當(dāng)WLAN的中心設(shè)備。無線通信模塊也可以支持工作站模式STA-Mode,也可以理解為某個網(wǎng)格中的一個工作站即客戶端。當(dāng)一個無線通信模塊的WIFI芯片提供STA-Mode功能時,無線通信模塊就可以連到另外的一個網(wǎng)絡(luò)當(dāng)中。AP-Mode提供給移動終端等連接,STA-Mode用于提供網(wǎng)絡(luò)的數(shù)據(jù)上行服務(wù)。另外,無線通信模塊所在系統(tǒng)的系統(tǒng)網(wǎng)絡(luò)狀態(tài),即無線通信模塊在所在系統(tǒng)中與網(wǎng)絡(luò)使用者的網(wǎng)絡(luò)連接狀態(tài),可以由系統(tǒng)狀態(tài)屬性進行描述,對應(yīng)由System狀態(tài)機進行系統(tǒng)狀態(tài)間的切換管理。
[0102]其中,狀態(tài)機包括AP-Mode狀態(tài)機、STA-Mode狀態(tài)機,以及System狀態(tài)機,模式屬性AP-Mode對應(yīng)AP-Mode狀態(tài)機、模式屬性STA-Mode對應(yīng)STA-Mode狀態(tài)機,以及模式屬性System對應(yīng)System狀態(tài)機。
[0103]通過將事件消息分發(fā)至對應(yīng)的狀態(tài)機分別進行狀態(tài)管理,在無線通信模塊底層硬件實現(xiàn)方面可以增強代碼結(jié)構(gòu)的邏輯性,降低代碼開發(fā)的復(fù)雜性,便于后期無線通信模塊硬件系統(tǒng)的功能擴展。
[0104]S506:根據(jù)事件消息和狀態(tài)轉(zhuǎn)換機制控制無線通信模塊的狀態(tài)進行切換。
[0105]具體地,如圖6所示,為本發(fā)明實施例中無線通信模塊狀態(tài)切換示意圖,其中,包括:AP-Mode狀態(tài)機6 l、STA-Mode狀態(tài)機62、System狀態(tài)機63、狀態(tài)機事件分發(fā)處理子模塊64、應(yīng)用事件消息隊列65、AP-Mode狀態(tài)機狀態(tài)切換流程66、STA-Mode狀態(tài)機狀態(tài)切換流程67,以及System狀態(tài)機狀態(tài)切換流程68ο
[0106]可以根據(jù)事件消息的內(nèi)容和對應(yīng)的狀態(tài)機的狀態(tài)轉(zhuǎn)換機制控制無線通信模塊的狀態(tài)進行切換。
[0107]例如,如圖6所示,無線通信模塊取消AP模式,則會產(chǎn)生AF_EVT_AP_STOP應(yīng)用事件消息,該AF_EVT_AP_STOP應(yīng)用事件消息的內(nèi)容為取消AP模式,當(dāng)無線通信模塊處在AP運行中的狀態(tài),且無線通信模塊的主線程讀取到該AF_EVT_AP_STOP應(yīng)用事件消息時,AP-Mode狀態(tài)機控制無線通信模塊由AP運行中的狀態(tài)切換至空閑的狀態(tài)。
[0108]本實施例中,通過配置無線通信模塊的狀態(tài)轉(zhuǎn)換機制,可以使無線通信模塊中的內(nèi)置程序調(diào)用配置好的狀態(tài)屬性,使無線通信模塊能在不同的狀態(tài)間進行切換,通過根據(jù)事件消息的模式屬性將事件消息分發(fā)至對應(yīng)的狀態(tài)機,其中,模式屬性為AP-Mode、STA-Mode,或者System中的任一種,并根據(jù)事件消息和對應(yīng)的狀態(tài)機的狀態(tài)轉(zhuǎn)換機制控制無線通信模塊的狀態(tài)進行切換,能夠?qū)崿F(xiàn)無線通信模塊中三種狀態(tài)機的協(xié)作運行,有效提升無線通信模塊的狀態(tài)管理效果。通過將事件消息分發(fā)至對應(yīng)的狀態(tài)機分別進行狀態(tài)管理,在無線通信模塊底層硬件實現(xiàn)方面可以增強代碼結(jié)構(gòu)的邏輯性,降低代碼開發(fā)的復(fù)雜性,便于后期無線通信模塊硬件系統(tǒng)的功能擴展。
[0109]圖7是本發(fā)明另一實施例提出的基于無線通信模塊的云接入方法的流程示意圖,該基于無線通信模塊的云接入方法包括:
[0110]S701:業(yè)務(wù)邏輯線程與串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程進行消息交換,以對串口數(shù)據(jù)收發(fā)線程和網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程收發(fā)的消息進行控制。
[0111]其中,本發(fā)明實施例中的業(yè)務(wù)邏輯線程為基于M-Smart系統(tǒng)的業(yè)務(wù)邏輯線程。M-Smart系統(tǒng)開放具體提供的服務(wù)內(nèi)容,M-Smart系統(tǒng)針對使用第三方云、使用美的內(nèi)建云、沒有云的三種互聯(lián)網(wǎng)合作者開放對接形式。
[0112]具體地,業(yè)務(wù)邏輯線程通過M-Smart協(xié)議與串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程進行消息交換。
[0113]S702:主線程對串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程和業(yè)務(wù)邏輯線程進行控制。
[0114]可選地,主線程用于對無線通信模塊的狀態(tài)機進行管理。
[0115]主線程用于對無線通信模塊的狀態(tài)機進行管理,具體包括:無線通信模塊接收事件消息;根據(jù)事件消息的模式屬性將事件消息分發(fā)至對應(yīng)的狀態(tài)機,其中,模式屬性為AP-Mode、 STA-Mode, 或者 System 中的任一種; 根據(jù)事件消息和對應(yīng)的狀態(tài)機的狀態(tài)轉(zhuǎn)換機制控制無線通信模塊的狀態(tài)進行切換。
[0116]可選地,主線程對無線通信模塊的狀態(tài)機進行管理的流程實施例詳見圖4和圖5實施例。
[0117]可選地,該基于無線通信模塊的云接入方法還包括:業(yè)務(wù)邏輯線程通過網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程獲取云服務(wù)器發(fā)送至家用電器的第一類型報文;業(yè)務(wù)邏輯線程獲取云服務(wù)器的類型信息,并根據(jù)類型信息將第一類型報文轉(zhuǎn)換為第二類型報文;業(yè)務(wù)邏輯線程通過串口數(shù)據(jù)收發(fā)線程將第二類型報文發(fā)送至家用電器。
[0118]其中,報文是網(wǎng)絡(luò)中交換與傳輸?shù)臄?shù)據(jù)單元,即站點一次性要發(fā)送的數(shù)據(jù)塊。報文包含了將要發(fā)送的完整的數(shù)據(jù)信息,其長短不一致,長度不限且長度可變。通過不斷地將數(shù)據(jù)封裝成分組、包、幀來傳輸。
[0119]在本發(fā)明的實施例中,云服務(wù)器的類型信息可以例如云ID,不同的云ID標(biāo)識不同的云服務(wù)器,該云ID可以設(shè)置在第一類型報文的報文頭中,可以是報文頭中的預(yù)留字段,也可以設(shè)置在其它字段,本發(fā)明實施例對此不進行具體限制。
[0120]可選地,獲取云服務(wù)器的類型信息,具體包括:無線通信模塊獲取與云服務(wù)器相連接的Socket連接信息;以及無線通信模塊根據(jù)Socket連接信息確定類型信息。
[0121]具體地,如圖3所示,為本發(fā)明實施例中無線通信模塊消息交換流程示意圖。包括:串口數(shù)據(jù)收發(fā)線程31、基于M-Smart系統(tǒng)的業(yè)務(wù)邏輯線程32、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程33、串口數(shù)據(jù)收發(fā)緩沖器34、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)緩沖器35、基于M-Smart系統(tǒng)的轉(zhuǎn)換協(xié)議36、云服務(wù)器102,以及家用電器103。
[0122]下發(fā)消息交換流程例如,無線通信模塊中的網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程獲取到云服務(wù)器發(fā)送至家用電器的第一類型報文后,網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程創(chuàng)建網(wǎng)絡(luò)收發(fā)數(shù)據(jù)包消息隊列,并將第一類型報文添加至網(wǎng)絡(luò)收發(fā)數(shù)據(jù)包消息隊列,無線通信模塊中的基于M-Smart系統(tǒng)的業(yè)務(wù)邏輯線程通過云服務(wù)器SDK中協(xié)議轉(zhuǎn)換文件的函數(shù)接口從網(wǎng)絡(luò)收發(fā)數(shù)據(jù)包消息隊列對應(yīng)的網(wǎng)絡(luò)數(shù)據(jù)收發(fā)緩沖器中獲取第一類型報文,根據(jù)第一類型報文的報文頭中的云ID,對第一類型報文進行協(xié)議轉(zhuǎn)換,得到第二類型報文,將第二類型報文存儲在云接入系統(tǒng)分配的串口數(shù)據(jù)收發(fā)緩沖器中,并觸發(fā)應(yīng)用事件回調(diào)子模塊控制基于M-Smart系統(tǒng)的業(yè)務(wù)邏輯線程將第二類型報文通過串口數(shù)據(jù)收發(fā)線程下發(fā)至家用電器。其中,云服務(wù)器SDK中的協(xié)議轉(zhuǎn)換文件例如,阿里云ali_sdk.c的協(xié)議轉(zhuǎn)換文件ali_prof ile.C、京東云jd_sdk.c的協(xié)議轉(zhuǎn)換文件jd_prof ile.C、小米云xm_sdk.c的協(xié)議轉(zhuǎn)換文件xm_prof ile.c,以及美的云md_sdk.c的協(xié)議轉(zhuǎn)換文件md_prof ile.C。
[0123]可選地,該基于無線通信模塊的云接入方法還包括:無線通信模塊接收家用電器發(fā)送的第二類型報文,并獲取第二類型報文對應(yīng)的目的地址,以及根據(jù)目標(biāo)地址確定對應(yīng)云服務(wù)器的類型信息;無線通信模塊根據(jù)云服務(wù)器的類型信息調(diào)用對應(yīng)的轉(zhuǎn)換協(xié)議;以及無線通信模塊根據(jù)轉(zhuǎn)換協(xié)議將第二類型報文轉(zhuǎn)換為第一類型報文,并將第一類型報文發(fā)送至對應(yīng)的云服務(wù)器。
[0124]在本發(fā)明的實施例中,第二類型報文對應(yīng)的目的地址標(biāo)識云服務(wù)器,該目的地址可以設(shè)置在第二類型報文的報文頭中,可以是報文頭中的預(yù)留字段,也可以設(shè)置在其它字段,本發(fā)明實施例對此不進行具體限制。
[0125]具體地,如圖3所示,上報消息交換流程例如,無線通信模塊中的串口數(shù)據(jù)收發(fā)線程接收家用電器發(fā)送的第二類型報文后,串口數(shù)據(jù)收發(fā)線程創(chuàng)建串口收發(fā)數(shù)據(jù)包消息隊列,并將第二類型報文添加至串口收發(fā)數(shù)據(jù)包消息隊列中,無線通信模塊中的基于M-Smart系統(tǒng)的業(yè)務(wù)邏輯線程通過云服務(wù)器SDK中協(xié)議轉(zhuǎn)換文件的函數(shù)接口從串口收發(fā)數(shù)據(jù)包消息隊列對應(yīng)的串口數(shù)據(jù)收發(fā)緩沖器中獲取第二類型報文,根據(jù)第二類型報文的報文頭中目的地址對應(yīng)的云服務(wù)器的類型信息,對第二類型報文進行協(xié)議轉(zhuǎn)換,得到第一類型報文,將第一類型報文存儲在云接入系統(tǒng)分配的網(wǎng)絡(luò)數(shù)據(jù)收發(fā)緩沖器中,并觸發(fā)應(yīng)用事件回調(diào)子模塊控制基于M-Smart系統(tǒng)的業(yè)務(wù)邏輯線程將第一類型報文通過網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程上報至云服務(wù)器。
[0126]本實施例中,通過業(yè)務(wù)邏輯線程與串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程進行消息交換,以對串口數(shù)據(jù)收發(fā)線程和網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程收發(fā)的消息進行控制,主線程對串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程和業(yè)務(wù)邏輯線程進行控制,能夠?qū)崿F(xiàn)多個線程的協(xié)作運行,有效提升云服務(wù)器接入過程中的線程調(diào)度效果,便于后期無線通信模塊硬件系統(tǒng)的功能擴展。
[0127]需要說明的是,在本發(fā)明的描述中,術(shù)語“第一”、“第二”等僅用于描述目的,而不能理解為指示或暗示相對重要性。此外,在本發(fā)明的描述中,除非另有說明,“多個”的含義是兩個或兩個以上。
[0128]流程圖中或在此以其他方式描述的任何過程或方法描述可以被理解為,表示包括一個或更多個用于實現(xiàn)特定邏輯功能或過程的步驟的可執(zhí)行指令的代碼的模塊、片段或部分,并且本發(fā)明的優(yōu)選實施方式的范圍包括另外的實現(xiàn),其中可以不按所示出或討論的順序,包括根據(jù)所涉及的功能按基本同時的方式或按相反的順序,來執(zhí)行功能,這應(yīng)被本發(fā)明的實施例所屬技術(shù)領(lǐng)域的技術(shù)人員所理解。
[0129]應(yīng)當(dāng)理解,本發(fā)明的各部分可以用硬件、軟件、固件或它們的組合來實現(xiàn)。在上述實施方式中,多個步驟或方法可以用存儲在存儲器中且由合適的指令執(zhí)行系統(tǒng)執(zhí)行的軟件或固件來實現(xiàn)。例如,如果用硬件來實現(xiàn),和在另一實施方式中一樣,可用本領(lǐng)域公知的下列技術(shù)中的任一項或他們的組合來實現(xiàn):具有用于對數(shù)據(jù)信號實現(xiàn)邏輯功能的邏輯門電路的離散邏輯電路,具有合適的組合邏輯門電路的專用集成電路,可編程門陣列(PGA),現(xiàn)場可編程門陣列(FPGA)等。
[0130]本技術(shù)領(lǐng)域的普通技術(shù)人員可以理解實現(xiàn)上述實施例方法攜帶的全部或部分步驟是可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲于一種計算機可讀存儲介質(zhì)中,該程序在執(zhí)行時,包括方法實施例的步驟之一或其組合。
[0131 ]此外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理模塊中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個模塊中。上述集成的模塊既可以采用硬件的形式實現(xiàn),也可以采用軟件功能模塊的形式實現(xiàn)。所述集成的模塊如果以軟件功能模塊的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,也可以存儲在一個計算機可讀取存儲介質(zhì)中。
[0132]上述提到的存儲介質(zhì)可以是只讀存儲器,磁盤或光盤等。
[0133]在本說明書的描述中,參考術(shù)語“一個實施例”、“一些實施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結(jié)合該實施例或示例描述的具體特征、結(jié)構(gòu)、材料或者特點包含于本發(fā)明的至少一個實施例或示例中。在本說明書中,對上述術(shù)語的示意性表述不一定指的是相同的實施例或示例。而且,描述的具體特征、結(jié)構(gòu)、材料或者特點可以在任何的一個或多個實施例或示例中以合適的方式結(jié)合。
[0134]盡管上面已經(jīng)示出和描述了本發(fā)明的實施例,可以理解的是,上述實施例是示例性的,不能理解為對本發(fā)明的限制,本領(lǐng)域的普通技術(shù)人員在本發(fā)明的范圍內(nèi)可以對上述實施例進行變化、修改、替換和變型。
【主權(quán)項】
1.一種基于無線通信模塊的云接入系統(tǒng),其特征在于,包括無線通信模塊、通過所述無線通信模塊相互通信的云服務(wù)器和家用電器,其中,所述無線通信模塊中包括: 串口數(shù)據(jù)收發(fā)線程,用于與所述家用電器進行通信; 網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程,用于與所述云服務(wù)器進行通信; 業(yè)務(wù)邏輯線程,用于與所述串口數(shù)據(jù)收發(fā)線程、所述網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程進行消息交換,以對所述串口數(shù)據(jù)收發(fā)線程和所述網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程收發(fā)的消息進行控制;以及 主線程,所述主線程用于對所述串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程和業(yè)務(wù)邏輯線程進行控制。2.如權(quán)利要求1所述的基于無線通信模塊的云接入系統(tǒng),其特征在于,還包括: 轉(zhuǎn)換協(xié)議數(shù)據(jù)庫,用于存儲所述云服務(wù)器對應(yīng)的轉(zhuǎn)換協(xié)議。3.如權(quán)利要求2所述的基于無線通信模塊的云接入系統(tǒng),其特征在于,還包括: 所述業(yè)務(wù)邏輯線程通過所述網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程獲取所述云服務(wù)器發(fā)送至所述家用電器的第一類型報文; 所述業(yè)務(wù)邏輯線程獲取所述云服務(wù)器的類型信息,并根據(jù)所述類型信息將所述第一類型報文轉(zhuǎn)換為第二類型報文; 所述業(yè)務(wù)邏輯線程通過所述串口數(shù)據(jù)收發(fā)線程將所述第二類型報文發(fā)送至所述家用電器。4.如權(quán)利要求2所述的基于無線通信模塊的云接入系統(tǒng),其特征在于,還包括: 所述無線通信模塊接收家用電器發(fā)送的第二類型報文,并獲取所述第二類型報文對應(yīng)的目的地址,以及根據(jù)所述目標(biāo)地址確定對應(yīng)云服務(wù)器的類型信息; 所述無線通信模塊根據(jù)所述云服務(wù)器的類型信息調(diào)用對應(yīng)的轉(zhuǎn)換協(xié)議;以及所述無線通信模塊根據(jù)所述轉(zhuǎn)換協(xié)議將所述第二類型報文轉(zhuǎn)換為第一類型報文,并將所述第一類型報文發(fā)送至對應(yīng)的云服務(wù)器。5.如權(quán)利要求1所述的基于無線通信模塊的云接入系統(tǒng),其特征在于,所述主線程用于對所述無線通信模塊的狀態(tài)機進行管理。6.如權(quán)利要求1所述的基于無線通信模塊的云接入系統(tǒng),其特征在于,所述主線程用于對所述無線通信模塊的狀態(tài)機進行管理。7.如權(quán)利要求6所述的基于無線通信模塊的云接入系統(tǒng),其特征在于,所述主線程用于對所述無線通信模塊的狀態(tài)機進行管理,具體包括: 所述無線通信模塊接收事件消息; 根據(jù)所述事件消息的模式屬性將所述事件消息分發(fā)至對應(yīng)的狀態(tài)機,其中,所述模式屬性為AP-Mode、STA-Mode,或者System中的任一種; 根據(jù)所述事件消息和所述對應(yīng)的狀態(tài)機的狀態(tài)轉(zhuǎn)換機制控制所述無線通信模塊的狀態(tài)進行切換。8.如權(quán)利要求7所述的基于無線通信模塊的云接入系統(tǒng),其特征在于,所述無線通信模塊接收事件消息之前,還包括: 配置所述無線通信模塊的狀態(tài)轉(zhuǎn)換機制。9.如權(quán)利要求8所述的基于無線通信模塊的云接入系統(tǒng),其特征在于,所述狀態(tài)機包括AP-Mode狀態(tài)機、STA-Mode狀態(tài)機,以及System狀態(tài)機,所述模式屬性AP-Mode對應(yīng)AP-Mode狀態(tài)機、所述模式屬性STA-Mode對應(yīng)STA-Mode狀態(tài)機,以及所述模式屬性System對應(yīng)System狀態(tài)機。10.如權(quán)利要求8所述的基于無線通信模塊的云接入系統(tǒng),其特征在于,所述配置所述無線通信模塊的狀態(tài)轉(zhuǎn)換機制,包括: 將所述AP-Mode狀態(tài)機、所述STA-Mode狀態(tài)機,以及所述Sy stem狀態(tài)機的狀態(tài)屬性疊加,以配置所述無線通信模塊的狀態(tài)轉(zhuǎn)換機制。11.如權(quán)利要求7所述的基于無線通信模塊的云接入系統(tǒng),其特征在于,所述無線通信模塊的狀態(tài)包括AP-Mode狀態(tài)機中的建立AP中、AP運行中、以及空閑三種狀態(tài),STA-Mode狀態(tài)機中的連接中、已連接、以及空閑三種狀態(tài);System狀態(tài)機中的網(wǎng)絡(luò)未建立、網(wǎng)絡(luò)已建立、以及初始化三種狀態(tài)。12.如權(quán)利要求11所述的基于無線通信模塊的云接入系統(tǒng),其特征在于,所述根據(jù)所述事件消息和所述對應(yīng)的狀態(tài)機的狀態(tài)轉(zhuǎn)換機制控制所述無線通信模塊的狀態(tài)進行切換,包括: 如果所述事件消息的模式屬性為AP-Mode,則AP-Mode狀態(tài)機根據(jù)所述事件消息和所述AP-Mode狀態(tài)機的狀態(tài)轉(zhuǎn)換機制控制所述無線通信模塊的狀態(tài)在建立AP中、AP運行中、以及空閑三種狀態(tài)之間進行切換; 如果所述事件消息的模式屬性為STA-Mode,則STA-Mode狀態(tài)機根據(jù)所述事件消息和所述STA-Mode狀態(tài)機的狀態(tài)轉(zhuǎn)換機制控制所述無線通信模塊的狀態(tài)在連接中、已連接、以及空閑三種狀態(tài)之間進行切換; 如果所述事件消息的模式屬性為Sy s t em,則Sy s t em狀態(tài)機根據(jù)所述事件消息和所述System狀態(tài)機的狀態(tài)轉(zhuǎn)換機制控制所述無線通信模塊的狀態(tài)在網(wǎng)絡(luò)未建立、網(wǎng)絡(luò)已建立、以及初始化三種狀態(tài)之間進行切換。13.如權(quán)利要求7所述的基于無線通信模塊的云接入系統(tǒng),其特征在于,所述事件消息包括應(yīng)用事件消息和WIFI回調(diào)事件消息,所述無線通信模塊接收事件消息,包括: 所述應(yīng)用事件消息隊列接收所述業(yè)務(wù)邏輯線程生成的應(yīng)用事件消息; WIFI事件回調(diào)子模塊接收所述WIFI回調(diào)事件消息,并在接收到所述WIFI回調(diào)事件消息之后,將所述WIFI回調(diào)事件消息添加至所述應(yīng)用事件消息隊列。14.如權(quán)利要求13所述的基于無線通信模塊的云接入系統(tǒng),其特征在于,還包括: 讀取所述應(yīng)用事件消息隊列中的所述應(yīng)用事件消息和所述WIFI回調(diào)事件消息。15.—種基于無線通信模塊的云接入方法,其特征在于,包括以下步驟: 業(yè)務(wù)邏輯線程與串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程進行消息交換,以對所述串口數(shù)據(jù)收發(fā)線程和所述網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程收發(fā)的消息進行控制; 主線程對所述串口數(shù)據(jù)收發(fā)線程、所述網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程和所述業(yè)務(wù)邏輯線程進行控制。16.如權(quán)利要求15所述的基于無線通信模塊的云接入方法,其特征在于,還包括: 所述業(yè)務(wù)邏輯線程通過所述網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程獲取所述云服務(wù)器發(fā)送至所述家用電器的第一類型報文; 所述業(yè)務(wù)邏輯線程獲取所述云服務(wù)器的類型信息,并根據(jù)所述類型信息將所述第一類型報文轉(zhuǎn)換為第二類型報文; 所述業(yè)務(wù)邏輯線程通過所述串口數(shù)據(jù)收發(fā)線程將所述第二類型報文發(fā)送至所述家用電器。17.如權(quán)利要求16所述的基于無線通信模塊的云接入方法,其特征在于,所述獲取所述云服務(wù)器的類型信息,具體包括: 所述無線通信模塊獲取與所述云服務(wù)器相連接的Socket連接信息;以及 所述無線通信模塊根據(jù)所述Socket連接信息確定所述類型信息。18.如權(quán)利要求16所述的基于無線通信模塊的云接入方法,其特征在于,還包括: 無線通信模塊接收家用電器發(fā)送的第二類型報文,并獲取所述第二類型報文對應(yīng)的目的地址,以及根據(jù)所述目標(biāo)地址確定對應(yīng)云服務(wù)器的類型信息; 所述無線通信模塊根據(jù)所述云服務(wù)器的類型信息調(diào)用對應(yīng)的轉(zhuǎn)換協(xié)議;以及所述無線通信模塊根據(jù)所述轉(zhuǎn)換協(xié)議將所述第二類型報文轉(zhuǎn)換為第一類型報文,并將所述第一類型報文發(fā)送至對應(yīng)的云服務(wù)器。19.一種無線通信模塊,其特征在于,包括: 串口數(shù)據(jù)收發(fā)線程,用于與所述家用電器進行通信; 網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程,用于與所述云服務(wù)器進行通信; 業(yè)務(wù)邏輯線程,用于與所述串口數(shù)據(jù)收發(fā)線程、所述網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程進行消息交換,以對所述串口數(shù)據(jù)收發(fā)線程和所述網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程收發(fā)的消息進行控制;以及 主線程,所述主線程用于對所述串口數(shù)據(jù)收發(fā)線程、網(wǎng)絡(luò)數(shù)據(jù)收發(fā)線程和業(yè)務(wù)邏輯線程進行控制; 應(yīng)用事件回調(diào)子模塊,所述主線程通過所述應(yīng)用事件回調(diào)子模塊控制所述業(yè)務(wù)邏輯線程;以及 應(yīng)用事件消息隊列,用于接收事件消息,并供所述主線程讀取,其中,所述事件消息包括應(yīng)用事件消息和WIFI回調(diào)事件消息; 狀態(tài)機事件分發(fā)處理子模塊,用于根據(jù)所述事件消息的模式屬性將所述事件消息分發(fā)至對應(yīng)的狀態(tài)機,其中,所述模式屬性為AP-Mode、STA-Mode,或者System中的任一種,讀取所述應(yīng)用事件消息隊列中的所述應(yīng)用事件消息和WIFI回調(diào)事件消息,配置所述無線通信模塊的狀態(tài)轉(zhuǎn)換機制; 狀態(tài)機,用于根據(jù)所述事件消息和狀態(tài)轉(zhuǎn)換機制控制所述無線通信模塊的狀態(tài)進行切換。20.如權(quán)利要求19所述的無線通信模塊,其特征在于,所述狀態(tài)機事件分發(fā)處理子模塊還用于: 將所述AP-Mode狀態(tài)機、所述STA-Mode狀態(tài)機,以及所述Sy stem狀態(tài)機的狀態(tài)屬性疊加,以配置所述無線通信模塊的狀態(tài)轉(zhuǎn)換機制。21.如權(quán)利要求20所述的無線通信模塊,其特征在于,所述狀態(tài)機還用于: 如果所述事件消息的模式屬性為AP-Mode,則AP-Mode狀態(tài)機根據(jù)所述事件消息和所述AP-Mode狀態(tài)機的狀態(tài)轉(zhuǎn)換機制控制所述無線通信模塊的狀態(tài)在建立AP中、AP運行中、以及空閑三種狀態(tài)之間進行切換; 如果所述事件消息的模式屬性為STA-Mode,則STA-Mode狀態(tài)機根據(jù)所述事件消息和所述STA-Mode狀態(tài)機的狀態(tài)轉(zhuǎn)換機制控制所述無線通信模塊的狀態(tài)在連接中、已連接、以及空閑三種狀態(tài)之間進行切換; 如果所述事件消息的模式屬性為Sy S t em,則Sy S t em狀態(tài)機根據(jù)所述事件消息和所述System狀態(tài)機的狀態(tài)轉(zhuǎn)換機制控制所述無線通信模塊的狀態(tài)在網(wǎng)絡(luò)未建立、網(wǎng)絡(luò)已建立、以及初始化三種狀態(tài)之間進行切換。22.如權(quán)利要求21所述的無線通信模塊,其特征在于,還包括: WIFI事件回調(diào)子模塊,用于接收WIFI回調(diào)事件消息,并在接收到所述WIFI回調(diào)事件消息之后,將所述WIFI回調(diào)事件消息添加至所述應(yīng)用事件消息隊列。23.如權(quán)利要求19所述的無線通信模塊,其特征在于,所述應(yīng)用事件消息隊列接收事件消息,包括: 應(yīng)用事件消息隊列接收業(yè)務(wù)邏輯線程生成的應(yīng)用事件消息;以及 接收所述WIFI事件回調(diào)子模塊添加的所述WIFI回調(diào)事件消息。
【文檔編號】H04L29/08GK105871991SQ201510932057
【公開日】2016年8月17日
【申請日】2015年12月14日
【發(fā)明人】鄒偉, 楊俊 , 劉復(fù)鑫, 周子航, 吳曉東
【申請人】美的集團股份有限公司