欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于管理已連接消費者設備的靈活規(guī)則引擎的制作方法

文檔序號:11635230閱讀:143來源:國知局
用于管理已連接消費者設備的靈活規(guī)則引擎的制造方法與工藝



背景技術:

很多現(xiàn)代電器、消費者設備以及其它設備包括被配置為執(zhí)行一個或多個專用功能的嵌入式系統(tǒng)。然而,這些設備的大多數(shù)嵌入式系統(tǒng)不包括聯(lián)網(wǎng)能力、基于角色的訪問控制能力、遠程接口能力、遠程控制能力或相關能力。將這樣的功能設計到嵌入式系統(tǒng)中、設計用于訪問這些功能的應用編程接口(api)、設計能夠經(jīng)由這種添加的功能而與嵌入式系統(tǒng)進行通信及對其進行控制的web服務、以及設計用于利用該功能的應用,可能會消耗設備制造商的大量資源。此外,傳統(tǒng)的嵌入式系統(tǒng)不會響應于滿足規(guī)則引擎中的一個或多個規(guī)則的其它嵌入式系統(tǒng)上的事件、或者響應于滿足嵌入式設備的消費者或原始設備制造商(oem)所定義的一個或多個規(guī)則的外部事件而執(zhí)行操作。

附圖說明

現(xiàn)在參考示出本申請的示例實施方式的附圖,并且其中:

圖1是描繪示例網(wǎng)絡架構的框圖;

圖2a是規(guī)則引擎的示例實施方式的框圖;

圖2b是規(guī)則創(chuàng)建器的示例實施方式的框圖;

圖3是應用一個或多個規(guī)則的規(guī)則引擎的輸入饋送和輸出饋送的框圖;

圖4是響應于第一聯(lián)網(wǎng)設備上的事件而觸發(fā)在第二聯(lián)網(wǎng)設備上的操作的示例方法的流程圖;

圖5是響應于其它服務和/或聯(lián)網(wǎng)設備上的事件而觸發(fā)對服務和/或聯(lián)網(wǎng)設備的一個或多個操作的示例方法的流程圖;

圖6是對規(guī)則進行速率極值和/或循環(huán)檢測的示例方法的流程圖;

圖7a是通過規(guī)則引擎生成執(zhí)行規(guī)則的示例方法的流程圖;

圖7b是通過規(guī)則引擎生成執(zhí)行規(guī)則的另一種示例方法752的流程圖;

圖8是具有可遠程訪問的嵌入式系統(tǒng)的示例設備的框圖;和

圖9示出了計算設備的一個實施方式的框圖。

具體實施方式

物聯(lián)網(wǎng)(iot)演進已經(jīng)使得消費者和原始設備制造商(oem)以前所未有的方式與其連接的設備進行交互。物聯(lián)網(wǎng)演進開放了消費者從世界任何地方遠程控制和監(jiān)控其設備的可能性。除了用戶發(fā)起的操作之外,用戶還可能希望對其設備進行編程以響應于事件執(zhí)行操作。這些操作可以用于對緊急事件做出反應,以基于當前狀況來實現(xiàn)設備的高效運行,向用戶提供關鍵事件的通知等。這里描述的方法和技術使消費者和原始設備制造商能夠自定義他們的設備對什么事件作出反應以及他們的設備對這些事件的反應方式。

實施方式涉及一種聯(lián)網(wǎng)設備平臺(也稱為物聯(lián)網(wǎng)(iot)云平臺或簡稱為iot平臺),其提供靈活的規(guī)則引擎,該規(guī)則引擎將規(guī)則應用于任何輸入以生成發(fā)送到輸出的消息??梢詮囊粋€或多個聯(lián)網(wǎng)設備和/或服務接收輸入,并且可以將輸出發(fā)送到一個或多個其它聯(lián)網(wǎng)設備和/或服務。在一個實施方式中,將規(guī)則引擎的每個輸入和輸出建模為饋送。饋送可以是觸發(fā)操作的輸入饋送或者可以是可以為操作本身的輸出饋送。松散聯(lián)接的饋送可以通過用戶定義的規(guī)則連接在一起。iot平臺可以隨時通過一組獨特的輸入、準則和/或輸出生成新的規(guī)則。因此,實施方式提供了使用規(guī)則引擎來控制聯(lián)網(wǎng)設備(例如嵌入式系統(tǒng))的靈活框架。

在一個實施方式中,用戶賬戶可以與規(guī)則、用戶的第一聯(lián)網(wǎng)設備和用戶的第二聯(lián)網(wǎng)設備相關聯(lián)。執(zhí)行規(guī)則引擎的處理設備接收第一聯(lián)網(wǎng)設備上的事件通知。處理設備標識規(guī)則,其中第一聯(lián)網(wǎng)設備上的事件是針對規(guī)則的輸入。處理設備確定事件滿足規(guī)則的準則。然后,處理設備響應于確定事件滿足準則來確定要由第二聯(lián)網(wǎng)設備執(zhí)行的操作。處理設備對第二聯(lián)網(wǎng)設備生成命令,其中,命令使第二聯(lián)網(wǎng)設備執(zhí)行操作。處理設備然后將命令發(fā)送到第二聯(lián)網(wǎng)設備。因此,用戶可以配置將使第二聯(lián)網(wǎng)設備響應于第一聯(lián)網(wǎng)設備上的事件而執(zhí)行操作的規(guī)則。無論用戶是登錄到提供規(guī)則引擎的任何設備還是服務,都可以自動檢測和執(zhí)行事件和操作。

現(xiàn)參考附圖,圖1是描述示例網(wǎng)絡架構100的框圖,網(wǎng)絡架構100包括遠程可訪問嵌入式系統(tǒng)和與嵌入式系統(tǒng)進行交互的計算設備。網(wǎng)絡架構100包括連接到局域網(wǎng)(lan)165的多個設備135a-135c。因此,設備135a-c可以稱為聯(lián)網(wǎng)設備。

設備135a-135c是具有嵌入式系統(tǒng)150a-150c的設備,并且可以包括例如電子電器(例如冰箱、烤箱、洗衣機、干燥機、洗碗機、恒溫器、報警器、空調器、電視、無線電、接收機、放大器等)。設備135a-135c可以還包括消費者設備(例如數(shù)碼手表、音樂播放器、游戲控制臺、數(shù)碼相機、打印機等)。設備135a-135c的其它示例包括固定設備(例如hvac系統(tǒng)、交通燈、工廠控制器、標牌、電子廣告牌、噴灑器系統(tǒng)和灌溉控制系統(tǒng)以及醫(yī)療設備)。嵌入式系統(tǒng)150a-150c可以稱為聯(lián)網(wǎng)設備。設備135a-135c也可以是包括嵌入式系統(tǒng)的任何其它類型的設備。

嵌入式系統(tǒng)150a-150c是嵌入到另一設備中作為該設備的一個部件的一類計算設備。設備135a-135c通常還包括可以與嵌入式系統(tǒng)150a-150c進行對接的其它硬件、電氣部件和/或機械部件。嵌入式系統(tǒng)150a-150c通常被配置為處理特定任務或任務集合,嵌入式系統(tǒng)150a-150c可以針對該特定任務或任務集合而被優(yōu)化。相應地,與普通計算設備相比,嵌入式系統(tǒng)150a-150c可以具有最小成本和尺寸。

嵌入式系統(tǒng)150a-150c可以各自包括通信模塊(未示出),其使得嵌入式系統(tǒng)150a-150c(因而設備135a-135c)能夠連接到lan165或無線載波網(wǎng)絡(其例如使用各種數(shù)據(jù)處理設備、通信塔等所實現(xiàn))。通信模塊可以被配置為:管理安全性,管理會話,管理訪問控制,管理與外部設備的通信等。

在一個實施方式中,通信模塊被配置為:使用進行通信??商孢x地,通信模塊可以被配置為:使用針對低功率無線域網(wǎng)絡的互聯(lián)網(wǎng)協(xié)議版本6(6lowpan)、電力線通信(plc)、以太網(wǎng)(例如10兆字節(jié)(mb)、100mb和/或1吉字節(jié)(gb)以太網(wǎng))或其它通信協(xié)議進行通信。如果通信模塊被配置為與無線載波網(wǎng)絡進行通信,則通信模塊可以使用全球移動通信系統(tǒng)(gsm)、碼分多址(cdma)、通用移動通信系統(tǒng)(umts)、3gpp長期演進(lte)、微波接入全球互通(wimax)或任何其它第二代無線電話技術(2g)、第三代無線電話技術(3g)、第四代無線電話技術(4g)或其它無線電話技術進行通信。以下參考圖8更詳細地描述嵌入式系統(tǒng)的一個示例。

再次參考圖1,lan165可以包括路由器、交換機、橋接器或使得能夠在連接到lan165的多個設備之間進行通信的其它網(wǎng)絡設備(未示出)。網(wǎng)絡設備可以使用例如以太網(wǎng)端口、通用串行總線(usb)端口和/或端口提供與lan的有線連接。網(wǎng)絡設備可以使用例如wi-fi收發(fā)機另外提供與lan的無線連接。

一些嵌入式系統(tǒng)150a-150c可能不支持網(wǎng)絡設備所支持的任何通信類型。例如,設備135a可以支持zigbee,并且設備135b可以支持藍牙。為了使得這些設備能夠連接到lan165,lan165可以包括經(jīng)由網(wǎng)絡設備所支持的連接類型之一(例如,經(jīng)由以太網(wǎng)或wi-fi)連接到網(wǎng)絡設備的網(wǎng)關設備(未示出)。網(wǎng)關設備可以另外支持其它通信協(xié)議(例如zigbee、plc和/或藍牙),并且可以在所支持的各通信協(xié)議之間進行轉譯。相應地,一些設備可以通過網(wǎng)關設備連接到lan165。

lan165(或無線載波)連接到廣域網(wǎng)(wan)170。wan170可以是私有wan(例如內部網(wǎng))或公共wan(例如互聯(lián)網(wǎng)),或可以包括私有網(wǎng)絡和公共網(wǎng)絡的組合。lan165可以包括提供與wan170的連接的路由器和/或調制解調器(例如有線調制解調器、直連串行鏈路(dsl)調制解調器、微波接入全球互通調制解調器、長期演進調制解調器等)。

wan170可以包括或連接到一個或多個服務器計算設備125a-125b。服務器計算設備125a-125b可以包括物理機器和/或以物理機器作為主機的虛擬機。物理機器可以是機架安裝服務器、臺式計算機或其它計算設備。在一個實施方式中,服務器計算設備125a-125b包括由云提供商系統(tǒng)管理和提供的虛擬機。由云服務提供商所提供的每個虛擬機可以在被配置作為云的一部分的物理機器上。這些物理機器一般位于數(shù)據(jù)中心中。云提供商系統(tǒng)和云可以提供作為基礎設施即服務(iaas)層。這種云的一個示例是的彈性計算云

服務器計算設備125a作為一個或多個wan可訪問服務130的主機,其可以是基于web的服務和/或云服務(例如在云計算平臺中的基于web的服務)。wan可訪問服務130可以(例如經(jīng)由連續(xù)連接或斷續(xù)連接)與嵌入式系統(tǒng)150a-150c中的一個或多個保持會話。可替選地,wan可訪問服務130可以周期性地建立與嵌入式系統(tǒng)150a-150c的會話。經(jīng)由與嵌入式系統(tǒng)150a-150c的會話,wan可訪問服務130可以將命令發(fā)放到嵌入式系統(tǒng),和/或從嵌入式系統(tǒng)接收狀態(tài)更新。命令可以是用于改變可由嵌入式系統(tǒng)控制的設備的一個或多個參數(shù)的狀態(tài)的命令。例如,如果嵌入式系統(tǒng)嵌入在加熱器或恒溫器中,則命令可以包括用于增加或降低溫度的命令。在另一示例中,如果嵌入式系統(tǒng)嵌入在家庭自動化系統(tǒng)中,則命令可以包括用于打開或關閉燈的命令。

從嵌入式系統(tǒng)150a-150c接收到的狀態(tài)更新可以標識包括嵌入式系統(tǒng)的設備135a-135c的一些或所有可檢測參數(shù)的值或狀態(tài)。狀態(tài)更新也可以包括故障信息、統(tǒng)計設備使用信息、跟蹤數(shù)據(jù)和/或其它信息。這些值、狀態(tài)和/或其它信息可以基于與設備的直接用戶交互而改變。這些值、狀態(tài)和/或其它信息也可以響應于由wan可訪問服務130和/或計算設備105a-105c發(fā)送給嵌入式系統(tǒng)150a-150c的命令而改變。此外,嵌入式系統(tǒng)150a-150c的值、狀態(tài)和其他信息可以基于嵌入式系統(tǒng)的環(huán)境條件而改變。通過保持或周期性地建立與嵌入式系統(tǒng)150a-150c的會話,wan可訪問服務130可以保持關于設備135a-135c的最新信息。

服務器計算設備125b包括一個或多個第三方服務162。第三方服務162可以是由除了包括wan可訪問服務130的iot平臺的提供商之外的實體提供的服務。如圖所示,服務器計算設備125b可以直接連接或通過wan170連接到服務器計算設備125a。第三方服務的示例包括天氣服務(例如提供實時天氣饋送)、時間服務(例如原子鐘)、豐富網(wǎng)站摘要(rss,也稱為真正簡易聚合)饋送、地區(qū)的地震數(shù)據(jù)(例如可用于在發(fā)生大地震的情況下關閉公用事業(yè))、跟蹤客戶付款的oem上的服務(例如可用于如果未收到付款則關閉設備控制),等等。對于涉及外部服務的操作,用戶可以輸入其憑據(jù)或通過授權過程來提供代表用戶對外部服務執(zhí)行操作的授權。

在一個實施方式中,wan可訪問服務130包括規(guī)則引擎128和規(guī)則創(chuàng)建器126。規(guī)則引擎128應用一個或多個規(guī)則來確定操作并生成消息和/或命令以基于接收到的事件來實施所確定的操作。規(guī)則引擎128可以隨時從設備135a-c、第三方服務162或其它wan可訪問服務130中的任一個接收事件的通知。規(guī)則引擎128包括多個輸入饋送,其中每個輸入饋送與源(例如第三方服務162、嵌入式系統(tǒng)150a-c、wan可訪問服務130等)相關聯(lián)。這些輸入饋送中的每一個可以是可以滿足規(guī)則中指定的條件的事件源。

規(guī)則引擎128標識檢測到的事件是輸入的一個規(guī)則或多個規(guī)則。然后,規(guī)則引擎128確定事件是否滿足觸發(fā)其它設備135a-c、wan可訪問服務130和/或第三方服務162上的一個或多個操作的準則。響應于確定接收到的事件滿足規(guī)則的準則,規(guī)則引擎128生成消息并將其發(fā)送到與規(guī)則的輸出相關聯(lián)的設備135a-135c、wan可訪問服務130或第三方服務162。

在一個示例中,設備135a是由嵌入式系統(tǒng)150a控制的噴灑系統(tǒng),并且第三方服務162是天氣饋送。規(guī)則引擎128從第三方服務162接收指示有90%的下雨幾率的天氣報告。規(guī)則引擎128包括這樣的規(guī)則:使規(guī)則引擎響應于大于50%的下雨可能性的天氣報告來取消噴灑系統(tǒng)(設備135a)的預定激活。因此,規(guī)則引擎128將天氣報告作為輸入應用于規(guī)則,并且確定噴灑系統(tǒng)的預定激活應該被取消。規(guī)則引擎128生成將使嵌入式系統(tǒng)150a取消噴灑系統(tǒng)的預定激活的命令,并將命令發(fā)送到嵌入式系統(tǒng)150a。

在另一示例中,設備135a是由嵌入式系統(tǒng)150a控制的洗衣機,第三方服務162包括能量成本饋送。規(guī)則引擎128從能量成本饋送接收指示當前能量成本的報告。規(guī)則引擎128進一步從智能水表接收指示當天已使用水量的報告。規(guī)則引擎128包括這樣的規(guī)則:當能量成本高于成本閾值并且當一天中已使用超過閾值量的水時,使規(guī)則引擎阻止洗滌循環(huán)啟動。因此,規(guī)則引擎128將能量成本饋送和來自水表的信息作為輸入應用于規(guī)則,并且當能量成本高于成本閾值和/或水的使用高于水使用閾值時,確定洗滌循環(huán)不能運行。規(guī)則引擎128生成將使嵌入式系統(tǒng)150a禁用洗衣機的洗滌循環(huán)的命令,并將命令發(fā)送到嵌入式系統(tǒng)150a。

在另一示例中,設備135a是房屋中的有因特網(wǎng)功能的門鎖,并且設備135b-c是房屋中的有因特網(wǎng)功能的燈。規(guī)則引擎128包括這樣的規(guī)則:將使燈能夠響應于門鎖被解鎖而打開。響應于用戶解鎖門,嵌入式系統(tǒng)150a向規(guī)則引擎128發(fā)送已經(jīng)發(fā)生門解鎖事件的通知。規(guī)則引擎128將門解鎖事件應用于規(guī)則,并確定燈將被打開。規(guī)則引擎128然后生成打開燈的命令,并將這些命令發(fā)送到嵌入式系統(tǒng)150b-c。然后,嵌入式系統(tǒng)150b-c應用命令并打開燈。因此,響應于在一個聯(lián)網(wǎng)設備(例如嵌入式系統(tǒng)150a)上發(fā)生的事件,在另一個聯(lián)網(wǎng)設備(例如嵌入式系統(tǒng)150b)上自動執(zhí)行操作。存在無數(shù)的其它用例,其規(guī)則可以由規(guī)則引擎128生成和應用。下面參考圖2a更詳細地討論規(guī)則引擎128。

再次參考圖1,規(guī)則創(chuàng)建器126生成由規(guī)則引擎128應用的新規(guī)則。規(guī)則可以由用戶生成而不執(zhí)行任何編程。在一個實施方式中,規(guī)則創(chuàng)建器216提供用戶界面(例如圖形用戶界面),其使得用戶能夠容易地設置應用于其聯(lián)網(wǎng)設備的新規(guī)則。下面參考圖2b更詳細地討論規(guī)則創(chuàng)建器126。

再次參考圖1,計算設備105可以包括便攜式設備(例如電子書閱讀器、便攜式數(shù)字助理、移動電話、膝上型計算機、便攜式媒體播放器、平板計算機、相機、攝像機、上網(wǎng)本、筆記本等)。計算設備105可以還包括傳統(tǒng)固定設備(例如臺式計算機、游戲控制臺、數(shù)字視頻盤(dvd)播放器、媒體中心等)。計算設備105可以連接到wan170和/或lan165。

計算設備105可以包括遠程控制應用(或多個遠程控制應用)115,其可以接收關于設備135a-135c的信息并且控制該設備135a-135c。遠程控制應用115被配置為:經(jīng)由設備的嵌入式系統(tǒng)150a-150c與設備135a-135c中的一個或多個進行對接和/或控制設備135a-135c中的一個或多個。遠程控制應用105a-105c可以被編程為運行于各種操作系統(tǒng)(例如,舉例為操作系統(tǒng)、操作系統(tǒng)、操作系統(tǒng)、操作系統(tǒng)和操作系統(tǒng))上。遠程控制應用105也可以被配置為固件,硬件,或軟件、固件和/或硬件的某種組合。遠程控制應用105可以包括圖形用戶接口(gui),其使得用戶能夠通過直觀且用戶友好的方式與設備135a-135c進行交互并且控制設備135a-135c。用戶可以與gui進行交互,以使得遠程控制應用生成針對gui中所表示的設備的通知、命令、性質更新和其它消息。

在一個實施方式中,遠程控制應用115與規(guī)則創(chuàng)建器126對接以生成新規(guī)則和/或修改現(xiàn)有規(guī)則。規(guī)則創(chuàng)建器126可以提供遠程控制應用115用于生成和/或修改規(guī)則的應用編程接口(api)。替選地,用戶可以訪問規(guī)則創(chuàng)建器126以通過可從web瀏覽器訪問的web界面來生成和/或修改規(guī)則。

圖2a是規(guī)則引擎205的示例性實施方式的框圖,其在一個實施方式中對應于圖1的規(guī)則引擎128。規(guī)則引擎205實行規(guī)則的執(zhí)行路徑。在執(zhí)行路徑中,針對規(guī)則引擎205內用戶指定的條件來評估來自輸入饋送的數(shù)據(jù),如果為真,則通過相應的輸出饋送來采取用戶指定的操作。規(guī)則引擎205可以包括安全上下文確定器220、規(guī)則確定器215和規(guī)則應用器225?;蛘撸踩舷挛拇_定器220、規(guī)則確定器215和/或規(guī)則應用器225中的一個或多個的功能可以組合成單個模塊或分為多個子模塊。

規(guī)則引擎205連接到存儲許多規(guī)則235a-235n的數(shù)據(jù)存儲器210。如圖所示,規(guī)則235a-235n中的每一個可以與生成規(guī)則的用戶的特定用戶賬戶230a-235n相關聯(lián)。每個用戶賬戶230a-235n可以具有特定的安全上下文,并且可以與該用戶賬戶的用戶可訪問的一個或多個設備相關聯(lián)。某些用戶賬戶可能是oem的賬戶。這些用戶賬戶可以訪問由這些oem制造的所有設備。其它用戶賬戶可以是終端用戶(例如設備的所有者)的賬戶。這樣的用戶賬戶可以訪問用戶擁有的所有設備以及其它用戶賬戶共享訪問的其它設備。

規(guī)則引擎205接收一個或多個事件240的通知。這些事件240可以是一個或多個規(guī)則的輸入。規(guī)則確定器215在數(shù)據(jù)存儲器210中搜索所接收的一個事件或多個事件是輸入的規(guī)則。響應于找到這樣的規(guī)則,規(guī)則確定器215調用規(guī)則應用器225以應用所標識的規(guī)則。

規(guī)則應用器225將一個事件或多個事件240應用于標識的規(guī)則235a-235n。每個規(guī)則包括可以由事件240滿足的一個或多個準則。如果滿足規(guī)則的一個準則或一組準則,則規(guī)則應用器225確定觸發(fā)的操作。不同的事件可以滿足不同的準則,這可能導致執(zhí)行不同的操作。規(guī)則可以具有基于來自單個源的單個事件的簡單準則,或者可以具有基于來自一個或多個源的多個事件的復雜準則。

響應于規(guī)則的準則得到滿足,安全上下文確定器220檢查規(guī)則的安全上下文。每個規(guī)則具有生成該規(guī)則的用戶賬戶的相同的安全上下文。當用戶登錄到用戶賬戶時,賬戶管理器模塊(未示出)可以執(zhí)行認證和授權操作。響應于成功的認證和/或授權,可以生成將用戶賬戶與特定安全上下文相關聯(lián)的令牌。該令牌可能是持久的,并且當用戶與用戶賬戶的會話終止時可能不會被刪除。令牌可以被提供到設備、服務等,以示出規(guī)則已訪問特定資源(例如訪問聯(lián)網(wǎng)設備)。因此,當規(guī)則引擎代表用戶執(zhí)行規(guī)則時,用戶不需要登錄。操作可以由代表用戶的規(guī)則引擎和/或設備執(zhí)行,就像用戶執(zhí)行了這些操作一樣。

每個用戶賬戶230a-235n對一個或多個聯(lián)網(wǎng)設備具有不同的訪問級別。用戶賬戶230a-235n對特定設備的訪問級別可能隨時間而改變。例如,設備的所有者可以與其它用戶對設備的訪問共享有限時間。在共享設備訪問的同時,該其它用戶可能會生成將導致設備狀態(tài)在特定條件下改變的規(guī)則。然而,一旦所有者將與其它用戶的設備共享終止,該其它用戶就不再有權限改變該設備的設置。由于其它用戶生成的規(guī)則在該用戶的用戶賬戶的安全上下文中,所以規(guī)則在共享終止后不再具有訪問設備的權限,并且將失敗。因此,安全上下文確定器220確定該規(guī)則是否具有在應用規(guī)則時執(zhí)行規(guī)則所指示的操作的適當權限。

如果規(guī)則具有適當?shù)臋嘞?,則規(guī)則應用器225生成將導致執(zhí)行所確定的操作的命令或消息。對于一些操作,規(guī)則應用器225生成通知消息并將它們發(fā)送到一個或多個目標。例如,規(guī)則應用器225可以生成簡單消息服務(sms)消息、多媒體消息服務(mms)或其它文本消息。規(guī)則應用器225還可以發(fā)送電子郵件消息或呼叫電話號碼并且留下自動消息。規(guī)則應用器225可以另外生成將導致特定聯(lián)網(wǎng)設備執(zhí)行特定操作的命令。此外,規(guī)則應用器225可以生成將導致web服務執(zhí)行操作的命令。操作可以在單個設備或一組設備上執(zhí)行。操作可以是生成報告,例如詳細說明本月用水量或能源消耗的報告。操作的其它示例包括改變設備的設置,啟用或禁用設備或功能等。

安全上下文確定器220還可以創(chuàng)建和保持安全審核日志,其捕獲由規(guī)則處理引擎代表用戶賬戶所采取的所有操作。安全審核日志中的每個條目可以標識與操作相關聯(lián)的用戶上下文,以及該操作是基于直接用戶交互還是基于在用戶上下文中生成的規(guī)則應用來執(zhí)行。

圖3示出了根據(jù)一個示例實施方式的規(guī)則引擎305,其從多個輸入饋送381接收事件通知,將事件通知應用于一個或多個規(guī)則383,并且將消息發(fā)送到多個輸出饋送391。如圖所示,輸入饋送381可以包括天氣服務284、一個或多個設備386、一個或多個時間表388和/或一個或多個第三方服務390。時間表388可以包括設備的時間表(例如示出計劃在未來和/或過去何時發(fā)生特定操作)和/或用戶時間表(例如,指示工作時間表,活動模式,例如通常用戶何時回家、何時睡覺、何時上班、何時看電視等)和計劃旅行時間表等。輸出饋送391可以包括一個或多個設備393,其可以與設備386相同或不同。輸出饋送391還包括電子郵件394、文本消息396(例如sms和/或mms消息)、第三方服務398等。

如圖所示,來自天氣服務384的事件、來自設備286的事件、來自時間表388的事件和來自第三方服務390的事件可以一起滿足規(guī)則383的準則。規(guī)則383可以導致生成命令并發(fā)送到設備393。此外,設備386上的事件可以滿足導致生成電子郵件消息394并發(fā)送給用戶并且生成文本消息396并發(fā)送給用戶的另一規(guī)則383。該事件還可能導致向第三方服務398發(fā)出命令。例如,如果設備是警報并且事件是觸發(fā)警報,則電子郵件和文本消息可以被發(fā)送到用戶的地址通知他已經(jīng)觸發(fā)了警報。此外,第三方服務398可以是安全公司,并且將安全人員派遣到與警報相關聯(lián)的屬性的命令可以被發(fā)送到第三方服務398。

現(xiàn)在參考圖2b,根據(jù)本發(fā)明的一個實施方式示出了規(guī)則創(chuàng)建器250的框圖。規(guī)則創(chuàng)建器250提供可用于創(chuàng)建、讀取、更新和刪除輸入饋送、輸出饋送和規(guī)則的管理路徑。在管理路徑中,制定規(guī)則,然后在規(guī)則引擎中保留。規(guī)則創(chuàng)建器250可以包括安全上下文確定器255、用戶界面260、設備確定器265和應用編程接口(api)280。替選地,安全上下文確定器255、用戶界面260、設備確定器265和/或api280中的一個或多個的功能可以組合成單個模塊或分成多個子模塊。

用戶界面260可以是可以提供下拉窗口、菜單、顯示欄、圖標以及規(guī)則、事件、輸入、輸出、操作等的其它圖形表示的圖形用戶界面。替選地,用戶界面260可以是命令行用戶界面。響應于用戶請求生成新規(guī)則,用戶界面260可呈現(xiàn)用于規(guī)則創(chuàng)建和規(guī)則修改的多個選項。

當接收到規(guī)則創(chuàng)建請求時,安全上下文確定器255確定接收到請求的用戶賬戶的安全上下文。該安全上下文將與用于規(guī)則生命的規(guī)則相關聯(lián)。

設備確定器265基于安全上下文標識用戶賬戶具有訪問權限的設備和對這些設備的訪問級別。用戶界面260可以顯示這些可用設備。

用戶界面260可以提供用于選擇規(guī)則的輸入的選項。用戶界面260可以提供可用作規(guī)則的輸入的可用設備的下拉菜單或其它列表。用戶界面260還可以標識可用作該規(guī)則的輸入的服務(例如wan可訪問服務、第三方服務、時間表等)。一些設備和/或服務可以具有可用作輸入的多個參數(shù)、設置、特征等。如果選擇了這樣的設備或服務,則顯示所選設備或服務的可用參數(shù)、設置、特征等(例如在下拉菜單中)。然后,用戶可以從將作為該規(guī)則的輸入的所選設備或服務中選擇特定的一個事件或多個事件。用戶可以選擇任何數(shù)量的將作為規(guī)則的輸入的事件。這些事件可以來自單個設備或服務或來自多個設備和/或服務。

一旦選擇了一個或多個輸入事件,用戶可以選擇要由事件來滿足的準則??梢詫γ總€輸入事件選擇單獨的準則。可用于事件的準則可以基于所選的事件。規(guī)則創(chuàng)建器250可以包括數(shù)據(jù)庫或其它數(shù)據(jù)結構,其標識可應用于每個輸入事件的可能狀態(tài)、閾值或其它準則。因此,用戶界面260可向用戶呈現(xiàn)用于所選擇的輸入事件的準則選項的列表。

用戶界面260可另外提供可以是用于該規(guī)則的輸出的設備和服務的列表(例如下拉列表)。示出的輸出設備的列表可以不同于輸入設備的列表。這可能是由于具有讀取權限的安全上下文,而不是對某些設備的寫入權限。例如,如果安全上下文具有對設備的讀取權限,則該設備可以作為輸入事件的輸入饋送用于規(guī)則。但是,如果安全上下文沒有對設備的寫入權限,則在某些情況下,該設備可能不會用作輸出饋送。

在用戶選擇用于輸出的一個或多個設備和/或服務之后,用戶可以選擇對這些輸出執(zhí)行的操作。操作可以包括發(fā)送通知或發(fā)送執(zhí)行操作的命令。操作可以是在規(guī)則的準則得到滿足后不久觸發(fā)的一次性操作。操作也可以是預定操作,其計劃將在將來的日期和/或時間執(zhí)行一次或在將來的日期和/或時間重復地執(zhí)行的延遲操作。例如預定操作可能會導致創(chuàng)建時間表,從而導致每天在下午1點執(zhí)行特定操作。響應于用戶選擇該設備或服務作為用于規(guī)則的輸出饋送,可以向用戶呈現(xiàn)可以針對所選擇的輸出設備或服務執(zhí)行的可用操作的列表。

應用編程接口(api)280可以與客戶端應用(例如在客戶端設備上運行的遠程控制應用)進行對接,以創(chuàng)建和/或修改規(guī)則??蛻舳藨每梢蕴峁┡c用戶界面260相同或相似的用戶界面。客戶端應用的用戶界面可以與api280進行通信,以使用本文參考用戶界面260描述的相同技術生成和修改規(guī)則。

在一個實施方式中,規(guī)則創(chuàng)建器250包括可以測試由用戶創(chuàng)建的一個或多個規(guī)則的規(guī)則測試器282。規(guī)則測試器282可以模擬不同的情況并且響應于模擬情況來模擬規(guī)則的執(zhí)行。規(guī)則測試器282可以另外測試多個不同規(guī)則的交互。這種多規(guī)則的測試可能會暴露潛在問題,例如規(guī)則執(zhí)行循環(huán)。作為這種測試的結果,可以檢測和防止規(guī)則執(zhí)行循環(huán)。規(guī)則執(zhí)行循環(huán)是其中第一規(guī)則觸發(fā)操作的條件,其導致第二規(guī)則觸發(fā)操作,這導致第一規(guī)則觸發(fā)操作,等等。測試多個規(guī)則也可能會暴露多個規(guī)則之間的意外或不需要的交互。

一旦生成了規(guī)則,規(guī)則創(chuàng)建器250將規(guī)則存儲在數(shù)據(jù)存儲器210中。該規(guī)則存儲在請求創(chuàng)建規(guī)則的特定用戶賬戶的安全上下文中。例如,第一用戶賬戶230a包括第一安全上下文和第一組規(guī)則235a,第二用戶賬戶230b包括第二安全上下文和第二組規(guī)則235b,并且第n個用戶賬戶230n包括第n個安全上下文和第n組規(guī)則235n。

在一個實施方式中,規(guī)則創(chuàng)建器250包括自動規(guī)則生成器285。自動規(guī)則生成器285可將機器學習算法(例如kohonen映射、支持向量機(svm)、k-最近鄰分類器等)應用于跨設備和服務的事件和操作的日志。自動規(guī)則生成器可以在不同的設備上學習事件和相應的操作的模式。然后,自動規(guī)則生成器285可以基于觀察到的行為來創(chuàng)建規(guī)則。例如,自動規(guī)則生成器285可以在工作日晚上檢測用戶從工作回家之后在打開前門之后不久打開電視機和無線電的模式。因此,自動規(guī)則生成器可以在沒有用戶輸入的情況下創(chuàng)建規(guī)則,如果是平日,并且在5pm之后,并且檢測到門打開事件,則將打開電視和無線電。可以為特定用戶賬戶創(chuàng)建自動創(chuàng)建的規(guī)則,并且可能具有該用戶賬戶的安全上下文。

規(guī)則創(chuàng)建器250和規(guī)則引擎205可以使用多租戶模型來管理用戶賬戶。因此,每個用戶賬戶(例如每個oem或每個設備所有者)可以僅訪問他們具有訪問權限的那些設備,并且每個用戶賬戶可以僅訪問他們創(chuàng)建的那些規(guī)則。因此,與每個用戶賬戶相關聯(lián)的規(guī)則可以獨立于其它用戶賬戶的規(guī)則。對于每個用戶賬戶230a-n,可能出現(xiàn)規(guī)則創(chuàng)建器250和規(guī)則引擎205僅服務于該用戶賬戶。

圖4-7b是示出根據(jù)本發(fā)明的實施方式的創(chuàng)建和應用用于控制和/或響應聯(lián)網(wǎng)設備上的事件的規(guī)則的各種方法的流程圖。這些方法可以由可以包括硬件(例如電路、專用邏輯、可編程邏輯、微代碼等)、軟件(例如在處理設備上運行以執(zhí)行硬件仿真的指令)或其組合的處理邏輯來執(zhí)行。在一個實施方式中,方法的至少一些操作通過服務器計算設備(例如圖1的服務器計算設備125)來執(zhí)行。

圖4是響應于第一聯(lián)網(wǎng)設備上的事件觸發(fā)在第二聯(lián)網(wǎng)設備上的操作的示例方法400的流程圖。在方法400的框405處,處理邏輯接收關于第一聯(lián)網(wǎng)設備上發(fā)生的事件的通知。該事件可以是設置的變化(例如用戶已經(jīng)改變了恒溫器的溫度設定點、燈已經(jīng)被打開、已經(jīng)在鬧鐘上設置警報、已經(jīng)在噴灑控制系統(tǒng)上設置澆水時間表等)、測量參數(shù)的變化(例如由恒溫器測量的當前溫度、由運動傳感器進行的運動檢測、由光傳感器進行的光檢測等)或與聯(lián)網(wǎng)設備相關聯(lián)的其它事件。

在框410處,處理邏輯標識一規(guī)則,所述事件對該規(guī)則而言是輸入。該規(guī)則可以設置成使得第一聯(lián)網(wǎng)設備是針對該規(guī)則的輸入饋送。當事件由第一聯(lián)網(wǎng)設備報告時,處理邏輯將這些事件與規(guī)則的準則(或多個準則)進行比較。在框415處,處理邏輯確定第一聯(lián)網(wǎng)設備上的事件是否滿足規(guī)則的準則。如果事件滿足準則,則該方法繼續(xù)到框420。否則該方法結束。

在框420處,處理邏輯根據(jù)規(guī)則確定規(guī)則執(zhí)行的操作。該操作可以是由第二聯(lián)網(wǎng)設備執(zhí)行的操作??梢詧?zhí)行任何類型的操作,例如打開或關閉第二聯(lián)網(wǎng)設備、改變第二聯(lián)網(wǎng)設備的設置等。此外,該操作可以是立即操作、也可以是預定的未來操作。

在框425處,處理邏輯確定規(guī)則的安全上下文。規(guī)則的安全上下文可能與生成規(guī)則的用戶的安全上下文相同。因此,處理邏輯可以確定生成規(guī)則的用戶賬戶的安全上下文。可以通過標識與規(guī)則相關聯(lián)的令牌并查詢訪問控制器模塊來確定哪些權限可用于規(guī)則來確定安全上下文。

在框430處,處理邏輯確定安全上下文是否具有在第二聯(lián)網(wǎng)設備上執(zhí)行所確定的操作的權限。例如,處理邏輯可以確定用戶賬戶的安全上下文是否具有對第二聯(lián)網(wǎng)設備的寫入權限。如果安全上下文具有執(zhí)行操作的權限,則該方法繼續(xù)到框435。否則,該方法結束。

在框435處,處理邏輯生成使第二聯(lián)網(wǎng)設備執(zhí)行所確定的操作的命令。在框440處,處理邏輯將命令發(fā)送到第二聯(lián)網(wǎng)設備。然后,第二聯(lián)網(wǎng)設備可以執(zhí)行命令以執(zhí)行該操作。即使用戶可能沒有對生成規(guī)則的用戶賬戶的活動會話,第二聯(lián)網(wǎng)設備也可以執(zhí)行操作。

圖5是響應于其它服務和/或聯(lián)網(wǎng)設備上的事件而觸發(fā)服務和/或聯(lián)網(wǎng)設備上的一個或多個操作的示例性方法500的流程圖。在方法500的框505處,處理邏輯接收已在聯(lián)網(wǎng)設備和/或服務上發(fā)生的積極和/或消極事件的通知。該服務可以是第三方服務或控制處理邏輯的實體的服務(例如iot平臺的wan可訪問服務)。積極事件是已經(jīng)發(fā)生的事件,例如開關的跳閘、到達設定點的變量等等。消極事件是沒有發(fā)生的事件。例如,消極事件的通知可以是恒溫器在一段時間內未能達到設定點的通知,或者噴灑系統(tǒng)在一段時間內沒有打開的通知。

在框510處,處理邏輯標識一個或多個事件是輸入的規(guī)則。在框515處,處理邏輯確定事件是否滿足所標識的規(guī)則的準則。如果事件(或多個事件)滿足準則,則該方法繼續(xù)到框520。否則該方法結束。

在框520處,處理邏輯根據(jù)規(guī)則確定執(zhí)行的一個或多個操作。在框525處,處理邏輯確定規(guī)則的安全上下文,并確定安全上下文包括執(zhí)行一個或多個所確定的操作的權限。在框530處,處理邏輯生成使另外的聯(lián)網(wǎng)設備和/或服務執(zhí)行操作的命令。在框535處,處理邏輯將命令發(fā)送到另外的聯(lián)網(wǎng)設備和/或服務。這些設備和/或服務然后可以執(zhí)行命令來執(zhí)行所確定的操作。

在框540處,處理邏輯生成已經(jīng)執(zhí)行的事件、命令和操作的日志。日志也可以指示被觸發(fā)以導致執(zhí)行操作的規(guī)則。日志可以標識由規(guī)則觸發(fā)的命令和操作的安全上下文。安全上下文可以是生成被觸發(fā)的規(guī)則的用戶的安全上下文。

在框545處,處理邏輯通知規(guī)則滿足的用戶賬戶的用戶。向用戶的通知可以是發(fā)送到用戶的電子郵件地址的電子郵件(email)消息。向用戶的通知也可以是發(fā)送到用戶的電話號碼的sms或mms消息。該通知還可以是對用戶的電話號碼的自動電話呼叫、發(fā)布到用戶的社交網(wǎng)絡賬戶的帖子或其它類型的通知。

圖6是執(zhí)行用于規(guī)則的速率極值和/或循環(huán)檢測的示例方法600的流程圖。當生成規(guī)則以測試新規(guī)則和現(xiàn)有規(guī)則之間的交互,并且主動應用將控制規(guī)則在規(guī)則執(zhí)行循環(huán)條件下如何行為的規(guī)則時,可以執(zhí)行方法600。方法600也可以在執(zhí)行規(guī)則期間(例如在已部署規(guī)則之后)執(zhí)行。在方法600的框605處,處理邏輯確定第一聯(lián)網(wǎng)設備上的第一事件滿足規(guī)則的準則,該準則導致在第二聯(lián)網(wǎng)設備上執(zhí)行操作。在框610處,處理邏輯確定在第二聯(lián)網(wǎng)設備上執(zhí)行的操作導致第二聯(lián)網(wǎng)設備上的第二事件。在框615處,處理邏輯確定第二事件滿足第二規(guī)則的準則,該準則導致在第一聯(lián)網(wǎng)設備上執(zhí)行第二操作。在框620處,處理邏輯確定第二操作導致第一聯(lián)網(wǎng)設備上的第三事件,該第三事件滿足第一規(guī)則的準則。

在框625處,處理邏輯檢測規(guī)則執(zhí)行循環(huán)。規(guī)則執(zhí)行循環(huán)是其中兩個或更多個規(guī)則重復地相互觸發(fā)的循環(huán)。例如,第一規(guī)則觸發(fā)第二規(guī)則,第二規(guī)則再次觸發(fā)第一規(guī)則,如框605-620處所述。

在框630處,處理邏輯確定是否設置速率極值或規(guī)則執(zhí)行循環(huán)極值。速率極值是在給定時間段內可以觸發(fā)規(guī)則的允許次數(shù)。例如,可以允許規(guī)則每分鐘觸發(fā)1次、每小時2次、每天10次等。規(guī)則執(zhí)行循環(huán)極值是許可的規(guī)則執(zhí)行循環(huán)的迭代次數(shù)。規(guī)則執(zhí)行循環(huán)極值為0將意味著不允許執(zhí)行規(guī)則執(zhí)行循環(huán)。規(guī)則執(zhí)行循環(huán)極值為2將意味著規(guī)則執(zhí)行循環(huán)可以迭代兩次。處理邏輯進一步確定是否已超過速率極值或規(guī)則執(zhí)行循環(huán)極值。如果是這樣,盡管已經(jīng)滿足了第一規(guī)則的準則,但該方法結束而不生成任何進一步的命令。如果沒有超過速率極值和/或規(guī)則執(zhí)行循環(huán)極值,則該方法繼續(xù)到框635。

在框635處,處理邏輯產(chǎn)生使第二聯(lián)網(wǎng)設備執(zhí)行所確定的操作的命令。注意的是方法600示出了僅包括兩個規(guī)則的簡單循環(huán)。然而,更復雜的循環(huán)可以包括在某些條件下彼此重復觸發(fā)的3個、5個、10個或甚至更多個規(guī)則。

圖7a是通過規(guī)則引擎生成執(zhí)行規(guī)則的示例方法700的流程圖。在方法700的框705處,處理邏輯提供用于規(guī)則生成的用戶界面。用戶界面可以是包括下拉菜單、窗口、按鈕、圖標等的圖形用戶界面。在框710處,處理邏輯從用戶賬戶接收生成規(guī)則的請求。替選地,處理邏輯可以接收修改現(xiàn)有規(guī)則的請求。

在框715處,處理邏輯提供可用于用戶賬戶的安全上下文的聯(lián)網(wǎng)設備和/或服務的信息。在框720處,處理邏輯接收對要用作規(guī)則輸入的第一聯(lián)網(wǎng)設備的選擇。

在框725處,處理邏輯提供與第一聯(lián)網(wǎng)設備相關聯(lián)的事件的信息。在框730處,處理邏輯接收對將用作規(guī)則輸入的可用事件的選擇。在框732處,處理邏輯接收對將通過該事件來滿足而使所述規(guī)則執(zhí)行操作的準則的選擇。

在框735處,處理邏輯接收對作為規(guī)則輸出的第二聯(lián)網(wǎng)設備的選擇。在框740處,處理邏輯提供關于與第二聯(lián)網(wǎng)設備相關聯(lián)的操作(例如可以由第二聯(lián)網(wǎng)設備執(zhí)行的操作)的信息。在框745處,處理邏輯接收對操作的選擇。在框750處,處理邏輯生成和部署規(guī)則。

注意的是在方法700的各個框處提供的所有信息可以由用于規(guī)則生成的用戶界面來提供。此外,還可以通過用戶界面接收事件、設備、操作等的所有選擇。因此,用戶界面提供生成復雜規(guī)則的用戶友好的系統(tǒng),而不訴諸于執(zhí)行任何編程的用戶。此外,規(guī)則生成是針對生成規(guī)則的用戶的特定安全上下文來定制的。對設備、服務、事件和操作的選擇可能對于特定的安全上下文是唯一的。因此,用于規(guī)則生成的選項可以根據(jù)用戶而改變。

還應當注意的是方法700詳細描述了創(chuàng)建僅包括一個輸入和一個輸出且兩者都是聯(lián)網(wǎng)設備的簡單規(guī)則的示例。然而,輸入或輸出可以替代地是服務或數(shù)據(jù)饋送。此外,多個輸入和/或多個輸出可以包括在更復雜的規(guī)則中。這樣的規(guī)則可以包括在生成命令、發(fā)送通知或執(zhí)行其它操作之前要滿足的多個準則。

圖7b是通過規(guī)則引擎生成執(zhí)行規(guī)則的另一示例方法752的流程圖。在方法700的框755處,處理邏輯記錄與用戶賬戶相關聯(lián)的事件和操作(例如在特定用戶賬戶的背景中發(fā)生的事件和操作)。替選地,處理邏輯可以接收由另一實體生成的事件和操作的日志。

在框760處,處理邏輯將機器學習算法應用于事件和操作的日志。在框765處,處理邏輯然后基于將日志應用于機器學習算法中來學習事件和對應操作的模式。在框770處,處理邏輯基于所學習的模式自動生成規(guī)則。例如,該規(guī)則可以導致響應于檢測到特定事件或事件類型而執(zhí)行特定操作。在框775處,處理邏輯部署規(guī)則。然后該方法結束。

圖8是具有遠程可訪問嵌入式系統(tǒng)815的示例設備805的框圖。設備可以包括任何前述類型的、具有嵌入式系統(tǒng)的設備,并且在一個實施方式中對應于圖1的設備135a-135c。在一個實施方式中,設備805包括機械部件810、電氣部件812以及嵌入式系統(tǒng)815。電氣部件812和/或機械部件810可以包括傳感器、可編程邏輯控制器(plc)、開關、電機、閥、致動器等。

嵌入式系統(tǒng)815可以包括主機處理設備825、主機存儲器830和/或耦接到主機處理設備825的通信模塊850。嵌入式系統(tǒng)815可以還包括在此未示出的諸多其它部件。這些附加部件的示例可以包括發(fā)光二極管(led)、電源穩(wěn)壓器、保險器、端口、用戶接口、數(shù)模(d/a)轉換器、模數(shù)(a/d)轉換器、現(xiàn)場可編程門陣列(fpga)、專用集成電路(asic)等。

在一個實施方式中,主機處理設備825可以是微控制器或數(shù)字信號處理器(dsp)。主機處理設備825可以可替選地或附加地包括可編程邏輯控制器(plc)、現(xiàn)場可編程門陣列(fpga)或復雜可編程邏輯設備(cpld)。主機處理設備825可以被配置為執(zhí)行與設備805的操作和控制有關的特定功能。

主機存儲器830可以包括隨機存取存儲器(ram)、只讀存儲器(rom)、一次可編程(otp)rom、閃存(例如,nor閃存)或其它類型的存儲器。主機存儲器830可以存儲用于通信模塊850的應用編程接口(api)835。api835可以使得主機處理設備825能夠向通信模塊850發(fā)送命令和/或數(shù)據(jù)并且從通信模塊850接收命令和/或數(shù)據(jù)。主機存儲器830可以還包括用于主機處理設備825的固件,其配置主機處理設備以執(zhí)行特征針對設備805的一個或多個操作。

在一些實施方式中,主機存儲器830可以集成到主機處理設備825中。例如,微控制器通常包括處理器內核、存儲器以及可編程輸入/輸出外設。相應地,如果主機處理設備825是微控制器,則主機存儲器830可以是主機處理設備825的存儲器。

通信模塊850可以是被配置為與嵌入式系統(tǒng)815的主機處理設備825耦接的集成電路(ic)。通信模塊850可以連同api835一起由第三方提供給設備的制造商,并且可以使得網(wǎng)絡能力和遠程控制能力能夠易于添加到設備805中。通信模塊850可以包括其自身的處理設備855、存儲器865和/或網(wǎng)絡適配器860。處理設備855可以是微控制器、dsp、plc、微處理器或可編程邏輯設備(例如fpga或cpld)。存儲器可以包括非易失性存儲器(例如ram)和/或易失性存儲器(例如rom、閃存等)。在一個實施方式中,存儲器865集成到處理設備855中。

存儲器865可以存儲對可訪問各種安全上下文的設備805的一個或多個資源890(例如參數(shù)、屬性和數(shù)據(jù))進行標識的數(shù)據(jù)。任何這些資源可以用作用于生成規(guī)則的事件或操作。存儲器865也可以存儲用于處理設備855的固件(例如包括用于遠程接口882的指令的固件)。

網(wǎng)絡適配器855可以是有線網(wǎng)絡適配器(例如以太網(wǎng)適配器)或無線網(wǎng)絡適配器(例如wi-fi適配器或其它無線局域網(wǎng)(wlan)適配器)。網(wǎng)絡適配器860也可以被配置為使用zigbee、plc、藍牙、6lowpan或其它通信協(xié)議來提供對網(wǎng)絡或其它設備的連接。網(wǎng)絡適配器860可以從wan可訪問服務和/或遠程控制應用接收通知和/或其它消息。網(wǎng)絡適配器860可以將往外發(fā)送的消息另外發(fā)送給wan可訪問服務和/或遠程控制應用。

上文已經(jīng)參考提供為wan可訪問服務(例如為web服務或云服務)的規(guī)則引擎來描述實施方式。然而,在一些實施方式中,規(guī)則引擎894可以被包括在通信模塊850的存儲器865中。規(guī)則引擎894可以應用也駐留在存儲器865中的一個或多個規(guī)則892。規(guī)則引擎894可以執(zhí)行之前參考wan可訪問服務規(guī)則引擎描述的任何操作。然而,規(guī)則引擎894的輸入饋送或輸出饋送與嵌入式系統(tǒng)815相關聯(lián),而不是輸入饋送來自外部源和輸出饋送到其他外部目的地。因此,規(guī)則引擎894可以應用這樣的規(guī)則892:響應于來自外部源的輸入而觸發(fā)嵌入式系統(tǒng)815上的操作。規(guī)則引擎894還可以應用這樣的規(guī)則:響應于在嵌入式系統(tǒng)815上發(fā)生的事件而對外部目的地生成命令。

圖9示出具有計算設備900這一示例形式的機器(其內可以執(zhí)行用于使得機器執(zhí)行在此所討論的方法中的任何一種或多種的指令集)的圖示。在可替選實施方式中,機器可以連接(例如聯(lián)網(wǎng))到局域網(wǎng)(lan)、內部網(wǎng)、外部網(wǎng)或互聯(lián)網(wǎng)中的其它機器。機器可以在客戶機-服務器網(wǎng)絡環(huán)境中以服務器或客戶機機器的身份操作或在點對點(或分布式)網(wǎng)絡環(huán)境中作為配對機器操作。機器可以是個人計算機(pc)、平板計算機、機頂盒(stb)、個人數(shù)字助理(pda)、蜂窩電話、web電器、服務器、網(wǎng)絡路由器、交換機或橋接器、或能夠執(zhí)行指令集(順序的或其它方式,其指定待由該機器采取的動作)的任何機器。此外,雖然僅示出單個機器,但術語“機器”還應包括單獨地或聯(lián)合地執(zhí)行用于執(zhí)行在此所討論的方法中的任何一種或多種的指令集的任何機器(例如計算機)集合。

示例計算設備900包括處理設備902、主存儲器904(例如,只讀存儲器(rom)、閃存、動態(tài)隨機存取存儲器(dram)(例如同步dram(sdram)或rambusdram(rdram)等))、靜態(tài)存儲器906(例如閃存、靜態(tài)隨機存取存儲器(sram)等)以及副存儲器(例如數(shù)據(jù)存儲設備918),其經(jīng)由總線930彼此進行通信。

處理設備902表示一個或多個通用處理器(例如微處理器、中央處理單元等)。更具體地說,處理設備902可以是復雜指令集計算(cisc)微處理器、精簡指令集計算(risc)微處理器、超長指令字(vliw)微處理器、執(zhí)行其它指令集的處理器或執(zhí)行指令集的組合的處理器。處理設備902也可以是一個或多個專用處理設備(例如專用集成電路(asic)、現(xiàn)場可編程門陣列(fpga)、數(shù)字信號處理器(dsp)、網(wǎng)絡處理器等)。處理設備902被配置為執(zhí)行用于執(zhí)行在此所討論的操作和步驟的處理邏輯(指令922)。

計算設備900還可以包括網(wǎng)絡接口設備908。計算設備900也可以包括視頻顯示單元910(例如液晶顯示器(lcd)或陰極射線管(crt))、字母數(shù)字輸入設備912(例如鍵盤)、光標控制設備914(例如鼠標)以及信號生成設備916(例如揚聲器)。

數(shù)據(jù)存儲設備918可以包括其中存儲有實施本文所述方法或功能中的任何一種或多種的一個或多個指令集922的機器可讀存儲介質(或更具體地說是計算機可讀存儲介質)928。指令922也可以在其由計算機系統(tǒng)900、主存儲器904和也構成計算機可讀存儲介質的處理設備902執(zhí)行期間完全地或至少部分地駐留在主存儲器904內和/或處理設備902內。

計算機可讀存儲介質928也可以用于存儲規(guī)則引擎990和/或規(guī)則創(chuàng)建器995(如參考圖2a-圖2b所述)和/或包含調用規(guī)則引擎990和/或規(guī)則創(chuàng)建器995的方法的軟件庫。雖然計算機可讀存儲介質928在示例實施方式中被示為單個介質,但術語“計算機可讀存儲介質”應看作包括存儲一個或多個指令集的單個介質或多個介質(例如集中式和分布式數(shù)據(jù)庫、和/或關聯(lián)緩存和服務器)。術語“計算機可讀存儲介質”也應看作包括能夠對用于由機器執(zhí)行的指令集進行存儲或編碼并且使得機器執(zhí)行在此所描述的方法中的任何一種或多種的任何介質。術語“計算機可讀存儲介質”相應地應看作包括但不限于固態(tài)存儲器以及光學介質和磁性介質。

在此(例如結合圖1-圖2b)所描述的模塊、部件和其它特征可以實現(xiàn)為分立式硬件部件或集成在硬件部件(例如asics、fpga、dsp或相似設備)的功能性中。此外,模塊可以實施為硬件設備內的固件或功能電路。此外,模塊可以以硬件設備和軟件部件的任何組合或僅以軟件實施。

以上已經(jīng)關于對計算機存儲器內的數(shù)據(jù)比特進行的操作的算法和符號表示而提出了詳細描述的一些部分。這些算法描述和表示是由數(shù)據(jù)處理領域技術人員用于最高效地將他們的工作的實質性傳達給其它本領域技術人員的手段。在這里以及通常而言,算法被構想為帶來期望結果的自洽步驟序列。所述步驟是需要對物理量進行物理操控的步驟。雖然并非必要,但通常這些量具有能夠被存儲、傳送、組合、比較以及其它方式操控的電信號或磁信號的形式。已經(jīng)證明:有時(主要出于普通使用的原因)將這些信號作為比特、值、元素、符號、字符、術語、數(shù)字等提及是方便的。

然而,應理解,所有這些術語和相似的術語是與適當?shù)奈锢砹筷P聯(lián)的,并且僅是應用于這些量的方便的標記。除非另外具體地聲明,從以下討論可看出:應理解,在整個說明書中,使用例如“接收”、“標識”、“確定”、“生成”、“發(fā)送”等術語進行的討論是指計算機系統(tǒng)或相似電子計算設備的動作和處理,其對表示為計算機系統(tǒng)的寄存器和存儲器內的物理(電子)量的數(shù)據(jù)進行操控并且將其變換為相似地表示為計算機系統(tǒng)存儲器或寄存器或其它這樣的信息存儲設備、傳輸設備或顯示設備內的物理量的其它數(shù)據(jù)。

本發(fā)明實施方式還涉及一種用于執(zhí)行本文中的操作的裝置。該裝置可以被特定構造用于所討論的目的,或其可以包括通過計算機系統(tǒng)中所存儲的計算機程序選擇性編程的通用計算機系統(tǒng)。該計算機程序可以存儲在計算機可讀存儲介質(例如但不限于任何類型的盤(包括軟盤、光盤、cd-rom和磁光盤)、只讀存儲器(rom)、隨機存取存儲器(ram)、eprom、eeprom、磁盤存儲介質、光存儲介質、閃存設備、其它類型的機器可存取存儲介質或均耦接到計算機系統(tǒng)總線的適合于存儲電子指令的任何類型的介質)中。

應理解,以上描述意在說明性而非限制性的。在閱讀并且理解以上描述時,很多其它實施方式對于本領域技術人員將是顯然的。雖然已經(jīng)參考特定示例實施方式描述了本發(fā)明,但應理解,本發(fā)明不限于所描述的實施方式,而是可以在所附權利要求的精神和范圍內通過修改和改動而得以實踐。相應地,說明書和附圖看作是說明性意義而不是限制性意義。因此,應參考附圖連同這些權利要求所賦予的等同方案的完全范圍一起來確定本發(fā)明的范圍。

當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
久治县| 西藏| 梨树县| 玉环县| 江川县| 志丹县| 岚皋县| 息烽县| 观塘区| 遵义县| 遵义县| 曲松县| 尖扎县| 深圳市| 牡丹江市| 长武县| 南充市| 临清市| 平果县| 昆明市| 阜新| 唐海县| 华宁县| 高邮市| 民丰县| 滨州市| 蓬安县| 安平县| 彭泽县| 隆德县| 乐陵市| 双牌县| 新宾| 疏勒县| 鹤庆县| 年辖:市辖区| 铜梁县| 临猗县| 曲麻莱县| 全南县| 梧州市|