响应于经广播的事件通知而触发目标设备上的命令的制作方法

文档序号:12290394阅读:214来源:国知局
响应于经广播的事件通知而触发目标设备上的命令的制作方法与工艺

本申请要求于2014年5月21日提交的题为“METHODS FOR TRIGGERING COMMANDS ON A TARGET DEVICE IN RESPONSE TO BROADCASTED EVENT NOTIFICATIONS(用于响应于经广播的事件通知而在目标设备上触发命令的方法)”的美国临时专利申请序列号62/001,424的权益,该专利申请已被转让给本申请受让人并由此通过援引被明确整体纳入于此。

技术领域

本文所描述的各种实施例一般涉及响应于从源设备广播的事件通知而在目标设备上触发命令。

背景

因特网是使用标准网际协议套件(例如,传输控制协议(TCP)和网际协议(IP))来彼此通信的互联的计算机和计算机网络的全球系统。物联网(IoT)基于日常对象(不仅是计算机和计算机网络)可经由IoT通信网络(例如,自组织(ad-hoc)系统或因特网)可读、可识别、可定位、可寻址、以及可控制的理念。

数个市场趋势正推动IoT设备的开发。例如,增加的能源成本正推动政府在智能电网以及将来消费支持(诸如电动车辆和公共充电站)中的战略性投资。增加的卫生保健成本和老龄化人口正推动对远程/联网卫生保健和健康服务的开发。家庭中的技术革命正推动对新的智能摂服务的开发,包括由营销‘N’种活动(‘N’play)(例如,数据、语音、视频、安全性、能源管理等)并扩展家庭网络的服务提供者所进行的联合。作为降低企业设施的运作成本的手段,建筑物正变得更智能和更方便。

存在用于IoT的数个关键应用。例如,在智能电网和能源管理领域,公共事业公司可以优化能源到家庭和企业的递送,同时消费者能更好地管理能源使用。在家庭和建筑物自动化领域,智能家居和建筑物可具有对家或办公室中的实质上任何设备或系统的集中式控制,从电器到插入式电动车辆(PEV)安全性系统。在资产跟踪领域,企业、医院、工厂和其他大型组织能准确跟踪高价值装备、患者、车辆等的位置。在卫生和健康领域,医生能远程监视患者的健康,同时人们能跟踪健康例程的进度。

因此,在不久的将来,IoT技术的持续增进的发展将导致家中、车辆中、工作中、以及许多其它位置和个人空间处用户周围的众多IoT设备。在该背景下,许多用户可以在特定环境内以互相关的方式与不同设备进行交互。然而,现有的技术方案在提供用以链接异构设备支持的事件通知和控制命令以自动化可能在逻辑上相关的共同或例行的活动的机制方面往往是不足的。例如,在冬天,许多人夜间都将家庭恒温器的温度调低以节省取暖费用,并且随后在早上醒来之际调高温度。由此,能够响应于指示用户刚刚苏醒的事件通知(例如,闹钟响铃)而自动调高恒温器的温度的解决方案将会消除让用户在早上手动调高温度的需要,以及进一步消除或显著降低将恒温器配置成根据时间表来调高温度的需要。虽然存在支持事件通知和控制命令的特定解决方案,但是现有解决方案往往缺乏允许用户链接或以其他方式链结事件通知和控制命令,从而在一个或多个具体触发事件发生时,特定事件或控制命令被调用的机制。

概述

以下给出了与本文所公开的一个或多个方面和/或实施例相关的简化概述。如此,以下概述既不应被视为与所有构想的方面和/或实施例相关的详尽纵览,以下概述也不应被认为标识与所有构想的方面和/或实施例相关的关键性或决定性要素或描绘与任何特定方面和/或实施例相关联的范围。相应地,以下概述的唯一目的是在以下给出的详细描述之前以简化形式呈现与关于本文所公开的机制的一个或多个方面和/或实施例相关的某些概念。

根据一个示例性方面,以下描述一般涉及可以用于响应于广播自源设备的事件通知而在目标设备上触发命令的各机制。更具体而言,因为IoT技术的不断发展会导致在不久的未来在家庭、车辆、工作以及许多其他地点和私人空间有众多IoT设备围绕用户,许多用户将会以互相关的方式在特定环境内与不同设备交互。相应地,本文中进一步具体描述的各机制可以允许用户链接异构设备支持的事件通知和控制命令以自动化公共、例行或以其他方式在逻辑上相关的活动。例如,在各实施例中,在广播自源设备的事件通知抵达控制设备(例如,智能电话或另一合适的设备)时,用户可以将被给出将该事件通知链接到可以在目标设备上触发的命令的选项并且藉此控制目标设备。由此,响应于用户选择将事件通知链接到一个或多个其他设备上的命令的选项,可向用户显示支持可以被链接到事件通知的命令的一个或多个可控目标设备,并且用户可以随后选择或以其他方式定义用于当事件通知在未来再次发生时,在该可控目标设备上自动触发的特定命令。例如,在一个使用情况中,控制设备可以存储触发定义,从而该控制设备可以响应于源设备在未来再次广播所链接的事件通知而在可控目标设备上自动呼叫或以其他方式调用命令。在另一使用情况中,控制设备可以向原始广播事件通知的源设备推送触发定义以及链接到事件通知的命令,其中源设备可以随后在未来再次广播事件通知时在可控目标设备上调用所链接的命令。在还有另一使用情况中,控制设备可以在可控目标设备上配置监听器,从而可控目标设备可以监听来自广播源设备的事件通知,并且随后响应于本地配置的监听器检测到广播自源设备的事件通知而调用所链接的命令。

根据另一示例性方面,一种用于基于事件通知来触发命令的方法可包括在控制设备处标识第一设备上支持的事件通知,在该控制设备处标识第二设备上支持的命令,以及在该控制设备处定义将第一设备上支持的事件通知链接到第二设备上支持的命令的触发,其中所定义的触发使得第二设备响应于第一设备广播所标识的事件通知而执行所标识的命令。附加地,在各实施例中,该方法可进一步包括在控制设备处存储将第一设备上支持的事件通知链接到第二设备上支持的命令的触发,在控制设备处检测来自第一设备的包括所标识的事件通知的广播,以及从控制设备向第二设备传送使得第二设备响应于检测到包括所标识的事件通知的广播而执行与所存储的触发相关联的命令的消息。在替换性(或附加)实施例中,该方法可进一步包括从控制设备向第一设备传送将第一设备上支持的事件通知链接到第二设备上支持的命令的触发,其中所传送的触发使得第一设备在第一设备广播所标识的事件通知时调用第二设备上的命令,和/或由控制设备在第二设备上配置与所定义的触发相关联的监听器,其中所配置的监听器使得第二设备监听所标识的事件通知,并且响应于检测到第一设备广播链接到所标识的命令的事件通知而执行所标识的命令。进一步,在各实施例中,定义将第一设备上支持的事件通知链接到第二设备上的命令的触发可进一步包括停用将所标识的事件通知链接到与第二设备上的命令相冲突的一个或多个命令的一个或多个现有触发。

根据另一示例性方面,一种用于基于事件通知来触发命令的控制设备可包括:用于标识第一设备上支持的事件通知的装置,用于标识第二设备上支持的命令的装置,以及用于定义将第一设备上支持的事件通知链接到第二设备上支持的命令的触发的装置,其中所定义的触发使得第二设备响应于第一设备广播所标识的事件通知而执行所标识的命令。附加地,在各实施例中,该控制设备可进一步包括:用于存储将第一设备上支持的事件通知链接到第二设备上支持的命令的触发的装置,用于检测来自第一设备的包括所标识的事件通知的广播的装置,以及用于向第二设备传送使得第二设备响应于检测到包括所标识的事件通知的广播而执行与所存储的触发相关联的命令的消息的装置。在替换性(或附加)实施例中,该控制设备可进一步包括:用于向第一设备传送将第一设备上支持的事件通知链接到第二设备上支持的命令的触发的装置,其中所传送的触发使得第一设备在第一设备广播所标识的事件通知时调用第二设备上的命令;和/或用于在第二设备上配置与所定义的触发相关联的监听器的装置,其中所配置的监听器使得第二设备监听所标识的事件通知,并且响应于检测到第一设备广播链接到所标识的命令的事件通知而执行所标识的命令。进一步,在各实施例中,用于定义将第一设备上的事件通知链接到第二设备上的命令的触发的装置可以停用将所标识的事件通知链接到与第二设备上所支持的命令相冲突的命令的一个或多个现有触发。

根据另一示例性方面,一种装置可包括配置成执行以下步骤的一个或多个处理器:标识第一设备上支持的事件通知,标识第二设备上支持的命令,以及定义将第一设备上支持的事件通知链接到第二设备上支持的命令的触发,其中所定义的触发使得第二设备响应于第一设备广播所标识的事件通知而执行所标识的命令。此外,在各实施例中,该装置可进一步包括:配置成存储将第一设备上支持的事件通知链接到第二设备上支持的命令的触发的存储器;以及配置成从第一设备接收包括所标识的事件通知的广播,并且向第二设备传送使得第二设备响应于检测到包括所标识的事件通知的广播而执行与所存储的触发相关联的命令的消息的收发机。在替换性(或附加)实施例中,该收发机可配置成向第一设备传送将第一设备上支持的事件通知链接到第二设备上支持的命令的触发,其中所传送的触发使得第一设备在第一设备广播所标识的事件通知时调用第二设备上的命令,和/或配置成与第二设备通信以在第二设备上配置与所定义的触发相关联的监听器,其中所配置的监听器使得第二设备监听所标识的事件通知,并且响应于检测到第一设备广播链接到所标识的命令的事件通知而执行所标识的命令。进一步,在各实施例中,一个或多个处理器可以被进一步配置成停用将所标识的事件通知链接到与第二设备上支持的命令相冲突的命令的一个或多个现有触发。

根据另一示例性方面,一种计算机可读存储介质可以具有记录于其上的计算机可执行指令,其中在计算机上执行这些计算机可执行指令可以使得该计算机标识第一设备上支持的事件通知,标识第二设备上支持的命令,以及定义将第一设备上支持的事件通知链接到第二设备上支持的命令的触发,其中所定义的触发使得第二设备响应于第一设备广播所标识的事件通知而执行所标识的命令。附加地,在各实施例中,在计算机上执行这些计算机可执行指令可以进一步使得该计算机存储将第一设备上支持的事件通知链接到第二设备上支持的命令的触发,检测来自第一设备的包括所标识的事件通知的广播,以及向第二设备传送使得第二设备响应于检测到包括所标识的事件通知的广播而执行与所存储的触发相关联的命令的消息。在替换性(或附加)实施例中,这些计算机可执行指令可进一步使得计算机:向第一设备传送将第一设备上支持的事件通知链接到第二设备上支持的命令的触发,其中所传送的触发使得第一设备在第一设备广播所标识的事件通知时调用第二设备上的命令;在第二设备上配置与所定义的触发相关联的监听器,其中所配置的监听器使得第二设备监听所标识的事件通知,并且响应于检测到第一设备广播链接到所标识的命令的事件通知而执行所标识的命令,和/或停用将所标识的事件通知链接到与第二设备上支持的命令相冲突的命令的一个或多个现有触发。

基于附图和详细描述,与本文所公开的各方面和各实施例相关联的其他目标和优点对于本领域技术人员而言将是明显的。

附图简述

对本文描述的各方面和实施例及其许多伴随优点的更完整领会将因其在参考结合附图考虑的以下详细描述时变得更好理解而易于获得,附图仅出于解说目的被给出而不构成任何限定,并且其中:

图1A-1E解说了根据各方面的无线通信系统的示例性高级架构,在该无线通信系统中广播自源设备的事件通知可以被用来触发目标设备上的命令。

图2A解说了根据各方面的示例性物联网(IoT)设备且图2B解说了示例性无源IoT设备。

图3解说了根据各方面的包括被配置成执行功能性的逻辑的通信设备。

图4解说了根据各个方面的示例性服务器。

图5解说了根据各方面的可以支持能够启用直接设备到设备(D2D)通信的可发现D2D(或对等(P2P))服务的无线通信网络。

图6解说了根据各方面的示例性环境,其中可发现D2D服务可被用于建立基于邻近度的分布式总线,各个设备可在该总线上使用D2D技术通信。

图7解说了根据各方面的示例性消息序列,其中可发现D2D服务可被用于建立基于邻近度的分布式总线,各个设备可在该总线上使用D2D技术通信。

图8A解说了可以在两个主机设备之间形成以支持主机设备之间的D2D通信的基于邻近度的示例性分布式总线,而图8B解说了根据各方面的基于邻近度的示例性分布式总线,其中一个或多个嵌入式设备可以连接至主机设备以连接至基于邻近度的分布式总线。

图9和图10分别解说了根据各方面的其中控制设备可以响应于检测到广播自源设备的事件通知而触发目标设备上的命令的示例性呼叫流和方法。

图11和图12分别解说了根据各方面的其中控制设备可以将源设备配置成响应于检测到广播自源设备的事件通知而触发目标设备上的命令的示例性呼叫流和方法。

图13和图14分别解说了根据各方面的其中控制设备可以将目标设备配置成监听广播自源设备的事件通知并且响应于检测到该事件通知而触发命令的示例性呼叫流和方法。

图15和16解说了根据各方面的示例性用户界面,控制设备可以显示该的示例性用户界面以配置响应于广播自源设备的事件通知而触发目标设备的命令。

图17解说了可与本文所描述的各方面和实施例中的任一方面和实施例结合使用的示例性通信设备。

图18解说了其中可以使用本文所描述的各方面和实施例的示例性连接的家庭网络环境。

详细描述

在以下描述和相关附图中公开了各方面和实施例以示出与各示例性方面和实施例相关的具体示例。替换方面和实施例在相关领域的技术人员阅读本公开之后将是显而易见的,且可被构造并实施,而不背离本文公开的范围或精神。另外,众所周知的元素将不被详细描述或可将被省去以便不模糊本文公开的各方面和实施例的相关细节。

措辞“示例性”在本文中用于表示“用作示例、实例或解说”。本文中描述为“示例性”的任何实施例不必被解释为优于或胜过其他实施例。同样,术语“实施例”并不要求所有实施例都包括所讨论的特征、优点、或工作模式。

本文使用的术语仅描述了特定实施例并且不应该被解读成限定本文公开的任何实施例。如本文所使用的,单数形式的“一”、“一个”和“该”旨在也包括复数形式,除非上下文另有明确指示并非如此。还将理解,术语“包括”、“具有”、“包含”和/或“含有”在本文中使用时指定所陈述的特征、整数、步骤、操作、要素、和/或组件的存在,但并不排除一个或多个其他特征、整数、步骤、操作、要素、组件和/或其群组的存在或添加。

此外,许多方面以将由例如计算设备的元件执行的动作序列的方式来描述。将认识到,本文描述的各种动作能由专用电路(例如,专用集成电路(ASIC))、由正被一个或多个处理器执行的程序指令、或由这两者的组合来执行。另外,本文描述的这些动作序列可被认为是完全体现在任何形式的计算机可读存储介质内,其内存储有一经执行就将使相关联的处理器执行本文所描述的功能性的相应计算机指令集。因此,本文公开的各方面可以用数种不同形式来实施,所有这些形式都已被构想成落在所要求保护的主题内容的范围内。另外,对于本文所描述的每一个方面,任何此类方面的相应形式可在本文中被描述为例如“配置成执行所描述的动作的逻辑”。

如本文所使用的,术语“物联网设备”(或即“IoT设备”)可指代具有可寻址接口(例如,网际协议(IP)地址、蓝牙标识符(ID)、近场通信(NFC)ID等)并且可在有线或无线连接上向一个或多个其他设备传送信息的任何物体(例如,设施、传感器等)。IoT设备可具有无源通信接口(诸如快速响应(QR)码、射频标识(RFID)标签、NFC标签或类似物)或有源通信接口(诸如调制解调器、收发机、发射机-接收机、或类似物)。IoT设备可具有特定属性集(例如,设备状态或状况(诸如该IoT设备是开启还是关断、打开还是关闭、空闲还是活跃、可用于任务执行还是繁忙等)、冷却或加热功能、环境监视或记录功能、发光功能、发声功能等),其可被嵌入到中央处理单元(CPU)、微处理器、ASIC或类似物等中,和/或由其控制/监视,并被配置用于连接至IoT网络(诸如局域自组织网络或因特网)。例如,IoT设备可包括但不限于:冰箱、烤面包机、烤箱、微波炉、冷冻机、洗碗机、器皿、手持工具、洗衣机、干衣机、炉子、空调、恒温器、电视机、灯具、吸尘器、洒水器、电表、燃气表等,只要这些设备装备有用于与IoT网络通信的可寻址通信接口即可。IoT设备还可包括蜂窝电话、台式计算机、膝上型计算机、平板计算机、个人数字助理(PDA)等等。相应地,IoT网络可由传统的摂可接入因特网的设备(例如,膝上型或台式计算机、蜂窝电话等)以及通常不具有因特网连通性的设备(例如,洗碗机等)的组合构成。

图1A解说了根据各方面的无线通信系统100A的高级系统架构。无线通信系统100A包含多个IoT设备,包括电视机110、室外空调单元112、恒温器114、冰箱116、以及洗衣机和干衣机118。

参照图1A,IoT设备110-118被配置成在物理通信接口或层(在图1A中被示为空中接口108和直接有线连接109)上与接入网(例如,接入点125)通信。空中接口108可遵循无线网际协议(IP),诸如IEEE 802.11。尽管图1A解说了IoT设备110-118在空中接口108上通信,并且IoT设备118在直接有线连接109上通信,但每个IoT设备可在有线或无线连接、或这两者上通信。

因特网175包括数个路由代理和处理代理(出于方便起见未在图1A中示出)。因特网175是互联的计算机和计算机网络的全球系统,其使用标准网际协议套件(例如,传输控制协议(TCP)和IP)在不同的设备/网络之间通信。TCP/IP提供了端到端连通性,该连通性指定了数据应当如何被格式化、寻址、传送、路由和在目的地处被接收。

在图1A中,计算机120(诸如台式计算机或个人计算机(PC))被示为直接连接至因特网175(例如在以太网连接或者基于Wi-Fi或802.11的网络上)。计算机120可具有到因特网175的有线连接,诸如到调制解调器或路由器的直接连接,在一示例中该路由器可对应于接入点125自身(例如,对于具有有线和无线连通性两者的Wi-Fi路由器)。替换地,并非在有线连接上被连接至接入点125和因特网175,计算机120可在空中接口108或另一无线接口上被连接至接入点125,并在空中接口108上接入因特网175。尽管被解说为台式计算机,但计算机120可以是膝上型计算机、平板计算机、PDA、智能电话、或类似物。计算机120可以是IoT设备和/或包含用于管理IoT网络/群(诸如IoT设备110-118的网络/群)的功能性。

接入点125可例如经由光学通信系统(诸如FiOS)、电缆调制解调器、数字订户线(DSL)调制解调器等被连接至因特网175。接入点125可使用标准网际协议(例如,TCP/IP)与IoT设备110-120和因特网175通信。

参照图1A,IoT服务器170被示为连接至因特网175。IoT服务器170可被实现为多个在结构上分开的服务器,或者替换地可对应于单个服务器。在一方面,IoT服务器170是可任选的(如由点线所指示的),并且IoT设备110-120的群可以是对等(P2P)网络。在此种情形中,IoT设备110-120可在空中接口108和/或直接有线连接109上使用恰适的设备到设备(D2D)通信技术彼此直接通信。替换或附加地,IoT设备110-120中的一些或所有IoT设备可配置有独立于空中接口108和直接有线连接109的通信接口。例如,如果空中接口108对应于Wi-Fi接口,则IoT设备110-120中的一个或多个IoT设备可具有蓝牙或NFC接口以用于彼此直接通信或者与其他启用蓝牙或NFC的设备直接通信。

在对等网络中,服务发现方案可多播节点的存在、它们的能力、和群成员资格。对等设备可基于此信息来建立关联和后续交互。

根据各方面,图1B解说了包含多个IoT设备的另一无线通信系统100B的高级架构。一般而言,图1B中示出的无线通信系统100B可包括与以上更详细地描述的在图1A中示出的无线通信系统100A相同和/或基本相似的各种组件(例如,各种IoT设备,包括被配置成在空中接口108和/或直接有线连接109上与接入点125通信的电视机110、室外空调单元112、恒温器114、冰箱116、以及洗衣机和干衣机118,直接连接至因特网175和/或通过接入点125连接至因特网175的计算机120,以及可经由因特网175来访问的IoT服务器170等)。如此,出于描述的简洁和方便起见,与图1B中示出的无线通信系统100B中的某些组件相关的各种细节可在本文中省略,既然上面已关于图1A中解说的无线通信系统100A提供了相同或类似细节。

参照图1B,无线通信系统100B可包括监管器设备130,其可替换地被称为IoT管理器130或IoT管理器设备130。如此,在以下描述使用术语“监管器设备”130的情况下,本领域技术人员将领会,对IoT管理器、群主、或类似术语的任何引述可指代监管器设备130或提供相同或基本相似功能性的另一物理或逻辑组件。

在各实施例中,监管器设备130一般可观察、监视、控制、或以其他方式管理无线通信系统100B中的各种其他组件。例如,监管器设备130可在空中接口108和/或直接有线连接109上与接入网(例如,接入点125)通信以监视或管理与无线通信系统100B中的各种IoT设备110-120相关联的属性、活动、或其他状态。监管器设备130可具有到因特网175的有线或无线连接,以及可任选地到IoT服务器170的有线或无线连接(被示为点线)。监管器设备130可从因特网175和/或IoT服务器170获得可被用来进一步监视或管理与各种IoT设备110-120相关联的属性、活动、或其他状态的信息。监管器设备130可以是自立设备或是IoT设备110-120之一,诸如计算机120。监管器设备130可以是物理设备或在物理设备上运行的软件应用。监管器设备130可包括用户接口,其可输出与所监视的关联于IoT设备110-120的属性、活动、或其他状态相关的信息并接收输入信息以控制或以其他方式管理与其相关联的属性、活动、或其他状态。相应地,监管器设备130一般可包括各种组件且支持各种有线和无线通信接口以观察、监视、控制、或以其他方式管理无线通信系统100B中的各种组件。

图1B中示出的无线通信系统100B可包括一个或多个无源IoT设备105(与有源IoT设备110-120形成对比),其可被耦合至无线通信系统100B或以其他方式成为其一部分。一般而言,无源IoT设备105可包括条形码设备、蓝牙设备、射频(RF)设备、带RFID标签的设备、红外(IR)设备、带NFC标签的设备、或在短程接口上被查询时可向另一设备提供其标识符和属性的任何其他合适设备。有源IoT设备可对无源IoT设备的属性变化进行检测、存储、传达、动作等。

例如,无源IoT设备105可包括咖啡杯和橙汁容器,其各自具有RFID标签或条形码。橱柜IoT设备和冰箱IoT设备116可各自具有恰适的扫描器或读卡器,其可读取RFID标签或条形码以检测咖啡杯和/或橙汁容器无源IoT设备105何时已经被添加或移除。响应于橱柜IoT设备检测到咖啡杯无源IoT设备105的移除,并且冰箱IoT设备116检测到橙汁容器无源IoT设备的移除,监管器设备130可接收到与在橱柜IoT设备和冰箱IoT设备116处检测到的活动相关的一个或多个信号。监管器设备130随后可推断出用户正在用咖啡杯喝橙汁和/或想要用咖啡杯喝橙汁。

尽管前面将无源IoT设备105描述为具有某种形式的RFID标签或条形码通信接口,但无源IoT设备105也可包括不具有此类通信能力的一个或多个设备或其他物理对象。例如,某些IoT设备可具有恰适的扫描器或读取器机构,其可检测与无源IoT设备105相关联的形状、大小、色彩、和/或其他可观察特征以标识无源IoT设备105。以此方式,任何合适的物理对象可传达其身份和属性并且成为无线通信系统100B的一部分,且通过监管器设备130被观察、监视、控制、或以其他方式管理。此外,无源IoT设备105可被耦合至图1A中的无线通信系统100A或以其他方式成为其一部分,并且以基本类似的方式被观察、监视、控制、或以其他方式管理。

根据各方面,图1C解说了包含多个IoT设备的另一无线通信系统100C的高级架构。一般而言,图1C中示出的无线通信系统100C可包括与以上更详细地描述的分别在图1A和1B中示出的无线通信系统100A和100B相同和/或基本相似的各种组件。如此,出于描述的简洁和方便起见,与图1C中示出的无线通信系统100C中的某些组件相关的各种细节可在本文中省略,既然上面已关于分别在图1A和1B中解说的无线通信系统100A和100B提供了相同或类似细节。

图1C中示出的通信系统100C解说了IoT设备110-118与监管器设备130之间的示例性对等通信。如图1C中所示,监管器设备130在IoT监管器接口上与IoT设备110-118中的每一个IoT设备通信。进一步,IoT设备110和114彼此直接通信,IoT设备112、114和116彼此直接通信,以及IoT设备116和118彼此直接通信。

IoT设备110-118组成IoT群160。IoT设备群160是本地连接的IoT设备(诸如连接至用户的家庭网络的IoT设备)的群。尽管未示出,但多个IoT设备群可经由连接至因特网175的IoT超级代理140来彼此连接和/或通信。在高层级,监管器设备130管理群内通信,而IoT超级代理140可管理群间通信。尽管被示为分开的设备,但监管器设备130和IoT超级代理140可以是相同设备或驻留在相同设备上(例如,自立设备或IoT设备,诸如图1A中示出的计算机120)。替换地,IoT超级代理140可对应于或包括接入点125的功能性。作为又一替换,IoT超级代理140可对应于或包括IoT服务器(诸如IoT服务器170)的功能性。IoT超级代理140可封装网关功能性145。

每个IoT设备110-118可将监管器设备130视为对等方并且向监管器设备130传送属性/纲要更新。当IoT设备需要与另一IoT设备通信时,它可向监管器设备130请求指向该IoT设备的指针,并且随后作为对等方与该目标IoT设备通信。IoT设备110-118使用共用消息接发协议(CMP)在对等通信网络上彼此通信。只要两个IoT设备都启用了CMP并且通过共用通信传输来连接,它们就可彼此通信。在协议栈中,CMP层154在应用层152之下并在传输层156和物理层158之上。

根据各方面,图1D解说了包含多个IoT设备的另一无线通信系统100D的高级架构。一般而言,图1D中示出的无线通信系统100D可包括与以上更详细地描述的分别在图1A-1C中示出的无线通信系统100A-100C相同和/或基本相似的各种组件。如此,出于描述的简洁和容易起见,与图1D中所示的无线通信系统100D中的某些组件相关的各个细节在相同或类似细节已在以上分别关于图1A-1C中解说的无线通信系统100A-100C提供的程度上可在本文中省略。

因特网175是可使用IoT概念来管控的“资源”。然而,因特网175仅仅是被管控的资源的一个示例,并且任何资源可使用IoT概念来管控。可被管控的其他资源包括但不限于电力、燃气、存储、安全性等。IoT设备可被连接至该资源并由此管控它,或者该资源可在因特网175上被管控。图1D解说了若干资源180,诸如天然气、汽油、热水、以及电力,其中资源180可作为因特网175的补充和/或在因特网175上被管控。

IoT设备可彼此通信以管控它们对资源180的使用。例如,IoT设备(诸如烤面包机、计算机、和吹风机)可在蓝牙通信接口上彼此通信以管控它们对电力(资源180)的使用。作为另一示例,IoT设备(诸如台式计算机、电话、和平板计算机)可在Wi-Fi通信接口上通信以管控它们对因特网175(资源180)的接入。作为又一示例,IoT设备(诸如炉子、干衣机、和热水器)可在Wi-Fi通信接口上通信以管控它们对燃气的使用。替换或附加地,每个IoT设备可被连接至IoT服务器(诸如IoT服务器170),该服务器具有用于基于从各IoT设备接收到的信息来管控它们对资源180的使用的逻辑。

根据各方面,图1E解说了包含多个IoT设备的另一无线通信系统100E的高级架构。一般而言,图1E中示出的无线通信系统100E可包括与以上更详细地描述的分别在图1A-1D中示出的无线通信系统100A-100D相同和/或基本相似的各种组件。如此,出于描述的简洁和方便起见,与图1E中示出的无线通信系统100E中的某些组件相关的各种细节可在本文中省略,既然上面已关于分别在图1A-1D中解说的无线通信系统100A-100D提供了相同或类似细节。

通信系统100E包括两个IoT设备群160A和160B。多个IoT设备群可经由连接至因特网175的IoT超级代理彼此连接和/或通信。在高层级,IoT超级代理可管理各IoT设备群之间的群间通信。例如,在图1E中,IoT设备群160A包括IoT设备116A、122A和124A以及IoT超级代理140A,而IoT设备群160B包括IoT设备116B、122B和124B以及IoT超级代理140B。如此,IoT超级代理140A和140B可连接至因特网175并通过因特网175彼此通信,和/或彼此直接通信以促成IoT设备群160A与160B之间的通信。此外,尽管图1E解说了两个IoT设备群160A和160B经由IoT超级代理140A和140B彼此通信,但本领域技术人员将领会,任何数目的IoT设备群可合适地使用IoT超级代理来彼此通信。

图2A解说了根据各方面的IoT设备200A的高级示例。尽管外观和/或内部组件在各IoT设备之间可能显著不同,但大部分IoT设备将具有某种类别的用户接口,该用户接口可包括显示器和用于用户输入的装置。可在有线或无线网络上与没有用户接口(诸如图1A-1B的空中接口108)的IoT设备远程地通信。

如图2A中所示,在关于IoT设备200A的示例配置中,IoT设备200A的外壳可配置有显示器226、电源按钮222、以及两个控制按钮224A和224B、以及其他组件,如本领域已知的。显示器226可以是触摸屏显示器,在此情形中控制按钮224A和224B可以不是必需的。尽管未被明确地示为IoT设备200A的一部分,但IoT设备200A可包括一个或多个外部天线和/或被构建到外壳中的一个或多个集成天线,包括但不限于Wi-Fi天线、蜂窝天线、卫星定位系统(SPS)天线(例如,全球定位系统(GPS)天线),等等。

尽管IoT设备(诸如IoT设备200A)的内部组件可使用不同硬件配置来实施,但内部硬件组件的基本高级配置在图2A中被示为平台202。平台202可接收和执行在网络接口(诸如图1A-B中的空中接口108和/或有线接口)上传送的软件应用、数据和/或命令。平台202还可独立地执行本地存储的应用。平台202可包括被配置用于有线和/或无线通信的一个或多个收发机206(例如,Wi-Fi收发机、蓝牙收发机、蜂窝收发机、卫星收发机、GPS或SPS接收机等),其可操作地耦合至一个或多个处理器208,诸如微控制器、微处理器、专用集成电路、数字信号处理器(DSP)、可编程逻辑电路、或其他数据处理设备,其将一般性地被称为处理器208。处理器208可执行IoT设备的存储器212内的应用编程指令。存储器212可包括只读存储器(ROM)、随机存取存储器(RAM)、电可擦除可编程ROM(EEPROM)、闪存卡或计算机平台通用的任何存储器中的一者或多者。一个或多个输入/输出(I/O)接口214可被配置成允许处理器208与各种I/O设备(诸如所解说的显示器226、电源按钮222、控制按钮224A和224B,以及任何其他设备,诸如与IoT设备200A相关联的传感器、致动器、中继、阀、开关等)通信并从其进行控制。

相应地,各方面可包括含有执行本文描述的功能的能力的IoT设备(例如,IoT设备200A)。如将由本领域技术人员领会的,各种逻辑元件可在分立元件、处理器(例如,处理器208)上执行的软件模块、或软件与硬件的任何组合中实施以达成本文公开的功能性。例如,收发机206、处理器208、存储器212、和I/O接口214可以全部协作地用来加载、存储和执行本文公开的各种功能,并且用于执行这些功能的逻辑因此可分布在各种元件上。替换地,该功能性可被纳入到一个分立的组件中。因此,图2A中的IoT设备200A的特征将仅被视为解说性的,且IoT设备200A不被限定于图2A中所示出的所解说的特征或安排。

图2B解说了根据各方面的无源IoT设备200B的高级示例。一般而言,图2B中示出的无源IoT设备200B可包括与以上更详细地描述的在图2A中示出的IoT设备200A相同和/或基本相似的各种组件。如此,出于描述的简洁和方便起见,与图2B中示出的无源IoT设备200B中的某些组件相关的各种细节可在本文中省略,既然上面已关于图2A中解说的IoT设备200A提供了相同或类似细节。

图2B中示出的无源IoT设备200B一般可不同于图2A中示出的IoT设备200A,不同之处在于无源IoT设备200B可不具有处理器、内部存储器、或某些其他组件。替代地,在各实施例中,无源IoT设备200B可仅包括I/O接口214或者允许无源IoT设备200B在受控IoT网络内被观察、监视、控制、管理、或以其他方式知晓的其他合适的机构。例如,在各实施例中,与无源IoT设备200B相关联的I/O接口214可包括条形码、蓝牙接口、射频(RF)接口、RFID标签、IR接口、NFC接口、或者在短程接口上被查询时可向另一设备(例如,有源IoT设备(诸如IoT设备200A),其可对关于与无源IoT设备200B相关联的属性的信息进行检测、存储、传达、动作、或以其他方式处理)提供与无源IoT设备200B相关联的标识符和属性的任何其他合适的I/O接口。

尽管前面将无源IoT设备200B描述为具有某种形式的RF、条形码、或其他I/O接口214,但无源IoT设备200B可包括不具有此类I/O接口214的设备或其他物理对象。例如,某些IoT设备可具有恰适的扫描器或读取器机构,其可检测与无源IoT设备200B相关联的形状、大小、色彩、和/或其他可观察特征以标识无源IoT设备200B。以此方式,任何合适的物理对象可传达其身份和属性并且在受控IoT网络内被观察、监视、控制、或以其他方式被管理。

图3解说了包括配置成执行功能性的逻辑的通信设备300。通信设备300可对应于以上提及的通信设备中的任一者,包括但不限于IoT设备110-120、IoT设备200A、耦合至因特网175的任何组件(例如,IoT服务器170)等等。因此,通信设备300可对应于被配置成在图1A-B的无线通信系统100A-B上与一个或多个其它实体通信(或促成与一个或多个其它实体的通信)的任何电子设备。

参照图3,通信设备300包括配置成接收和/或传送信息的逻辑305。在一示例中,如果通信设备300对应于无线通信设备(例如,IoT设备200A和/或无源IoT设备200B),则配置成接收和/或传送信息的逻辑305可包括无线通信接口(例如,蓝牙、WiFi、Wi-Fi直连、长期演进(LTE)直连等),诸如无线收发机和相关联的硬件(例如,RF天线、调制解调器、调制器和/或解调器等)。在另一示例中,配置成接收和/或传送信息的逻辑305可对应于有线通信接口(例如,串行连接、USB或火线连接、可藉以接入因特网175的以太网连接等)。因此,如果通信设备300对应于某种类型的基于网络的服务器(例如,应用170),则配置成接收和/或传送信息的逻辑305在一示例中可对应于以太网卡,该以太网卡经由以太网协议将基于网络的服务器连接至其它通信实体。在进一步示例中,配置成接收和/或传送信息的逻辑305可包括传感或测量硬件(例如,加速计、温度传感器、光传感器、用于监视本地RF信号的天线等),通信设备300可藉由该传感或测量硬件来监视其本地环境。配置成接收和/或传送信息的逻辑305还可包括在被执行时准许配置成接收和/或传送信息的逻辑305的相关联硬件执行其接收和/或传送功能的软件。然而,配置成接收和/或传送信息的逻辑305不单单对应于软件,并且配置成接收和/或传送信息的逻辑305至少部分地依赖于硬件来实现其功能性。

参照图3,通信设备300进一步包括配置成处理信息的逻辑310。在一示例中,配置成处理信息的逻辑310可至少包括处理器。可由配置成处理信息的逻辑310执行的处理类型的示例实现包括但不限于执行确定、建立连接、在不同信息选项之间作出选择、执行与数据有关的评价、与耦合至通信设备300的传感器交互以执行测量操作、将信息从一种格式转换为另一种格式(例如,在不同协议之间转换,诸如,.wmv到.avi等),等等。例如,包括在配置成处理信息的逻辑310中的处理器可对应于被设计成执行本文描述功能的通用处理器、DSP、ASIC、现场可编程门阵列(FPGA)或其他可编程逻辑器件、分立的门或晶体管逻辑、分立的硬件组件、或其任何组合。通用处理器可以是微处理器,但在替换方案中,该处理器可以是任何常规的处理器、控制器、微控制器、或状态机。处理器还可以被实现为计算设备的组合(例如DSP与微处理器的组合、多个微处理器、与DSP核协作的一个或多个微处理器、或任何其他此类配置)。配置成处理信息的逻辑310还可包括在被执行时准许配置成处理信息的逻辑310的相关联硬件执行其处理功能的软件。然而,配置成处理信息的逻辑310不单单对应于软件,并且配置成处理信息的逻辑310至少部分地依赖于硬件来实现其功能性。

参照图3,通信设备300进一步包括配置成存储信息的逻辑315。在一示例中,配置成存储信息的逻辑315可至少包括非瞬态存储器和相关联的硬件(例如,存储器控制器等)。例如,包括在配置成存储信息的逻辑315中的非瞬态存储器可对应于RAM、闪存、ROM、可擦除式可编程ROM(EPROM)、EEPROM、寄存器、硬盘、可移动盘、CD-ROM、或本领域中已知的任何其他形式的存储介质。配置成存储信息的逻辑315还可包括在被执行时准许配置成存储信息的逻辑315的相关联硬件执行其存储功能的软件。然而,配置成存储信息的逻辑315不单单对应于软件,并且配置成存储信息的逻辑315至少部分地依赖于硬件来实现其功能性。

参照图3,通信设备300进一步可任选地包括配置成呈现信息的逻辑320。在一示例中,配置成呈现信息的逻辑320可至少包括输出设备和相关联的硬件。例如,输出设备可包括视频输出设备(例如,显示屏、能承载视频信息的端口,诸如USB、HDMI等)、音频输出设备(例如,扬声器、能承载音频信息的端口,诸如话筒插孔、USB、HDMI等)、振动设备和/或信息可藉此被格式化以供输出或实际上由通信设备300的用户或操作者输出的任何其它设备。例如,如果通信设备300对应于如图2A中所示的IoT设备200A和/或如图2B中所示的无源IoT设备200B,则配置成呈现信息的逻辑320可包括显示器226。在进一步示例中,对于某些通信设备(诸如不具有本地用户的网络通信设备(例如,网络交换机或路由器、远程服务器等))而言,配置成呈现信息的逻辑320可被省略。配置成呈现信息的逻辑320还可包括在被执行时准许配置成呈现信息的逻辑320的相关联硬件执行其呈现功能的软件。然而,配置成呈现信息的逻辑320不单单对应于软件,并且配置成呈现信息的逻辑320至少部分地依赖于硬件来实现其功能性。

参照图3,通信设备300进一步可任选地包括配置成接收本地用户输入的逻辑325。在一示例中,配置成接收本地用户输入的逻辑325可至少包括用户输入设备和相关联的硬件。例如,用户输入设备可包括按钮、触摸屏显示器、键盘、相机、音频输入设备(例如,话筒或可携带音频信息的端口,诸如话筒插孔等)、和/或可用来从通信设备300的用户或操作者接收信息的任何其它设备。例如,如果通信设备300对应于如图2A中所示的IoT设备200A和/或如图2B中所示的无源IoT设备200B,则配置成接收本地用户输入的逻辑325可包括按钮222、224A和224B、显示器226(在触摸屏的情况下),等等。在进一步示例中,对于某些通信设备(诸如不具有本地用户的网络通信设备(例如,网络交换机或路由器、远程服务器等))而言,配置成接收本地用户输入的逻辑325可被省略。配置成接收本地用户输入的逻辑325还可包括在被执行时准许配置成接收本地用户输入的逻辑325的相关联硬件执行其输入接收功能的软件。然而,配置成接收本地用户输入的逻辑325不单单对应于软件,并且配置成接收本地用户输入的逻辑325至少部分地依赖于硬件来实现其功能性。

参照图3,尽管所配置的逻辑305到325在图3中被示出为分开或相异的块,但将领会,相应各个所配置的逻辑藉以执行其功能性的硬件和/或软件可部分交迭。例如,用于促成所配置的逻辑305到325的功能性的任何软件可被存储在与配置成存储信息的逻辑315相关联的非瞬态存储器中,从而所配置的逻辑305到325各自部分地基于由配置成存储信息的逻辑315所存储的软件的操作来执行其功能性(即,在这一情形中为软件执行)。同样地,直接与所配置的逻辑之一相关联的硬件可不时地被其它所配置的逻辑借用或使用。例如,配置成处理信息的逻辑310的处理器可在数据由配置成接收和/或传送信息的逻辑305传送之前将此数据格式化成恰适的格式,从而配置成接收和/或传送信息的逻辑305部分地基于与配置成处理信息的逻辑310相关联的硬件(即,处理器)的操作来执行其功能性(即,在这一情形中为数据传输)。

一般而言,除非另外明确声明,如本文所使用的短语“配置成…的逻辑”旨在指至少部分用硬件实现的逻辑,而并非旨在映射到独立于硬件的仅软件实现。同样,将领会,各个框中的所配置的逻辑或“配置成…的逻辑”并不限于具体的逻辑门或元件,而是一般地指代执行本文描述的功能性的能力(经由硬件或硬件和软件的组合)。因此,尽管共享措词“逻辑”,但如各个框中所解说的所配置的逻辑或“配置成...的逻辑”不必被实现为逻辑门或逻辑元件。从以下更详细地描述的各方面的概览中,各个框中的逻辑之间的其它交互或协作将对本领域普通技术人员而言变得清楚。

各实施例可实现在各种市售的服务器设备中的任何服务器设备上,诸如图4中所解说的服务器400。在一示例中,服务器400可对应于上述IoT服务器170的一个示例配置。在图4中,服务器400包括耦合至易失性存储器402和大容量非易失性存储器(诸如盘驱动器403)的处理器401。服务器400还可包括耦合至处理器401的软盘驱动器、压缩碟(CD)或DVD碟驱动器406。服务器400还可包括耦合至处理器401的用于建立与网络407(诸如耦合至其他广播系统计算机和服务器或耦合至因特网的局域网)的数据连接的网络接入端口404。在图3的上下文中,将领会,图4的服务器400解说了通信设备300的一个示例实现,藉此配置成传送和/或接收信息的逻辑305对应于由服务器400用来与网络407通信的网络接入点404,配置成处理信息的逻辑310对应于处理器401,而配置成存储信息的逻辑315对应于易失性存储器402、盘驱动器403和/或碟驱动器406的任何组合。配置成呈现信息的可任选逻辑320和配置成接收本地用户输入的可任选逻辑325未在图4中明确示出,并且可以被或可以不被包括在其中。因此,图4帮助表明除了如图2A中的IoT设备实现之外,通信设备300还可被实现为服务器。

一般而言,如上所述,基于IP的技术和服务可变得更成熟,从而拉低成本并提高IP的可用性,这已允许将因特网连接性添加到越来越多类型的日常电子对象。如此,IoT基于日常电子对象(不仅是计算机和计算机网络)可经由因特网可读、可识别、可定位、可寻址、以及可控制的理念。总体而言,随着IoT的发展和日益流行,具有不同类型且执行不同活动的众多邻近的异构IoT设备和其他物理对象(例如,灯、打印机、冰箱、空调等)可按许多不同方式彼此交互并且可按许多不同方式来使用。如此,由于可能在受控IoT网络内使用的潜在大量的异构IoT设备和其他物理对象,一般可能需要良好定义且可靠的通信接口来连接到各种异构IoT设备,以使得各种异构IoT设备能被适当地配置、管理以及彼此通信以交换信息,等等。相应地,关于图5-8提供的以下描述一般地概述了本文所公开的可支持能启用分布式编程环境中各异构设备之间的直接D2D通信的可发现设备到设备(D2D)或对等(P2P)服务的示例性通信框架。

一般而言,用户装备(UE)(例如,电话、平板计算机、膝上型计算机和台式计算机、车辆,等等)可被配置成彼此在本地(例如,蓝牙、局部Wi-Fi,等等)、远程(例如,经由蜂窝网络、通过因特网,等等)或根据它们的合适组合来彼此连接。此外,某些UE还可使用支持一对一连接或同时连接至包括彼此直接通信的若干设备的群的某些无线联网技术(例如,Wi-Fi、蓝牙、Wi-Fi直连等)来支持基于邻近度的D2D通信。为此,图5解说了可支持可以启用直接D2D通信的可发现D2D服务的示例性无线通信网络或WAN 500,其中无线通信网络500可包括包含各种基站510和其他网络实体的LTE网络或另一合适的WAN。出于简化起见,在图5中仅示出三个基站510a、510b和510c,一个网络控制器530,以及一个动态主机配置协议(DHCP)服务器540。基站510可以是与设备520通信的实体并且还可被称为B节点、演进型B节点(eNB)、接入点等。每个基站510可提供对特定地理区域的通信覆盖,并可支持位于该覆盖区内的设备520的通信。为了提高网络容量,基站510的整个覆盖区可被划分成多个(例如,三个)较小的区域,其中每个较小的区域可由各自的基站510来服务。在3GPP中,术语“蜂窝小区”可指代基站510的覆盖区和/或服务该覆盖区的基站子系统510,这取决于使用该术语的上下文。在3GPP2中,术语“扇区”或“蜂窝小区-扇区”可指代基站510的覆盖区和/或服务该覆盖区的基站子系统510。为简明起见,在本文的描述中可使用3GPP概念“蜂窝小区”。

基站510可提供对宏蜂窝小区、微微蜂窝小区、毫微微蜂窝小区、和/或其他蜂窝小区类型的通信覆盖。宏蜂窝小区可覆盖相对较大的地理区域(例如,半径为数千米的区域),并且可允许无约束地由具有服务订阅的设备520接入。微微蜂窝小区可覆盖相对较小的地理区域并且可允许无约束地由具有服务订阅的设备520接入。毫微微蜂窝小区可覆盖相对较小的地理区域(例如,住宅)且可允许有约束地由与该毫微微蜂窝小区有关联的设备520(例如,封闭订户群(CSG)中的设备520)接入。在图5所示的示例中,无线网络500包括用于宏蜂窝小区的宏基站510a、510b和510c。无线网络500还可包括用于微微蜂窝小区的微微基站510、和/或用于毫微微蜂窝小区的家用基站510(图5中未示出)。

网络控制器530可耦合至一组基站510并可为这些基站510提供协调和控制。网络控制器530可以是可经由回程与基站通信的单个网络实体或网络实体集合。基站还可以彼此通信(例如直接或经由无线或有线回程间接地)。DHCP服务器540可支持D2D通信,如以下描述的。DHCP服务器540可以是无线网络500的一部分、在无线网络500外部、经由因特网连接共享(ICS)来运行、或其任何组合。DHCP服务器540可以是单独实体(例如,如图5中所示),或者可以是基站510、网络控制器530、或某种其他实体的一部分。在任何情形中,DHCP服务器540可由期望直接通信的设备520访问。

设备520可分散遍及无线网络500,且每个设备520可以是驻定的或移动的。设备520也可被称为节点、用户装备(UE)、站、移动站、终端、接入终端、订户单元等。设备520可以是蜂窝电话、个人数字助理(PDA)、无线调制解调器、无线通信设备、手持式设备、膝上型计算机、无绳电话、无线本地环路(WLL)站、智能电话、上网本、智能本、平板电脑等等。设备520可与无线网络500中的基站510通信并且可进一步与其他设备520进行对等通信。例如,如图5中所示,设备520a和520b可进行对等通信,设备520c和520d可进行对等通信,设备520e和520f可进行对等通信,以及设备520g、520h和520i可进行对等通信,而其余设备520可与基站510通信。如图5中进一步所示的,设备520a、520d、520f和520h也可以与基站500通信(例如在不进行D2D通信时或者可能与D2D通信并发地与基站500通信)。

在本文的描述中,WAN通信可以指无线网络500中的设备520与基站510之间的通信(例如用于与远程实体(诸如另一设备520)的呼叫)。WAN设备是有兴趣进行或正参与WAN通信的设备520。通常,本文中使用的术语“对等”或“P2P”通信以及“设备到设备”或“D2D”通信是指两个或多个设备520之间不通过任何基站510的直接通信。为了简化起见,本文中所提供的描述使用术语“设备到设备”或“D2D”来指代此类直接通信,虽然本领域技术人员将会领会术语“对等”、“P2P”、“设备到设备”以及“D2D”可以在本文中描述的各个方面和实施例中互换。

根据各实施例,D2DP设备是有兴趣进行或参与D2D通信的设备520(例如具有要给另一设备520的话务数据的设备520,该另一设备520邻近D2D设备)。例如,两个设备在若每个设备520能检测到另一设备520的情况下可被认为彼此邻近。一般而言,设备520可针对D2D通信直接与另一设备520通信,或者针对WAN通信经由至少一个基站510与另一设备520通信。

在各实施例中,D2D设备520之间的直接通信可被组织成D2D群。更具体地,D2D群一般是指有兴趣进行或正参与D2D通信的两个或更多个设备520的群,而D2D链路是指用于D2D群的通信链路。此外,在各实施例中,D2D群可包括被指定为D2D群主(或D2D服务器)的一个设备520以及被指定为由该D2D群主服务的D2D客户端的一个或多个设备520。D2D群主可执行某些管理功能,诸如与WAN交换信令,协调D2D群主与D2D客户端之间的数据传输,等等。例如,如图5中所示,第一D2D群包括在基站510a的覆盖下的设备520a和520b,第二D2D群包括在基站510b的覆盖下的设备520c和520d,第三D2D群包括在不同基站510b和510c的覆盖下的设备520e和520f,以及第四D2D群包括在基站510c的覆盖下的设备520g、520h和520i。设备520a、520d、520f和520h可以是其相应D2D群的D2D群主,而设备520b、520c、520e、520g和520i可以是其相应D2D群中的D2D客户端。图5中的其他设备520可参与WAN通信。

在各实施例中,D2D通信可仅在D2D群内发生,并且可进一步仅在D2D群主和与之相关联的D2D客户端之间发生。例如,如果同一D2D群内的两个D2D客户端(例如,设备520g和520i)期望交换信息,则这些D2D客户端之一可向D2D群主(例如,设备520h)发送信息并且D2D群主可随后将传输中继至另一D2D客户端。在各实施例中,特定设备520可属于多个D2D群,并且可在每个D2D群中要么充当D2D群主要么充当D2D客户端。此外,在各实施例中,特定D2D客户端可属于仅一个D2D群,或者属于多个D2D群并在任何特定时刻与这多个D2D群中的任一个D2D群中的D2D设备520通信。一般而言,可经由下行链路和上行链路上的传输来促成通信。对于WAN通信,下行链路(或即前向链路)是指从基站510至设备520的通信链路,而上行链路(或即反向链路)是指从设备520至基站510的通信链路。对于D2D通信,D2D下行链路是指从D2D群主至D2D客户端的通信链路,而D2D上行链路是指从D2D客户端至D2D群主的通信链路。在各实施例中,并非使用WAN技术来进行D2D通信,而是两个或更多个设备可形成较小D2D群并使用诸如Wi-Fi、蓝牙或Wi-Fi直连等技术在无线局域网(WLAN)上进行D2D通信。例如,使用Wi-Fi、蓝牙、Wi-Fi直连、或其他WLAN技术的D2D通信可在两个或更多个移动电话、游戏控制台、膝上型计算机、或其他合适的通信实体之间实现D2D通信。

根据各方面,图6解说了示例性环境600,其中可发现D2D服务可被用于建立基于邻近度的分布式总线625,各个设备610、620、630可在该总线上使用D2D技术通信。例如,在各实施例中,可使用进程间通信协议(IPC)框架在分布式总线640上促成单个平台上的应用等之间的通信,分布式总线640可包括用于在联网计算环境中实现应用到应用通信的软件总线,其中应用向分布式总线640注册以向其他应用提供服务,并且其他应用向分布式总线640查询关于经注册的应用的信息。此类协议可提供异步通知和远程规程调用(RPC),其中信号消息(例如,通知)可以是点到点的或是广播,方法调用消息(例如,RPC)可以是同步或异步的,并且分布式总线640可处置各种设备610、620、630之间的消息路由(例如,经由一个或多个总线路由器或“守护进程”或可提供至分布式总线640的附连的其他合适的进程)。

在各实施例中,分布式总线640可得到各种传输协议(例如,蓝牙、TCP/IP、Wi-Fi、CDMA、GPRS、UMTS)的支持。例如,根据各方面,第一设备610可包括分布式总线节点612以及一个或多个本地端点614,其中分布式总线节点612可促成与第一设备610相关联的本地端点614和与第二设备620及第三设备630相关联的本地端点624和634之间通过分布式总线640(例如,经由第二设备620和第三设备630上的分布式总线节点622和632)的通信。如以下将参照图7进一步详细描述的,分布式总线640可支持对称多设备网络拓扑并且可在存在设备退出的情况下提供稳健的操作。如此,虚拟分布式总线640(其一般可独立于任何底层传输协议(例如,蓝牙、TCP/IP、Wi-Fi等))可允许各种安全性选项,从不安全(例如,开放)到安全(例如,经认证和加密),其中可在第一设备610、第二设备620和第三设备630来到彼此的射程或邻域中时在无需干预的情况下促成各个设备610、620、630之间的自发连接时使用安全性选项。

根据各方面,图7解说了示例性信令流700,其中可发现D2D服务可被用于建立基于邻近度的分布式总线,第一设备(“设备A”)710和第二设备(“设备B”)720可在该总线上使用D2D技术通信。例如,在图7中所示的信令流700中,设备A 710可请求与设备B 720通信,其中设备A 710可包括可作出通信请求的本地端点714(例如,本地应用、服务等)以及可辅助促成此类通信的总线节点712。此外,设备B 720可包括本地端点724和总线节点722,本地端点714可尝试与本地端点724通信,总线节点722可辅助促成设备A 710上的本地端点714与设备B 720上的本地端点724之间的通信。

在各实施例中,在754,总线节点712和722可执行合适的发现机制。例如,可使用由蓝牙、TCP/IP、UNIX等支持的用于发现连接的机制。在756,设备A 714上的本地端点710可请求连接至通过总线节点712可用的实体、服务、端点等。在各实施例中,该请求可包括本地端点714与总线节点712之间的请求-响应过程。在758,可形成分布式消息总线以将总线节点712连接至总线节点722并由此建立设备A 710与设备B 720之间的D2D连接。在各实施例中,用于在总线节点712和722之间形成分布式总线的通信可使用合适的基于邻近度的D2D协议(例如,被设计成实现来自不同制造商的连通的产品和软件应用之间的互操作性以动态地创建邻近网络并促成邻近D2D通信的AllJoynTM软件框架)来促成。替换地,在各实施例中,服务器(未示出)可促成总线节点712和722之间的连接。此外,在各实施例中,在形成总线节点712和722之间的连接之前可使用合适的认证机制(例如,SASL认证,其中客户端可发送认证命令以发起认证对话)。再进一步,在758,总线节点712和722可交换关于其他可用端点(例如,图6中的设备C 630上的本地端点634)的信息。在此类实施例中,总线节点维护的每个本地端点可被宣告给其他总线节点,其中该宣告可包括唯一性端点名称、传输类型、连接参数、或其他合适的信息。

在各实施例中,在760,总线节点712和总线节点722可分别使用所获得的与本地端点724和714相关联的信息来创建虚拟端点,虚拟端点可表示通过各个总线节点可用的真实获得的端点。在各实施例中,总线节点712上的消息路由可使用真实端点和虚拟端点来递送消息。此外,对于远程设备(例如,设备A 710)上存在的每个端点,可以有一个本地虚拟端点。再进一步,此类虚拟端点可复用和/或分用在分布式总线(例如,总线节点712与总线节点722之间的连接)上发送的消息。在各实施例中,虚拟端点可以就像真实端点那样接收来自本地总线节点712或722的消息,并且可在分布式总线上转发消息。如此,虚拟端点可从端点复用的分布式总线连接将消息转发到本地总线节点712和722。此外,在各实施例中,与远程设备上的虚拟端点相对应的虚拟端点可在任何时间被重新连接以容适特定传输类型的期望拓扑。在这样的实施例中,基于UNIX的虚拟端点可被认为是本地的,且由此可不被认为是用于重新连接的候选。此外,基于TCP的虚拟端点可被优化用于一跳路由(例如,每个总线节点712和722可彼此直接连接)。再进一步,基于蓝牙的虚拟端点可被优化用于单个微微网(例如,一个主设备和n个从设备),其中基于蓝牙的主设备可以是与本地主节点相同的总线节点。

在各实施例中,在762,总线节点712和总线节点722可交换总线状态信息以合并总线实例并实现分布式总线上的通信。例如,在各实施例中,总线状态信息可包括公知名称到唯一性端点名称的映射、匹配规则、路由群、或其他合适的信息。在各实施例中,可使用接口在总线节点712和总线节点722实例之间传达状态信息,其中本地端点714和724使用基于分布式总线的本地名称来通信。在另一方面,总线节点712和总线节点722可各自维护负责向分布式总线提供反馈的本地总线控制器,其中总线控制器可将全局方法、自变量、信号和其他信息转译成与分布式总线相关联的标准。在764,总线节点712和总线节点722可传达(例如,广播)信号以向相应的本地端点714和724通知在总线节点连接期间引入的任何改变,诸如以上所述的。在各实施例中,可用名称所有者改变信号来指示新的和/或被移除的全局和/或经转译名称。此外,可用名称丢失信号来指示可能在本地丢失(例如,由于名称冲突)的全局名称。再进一步,可用名称所有者已改变信号来指示由于名称冲突而被转移的全局名称,并且可用名称所有者改变信号来指示在总线节点712和总线节点722变为断开连接的情况下和/或之时消失的唯一性名称。

如以上使用的,公知名称可被用于唯一性地描述本地端点714和724。在各实施例中,当在设备A 710与设备B 720之间发生通信时,可使用不同的公知名称类型。例如,设备本地名称可仅存在于与总线节点712直接附连至的设备A 710相关联的总线节点712上。在另一示例中,全局名称可存在于所有已知的总线节点712和722上,其中该名称的唯一所有者可存在于所有总线区段上。换言之,当总线节点712和总线节点722加入并且发生任何冲突时,所有者之一可能丢失全局名称。在又一示例中,在客户端连接至与虚拟总线相关联的其他总线节点时,可使用经转译名称。在这样的实施例中,经转译名称可包括附加结尾(例如,连接至具有全局唯一性标识符“1234”的分布式总线的具有公知名称“org.foo”的本地端点714可被视为“G1234.org.foo”)。

在各实施例中,在766,总线节点712和总线节点722可传达(例如,广播)信号以向其他总线节点通知对端点总线拓扑的改变。此后,来自本地端点714的话务可移动通过虚拟端点到达设备B 720上的目标本地端点724。此外,在操作中,本地端点714与本地端点724之间的通信可使用路由群。在各实施例中,路由群可使得端点能接收来自端点子集的信号、方法调用、或其他合适的信息。如此,路由名称可由连接至总线节点712或722的应用来确定。例如,D2D应用可使用构建到该应用中的唯一性的、公知的路由群名称。此外,总线节点712和722可支持本地端点714和724向路由群的注册和/或注销。在各实施例中,路由群可不具有超出当前总线实例的持久性。在另一方面,应用可在每次连接至分布式总线时针对其优选路由群进行注册。再进一步,群可以是开放的(例如,任何端点都可以加入)或封闭的(例如,只有群创建者能修改该群)。此外,总线节点712或722可发送信号以向其他远程总线节点通知对路由群端点的添加、移除、或其他改变。在此类实施例中,总线节点712或722可每当向/从群添加和/或移除成员时就向其他群成员发送路由群改变信号。此外,总线节点712或722可向与分布式总线断开连接的端点发送路由群改变信号,而不是先将它们从路由群移除。

根据各方面,图8A解说了可以在第一主机设备810和第二主机设备830之间形成以启用第一主机设备810和第二主机设备830之间的D2D通信的示例性基于邻近度的分布式总线。更具体地,如以上参照图6所描述的,基于邻近度的分布式总线的基本结构可以包括驻留在分开的物理主机设备上的多个总线区段。相应地,在图8A中,基于邻近度的分布式总线的每一区段可位于主机设备810、830之一上,其中主机设备810、830各自执行可实现位于相应主机设备810、830上的总线区段的本地总线路由器(或“守护进程”)。例如,在图8A中,每一主机设备810、830包括标记为“D”的泡以表示实现位于相应主机设备810、830上的总线区段的总线路由器。此外,主机设备810、830中的一者或多者可具有若干总线附连,其中每一总线附连连接到本地总线路由器。例如,在图8A中,主机设备810、830上的总线附连被解说为各自对应于服务(S)或可以请求服务的客户端(C)的六边形。

然而,在某些情形中,嵌入式设备可能缺少运行本地总线路由器的足够资源。相应地,图8B解说了示例性基于邻近度的分布式总线,其中一个或多个嵌入式设备820、825可以连接到主机设备(例如主机设备830)以连接到基于邻近度的分布式总线,并且藉此参与D2D通信(例如,与主机设备830或与其他主机设备810和/或经由主机设备830附连到基于邻近度的分布式总线的嵌入式设备825的D2D通信)。如此,嵌入式设备820、825一般可以“借用”在主机设备830上运行的总线路由器,由此图8B示出了一种安排,其中嵌入式设备820、825是在物理上与运行所借用的总线路由器的主机设备830分开的设备,所借用的总线路由器管理嵌入式设备820、825所驻留的分布式总线区段。一般而言,嵌入式设备820、825与主机设备830之间的连接可以根据传输控制协议(TCP)来作出,并且在嵌入式设备820、825与主机设备830之间流动的网络话务可以包括实现总线方法、总线信号、以及按类似于以上参照图6和7更详细地描述的方式在相应会话上流动的性质的消息。

更具体而言,嵌入式设备820、825可以根据可在概念上与客户端和服务之间的发现和连接过程相似的发现和连接过程来连接至主机设备830,其中主机设备830可以宣告公知的名称(例如,“org.alljoyn.BusNode”),该名称发信号通知要主存嵌入式设备820、825的能力或意图。在一个使用情形中,嵌入式设备820、825可以简单地连接至宣告该公知名称的“第一”主机设备。然而,如果嵌入式设备820、825简单地连接到宣告公知名称的第一主机设备,则嵌入式设备820、825可能不具有涉及与该主机设备关联的类型的任何知识(例如,主机设备830是否是移动设备、机顶盒、接入点,等等),嵌入式设备820、825也将不具有涉及该主机设备上的负载状态的任何知识。相应地,在其他使用情形中,嵌入式设备820、825可基于主机设备810、830在宣告要做其他设备(例如,嵌入式设备820、825)的宿主的能力或意愿时所提供的信息来自适应地连接到主机设备830,这可从而根据与主机设备810、830相关联的属性(例如,类型、负载状态,等等)和/或与嵌入式设备820、825相关联的要求(例如,表达对连接到来自同一制造商的主机设备的偏好的排名表)来加入基于邻近度的分布式总线。

在不久的未来,随着IoT技术的不断发展导致在家庭、车辆、工作以及许多其他地点和私人空间有众多IoT设备围绕用户,许多用户将会以互相关的方式在特定环境内与不同设备交互。相应地,本文中进一步具体描述的各机制可以允许用户链接事件通知和异构设备支持的控制命令以自动化可以在逻辑上相关的共同的或例行的活动。例如,在各实施例中,在广播自源设备的事件通知抵达控制设备(例如,智能电话或另一合适的设备)时,用户可以将被给出将该事件通知链接到可以被触发以控制目标设备的命令的选项。由此,响应于用户选择链接事件通知的选项,可向该用户显示一个或多个可控目标设备,并且该用户可以定义在未来该事件通知再次发生时在该可控目标设备上自动触发的一个或多个命令。例如,如将在以下参照图9和图10进一步具体描述的,控制设备可以存储触发定义,以及响应于后续检测到源设备广播经链接的事件通知而在可控目标设备上自动呼叫或以其他方式调用命令。在另一示例中,如将在以下参照图11和图12进一步具体描述的,控制设备可以将触发定义和经链接的命令推送到广播源设备,该广播源设备可以随后在未来广播事件通知时在可控目标设备上调用经链接的命令。在还有另一示例中,如将在以下参照图13和图14进一步具体描述的,控制设备可以在可控目标设备上配置监听器,从而该可控目标设备可以监听来自广播源设备的事件通知,并且随后响应于所配置的检测广播自源设备的事件通知的监听器来调用经链接的命令。

更具体而言,根据各方面,图9解说了示例性呼叫流900,其中控制设备920可以响应于检测到广播自源设备910的事件通知而触发目标设备930上的命令。具体而言,控制设备920(例如,智能电话或另一合适的设备)可以被配置成在942监视IoT网络或另一合适的网络,其中源设备910、控制设备920以及目标设备930可以各自支持合适的基于邻近度的D2D协议,该D2D协议可以允许源设备910、控制设备920和目标设备930参与基于邻近度的分布式总线上的直接通信(例如,以上针对图6-8所进一步具体描述的AllJoynTM软件框架)。由此,响应于在944源设备910广播特定事件通知,控制设备920可以在946检测所广播的事件通知,并且显示可以被用来将所检测到的事件通知与要在目标设备930上触发的命令相链接的用户界面并藉此控制该目标设备930。例如,在各种实施例中,源设备910可包括闹钟,而目标设备930可包括空调单元。由此,源设备910可以在944广播“闹钟小睡催醒”事件通知,并且响应于检测到该“闹钟小睡催醒”事件通知,控制设备920可以显示用户界面以允许用户将“闹钟小睡催醒”事件链接到一个或多个可控目标设备930(例如,空调单元)上的命令。例如,图15解说了控制设备920可以响应于检测到“闹钟小睡催醒”事件通知而显示的示例性用户界面1510,其中用户界面1510可以允许用户定义链接到闹钟小睡催醒事件通知的触发命令,并且用户界面1510可进一步为用户提供不理会该闹钟小睡催醒事件通知而不定义链接到闹钟小睡催醒事件通知的触发命令的替代选择。

在各实施例中,响应于用户选择定义触发命令以链接到闹钟小睡催醒事件通知的选项(例如,从用户界面1510),控制设备920可以随后显示示出可以链接到闹钟小睡催醒事件通知的一个或多个可控目标设备的设备控制面板。例如,图15进一步解说了可以响应于用户从用户界面1510选择触发命令选项而在控制设备920上显示的示例性设备控制面板1520,其中该设备控制面板1520可以示出,除了被链接到空调单元和广播小睡催醒事件通知的闹钟之外,闹钟小睡催醒事件通知还可以被链接到收音机、咖啡机、加热器和灯上的命令。由此,响应于用户从设备控制面板1520选择空调单元,控制设备920可以显示与空调单元相关联的因设备而异的控制面板。例如,图15进一步解说了控制设备920可以响应于用户从设备控制面板1520中选择空调单元而显示的示例性因设备而异的控制面板1530,其中因设备而异的控制面板1530可以允许用户触发将闹钟小睡催醒事件链接到目标设备930(即,空调单元)的特定风扇速度、温度以及开启/关闭状态。相应地,返回图9,控制设备820可以在948接收定义链接到所广播的事件通知的命令的(诸)用户输入,源设备910可以随后存储这些数据输入,从而在948所定义的命令可以响应于源设备910在未来再次广播事件通知而在目标设备930上被自动触发。进一步,在各实施例中,控制设备920可以任选地响应于确定链接到所广播的事件通知的命令与先前所配置的一个或多个触发定义冲突而显示停用屏幕。例如,图15进一步解说了可以被显示以解决冲突事件触发的示例性停用屏幕1540(例如,先前的触发定义可以将闹钟小睡催醒事件链接到加热器上的特定命令,且停用屏幕1540可以被显示以提示用户停用先前的触发定义,因为用户很可能不想要空调单元和加热器响应于相同事件通知而开启)。相应地,再次参照图9,控制设备920可以在用户合适地定义在目标设备830上触发的命令(以及在适用的情况下,解决了任何冲突事件触发)之后存储链接到闹钟小睡催醒事件的触发定义。在各实施例中,控制设备920可以随后在950继续监视网络,其中源设备910可以在952再次广播事件通知,从而控制设备在954检测到事件通知并且随后在956触发目标设备930上的先前定义的命令。

根据各方面,图10解说了示例性方法1000,其中控制设备可以响应于检测到广播自源设备的事件通知而触发目标设备的命令,这可以类似于图9中所示的在控制设备920处执行的功能。具体而言,在框1010,控制设备可以监视本地无线网络并且随后检测在框1020检测源设备使用合适的基于邻近度的D2D协议广播的事件通知。响应于此,控制设备可以在框1030确定事件通知是否是新(即,先前未观察到)事件通知,在该情况下控制设备可以在框1040显示用户界面以提示用户不理会该事件通知或者定义要在目标设备上触发的命令,该命令可以被链接到广播自源设备的事件通知。相应地,在框1040,控制设备可以在框1070恢复监视局域网之前,接收不理会事件通知或者定义命令触发的一个或多个用户输入。然而,在控制设备处接收到的输入定义命令触发的后一情况中,控制设备可以在恢复局域网监视之前存储命令触发,从而该命令可以响应于源设备在未来再次广播事件通知而在目标设备上自动触发。例如,在框1030,控制设备会确定广播自源设备的事件通知在先前被观察到过并且因此不是新的。相应地,在框1050,控制设备可以确定是否已经定义了关于该事件通知的现有命令触发。更具体而言,若用户先前不理会该事件通知,那么控制设备可以在框1070恢复监视局域网而不采取任何进一步的动作。然而,若用户先前定义过命令触发,那么控制设备可以在框1070处继续监视局域网之前使用D2D技术与目标设备通信并且在框1060调用目标设备上的命令。

根据各方面,图11解说了另一示例性呼叫流1100,其中控制设备1120可以被用来响应于广播自源设备1110的事件通知而触发目标设备1130上的命令。具体而言,图11中所示的呼叫流1100一般类似于图9中所示且在以上进一步具体描述的呼叫流900,其中控制设备1120可以在1142监视IoT网络或另一合适的无线网络,响应于在1146检测到在1144广播自源设备1110的事件通知而显示图15中所示的用户界面1510,以及进一步显示图15中所示的用户界面1520、1530、1540以允许用户在1148定义触发命令以链接到事件通知。然而,图11中所示的呼叫流1100与图9中的呼叫流900的不同之处在于,在1150,控制设备1120可以在用户基于广播自源设备1110的事件通知而合适地定义要在目标设备1130上触发的命令之后向广播源设备1110传送命令分组。由此,在1150,控制设备1120可以一般向广播源设备1110推送触发定义和所链接的命令,该源设备1110可以随后在源设备1110在未来在1152再次广播该事件通知时,在1154调用可控目标设备1130上所链接的命令。例如,在以上所描述的示例性使用情况中,源设备1110可以是闹钟,目标设备1130可以是空调单元,以及触发定义可包括响应于闹钟广播小睡催醒事件通知而开启空调单元并且将空调单元设置到特定风扇速度和温度。相应地,在该示例性使用情况中,从控制设备1120传送到源设备1110的命令分组可以具有以下的示例性格式:

表1:示例性命令分组

相应地,如图11中所示,控制设备1120可以向源设备1110传送可以具有以上格式或者另一合适格式的命令分组,从而源设备1110可以响应于在未来再次广播事件通知而在目标设备1130上触发在命令分组中定义的命令。

根据各方面,图12解说了示例性方法1200,其中控制设备可以将源设备配置成响应于检测到广播自源设备的事件通知而在目标设备上触发命令,这可以一般类似于图11中所示的在控制设备1120处执行的功能。具体而言,在框1210,控制设备可以监视本地无线网络并且随后检测在框1220检测源设备使用合适的基于邻近度的D2D协议广播的事件通知。响应于此,控制设备可以在框1230确定事件通知是否是新(即,先前未观察到)事件通知,在该情况下控制设备可以在框1240显示用户界面以提示用户不理会该事件通知或者定义在目标设备上触发的命令,该命令可以被链接到广播自源设备的事件通知。相应地,在框1240,控制设备可以接收不理会事件通知或者定义在目标设备上触发且链接到框1220处检测到的事件通知的命令的一个或多个用户输入。相应地,响应于在框1250确定在控制设备处接收到的输入定义了命令触发,控制设备可以在框1260向广播源设备传送命令分组。在本文中所提及的每个情形中,控制设备可以随后在框1270恢复监视局域网并且不再响应于在未来再次检测到相同的事件通知而采取任何进一步的动作。作为替代,因为控制设备在框1260向广播源设备推送了触发定义和所链接的命令,所以源设备在未来无论何时再次广播事件通知时可以随后在可控目标设备上调用所链接的命令。由此,若控制设备在框1230确定再次检测到该事件通知,那么控制设备可以在框1270简单地恢复监视局域网而不采取进一步的动作,因为源设备已经被预先提供了链接到该事件通知的命令。

根据各方面,图13解说了可以被用来响应于广播自源设备的事件通知而触发目标设备上的命令的另一示例性呼叫流1300,其中图13中所示的呼叫流1300可以被用于其中控制设备1320可以在目标设备1330上配置监听器,使得目标设备1330监听广播自源设备1310的特定事件通知并且响应于监听器检测到源设备1310广播事件通知而调用可以被链接到事件通知的特定本地命令的上下文中。具体而言,在1342,控制设备1320可以首先学习源设备1310上所支持的事件通知广播,并且在1344,控制设备1320可以进一步学习目标设备1330上支持的一个或多个命令。相应地,在各实施例中,控制设备1320可以执行允许用户在特定网络环境内在可控设备上注册广播监听器的恰适的应用。例如,参见图16,控制设备1320可以响应于用户运行允许用户注册广播监听器的应用来显示用户界面1610,该用户界面1610示出了支持事件通知广播的网络环境中的一个或多个设备(例如,用户界面1610可包括对应于可以广播特定事件通知的收音机、咖啡机、加热器、空调单元、闹钟、灯等的按钮)。

相应地,响应于用户从用户界面1610中示出的广播设备中选择源设备1310,控制设备1210可以显示源设备1310学习到的源设备1310上所支持的具体事件通知广播的另一用户界面1620(例如,响应于用户从用户界面1610选择闹钟,控制设备1320可以显示用户界面1620以示出闹钟支持涉及“闹钟设置”事件、“闹钟响铃”事件、“闹钟小睡催醒”事件、“闹钟关闭”事件等的广播)。在各实施例中,用户可以随后从用户界面1620选择源设备1310支持的特定事件通知广播,这可以使得控制设备1320显示另一用户界面1630,该用户界面1630示出了链接到所选择的事件通知广播的命令并且提供了进一步将所选择的事件通知广播链接到网络环境内的可控设备上的特定命令。例如,用户可以从用户界面1630选择“添加事件”选项,并且控制设备1320可以随后显示用户界面1640,该用户界面1640示出网络环境中的可控设备,该可控设备可被配置成注册与从用户界面1620中选择的事件通知广播相关联的监听器(例如,用户界面1640可包括对应于收音机、咖啡机、加热器、空调单元、闹钟、灯等的按钮)。

在各实施例中,响应于用户从用户界面1640中所示的诸可控设备中选择了目标设备1330,控制设备1320可以显示另一用户界面1650,该用户界面1650示出了源设备1310学习到的目标设备1330上支持的具体方法或命令(例如,响应于用户从用户界面1640选择了空调单元,控制设备1320可以显示用户界面1650以示出空调单元支持可以用来开启或关闭空调单元,设置空调单元上的风扇速度、设置空调单元上的温度等的方法或命令)。由此,响应于用户从用户界面1650选择特定方法或命令,控制设备1320可以再次显示用户界面1630,该用户界面1630示出链接到所选择的事件通知广播的命令,其中用户界面1630现在可填充有选择自用户界面1650的方法或命令,以确认所选择的方法或命令已经被链接到选择自用户界面1620的事件通知广播。参见图13,控制设备1320可以随后在1346接收命令触发定义。在各实施例中,在1348,控制设备1320可以随后响应于用户已经合适地将目标设备1330处支持的方法或命令与源设备1310处支持的事件通知广播链接而将监听器配置或以其他方式注册在目标设备1330上。由此,目标设备1330可以在1352执行所配置的监听器,这可以一般使得目标设备1330监听来自源设备1310的事件通知广播(例如,选择自用户界面1620的事件通知广播)。相应地,响应于源设备1310在1350广播事件通知,目标设备1330可以经由所配置的事件监听器来检测事件通知以及在1354执行链接到广播事件通知的方法或命令(例如,选择自用户界面1650的方法或命令)而没有进一步经由控制设备1320的介入。

根据各方面,图14解说了示例性方法1400,其中控制设备可以将目标设备配置成监听广播自源设备的事件通知,以及响应于检测到事件通知而触发命令,这可以一般类似于图13中所示的在控制设备1320处执行的功能。具体而言,在框1410,控制设备可以首先学习源设备上所支持的事件通知广播,并且在框1420,控制设备可以进一步学习目标设备上支持的一个或多个命令。相应地,在各实施例中,控制设备可以执行允许用户在特定网络环境内的可控设备上定义和注册广播监听器的恰适应用,其中框1430可包括接收一个或多个此类命令触发定义(例如,如以上针对图13和图16所进一步具体描述的)。在各实施例中,响应于在框1430处接收一个或多个命令触发定义,控制设备可以创建将目标设备处支持的一个或多个方法或命令与源设备处支持的一个或多个事件通知链接的事件监听器,其中控制设备可以在框1440在目标设备处配置事件监听器。由此,目标设备可以随后执行所配置的监听器,这可以一般使得目标设备监听广播自源设备的事件通知(例如,所配置的监听器中定义的事件通知)以及响应于检测到事件通知而调用链接到该事件通知的方法或命令而没有进一步的经由控制设备的介入。

根据各方面,图17解说了可以与本文中所描述的各方法和实施例中的任一者通过使用可发现D2D服务在基于邻近度的分布式总线上进行的通信来联用的示例性通信设备1700。相应地,在以上所描述的涉及用以根据广播自源设备的事件通知而触发目标设备上的命令的方法的各个方面和实施例的上下文中,图17中所示的通信设备1700可对应于分别在图9、图11和图13中示出的源设备910、1110、1310、控制设备920、1120、1320和/或目标设备930、1130、1330。

在各实施例中,如图17所示,通信设备1700可包括可从例如接收天线(未示出)接收信号、对接收到的信号执行典型的动作(例如,滤波、放大、下变频等)、并将经调理的信号数字化以获得样本的接收机1702。接收机1202可包括可解调接收到的码元并将其提供给处理器1706以供信道估计的解调器1704。处理器1706可专用于分析由接收机1702接收到的信息和/或生成用于由发射机1720传输的信息,控制通信设备1700的一个或多个组件,和/或它们的任何组合。

在各实施例中,通信设备1700可另外包括起作用地耦合至处理器1706的存储器1708,其中存储器1708可存储收到的数据,要传送的数据,与可用信道有关的信息,与经分析的信号和/或干扰强度相关联的数据,与获指派的信道、功率、速率或诸如此类有关的信息,以及任何其他适用于估计信道和经由信道传达的信息。在各实施例中,存储器1708可包括一个或多个本地端点应用1710,这可寻求通过分布式总线模块1730与通信设备1700和/或其他通信设备(未示出)上的端点应用、服务等等通信。存储器1708可附加地存储与估计和/或利用信道(例如,基于性能、基于容量等)相关联的协议和/或算法。

本领域技术人员将明白,本文描述的存储器1708和/或其他数据存储可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。作为解说而非限定,非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除PROM(EEPROM)、或闪存。易失性存储器可包括充当外部高速缓存存储器的随机存取存储器(RAM)。藉由解说而非限定,RAM有许多形式可用,诸如同步RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双倍数据率SDRAM(DDR SDRAM)、增强型SDRAM(ESDRAM)、同步链路DRAM(SLDRAM)、以及直接存储器总线(Rambus)RAM(DRRAM)。本主题系统和方法中的存储器1708可包括但不限于这些以及任何其他合适类型的存储器。

在各实施例中,与通信设备1700相关联的分布式总线模块1730可进一步促进建立与其他设备的连接。分布式总线模块1730可进一步包括用以辅助分布式总线模块1730管理多个设备之间的通信的总线节点模块1732。在各实施例中,总线节点模块1732可进一步包括用以辅助总线节点模块1732与关联于其他设备的端点应用进行通信的对象命名模块1734。另外,分布式总线模块1730可包括辅助本地端点应用1710通过所建立的分布式总线与其他本地端点和/或其他设备上的可访问的端点应用进行通信的端点模块1736。在另一方面,分布式总线模块1730可促进通过多个可用运输(例如,蓝牙、UNIX域套接字、TCP/IP、Wi-Fi,等等)的设备间和/或设备内通信。相应地,在各实施例中,分布式总线模块1730和端点应用1710可被用来建立和/或加入基于邻近度的分布式总线,通信设备1700可通过该分布式总线使用直接设备到设备(D2D)通信来与其邻近度内的其他通信设备进行通信。

另外,在各实施例中,通信设备1700可包括用户接口1740,用户接口1740可包括用于生成对通信设备1700的输入的一个或多个输入机制1742以及用于生成信息以供通信设备1700的用户消费的一个或多个输出机制1744。例如,输入机制1742可包括诸如键或键盘、鼠标、触摸屏显示器、话筒等的机构。此外,例如,输出机制1744可包括显示器、音频扬声器、触觉反馈机制、个域网(PAN)收发机等。在所示方面,输出机制1744可包括可用于以音频形式渲染媒体内容的音频扬声器、可用于以图像或视频格式渲染媒体内容和/或以文本或可视形式渲染定时元数据的显示器、或其他合适的输出机制。然而,在各实施例中,无头通信设备1700可不包括某些输入机制1742和/或输出机制1744,因为无头设备一般指被配置成在无需监视器、键盘和/或鼠标的情况下操作的计算机系统或设备。

进一步,在各实施例中,通信设备1700可包括能够获取有关与通信设备1700相关联的本地环境的各种测量的一个或多个传感器1750。例如,在各实施例中,传感器1750可包括加速计、陀螺仪或能够获取有关通信设备1700处的被施加的运动的测量的其他合适的传感器。在另一示例中,传感器1750可包括能够获取有关内部和/或环境温度、功耗、本地无线电信号、光,和/或其他本地和/或周围环境变量的测量的恰适硬件、电路系统或其他合适的设备。

根据各方面,图18解说了示例性经连接的家庭网络环境1800,其中可以使用用于响应于广播自源设备的事件通知而触发目标设备的命令的各方法的任一者,其中示例性经连接的家庭网络环境1800可包括各种IoT设备,这些IoT设备可配置成以各种方式彼此交互以执行以上所进一步具体描述的用于触发目标设备上的命令的各方法。例如,在图18中所示的示例中,经连接的家庭网络环境1800包括智能电话1870、室外扬声器1812、1814、闹钟1816、卧室扬声器1818、恒温器1820、洗衣机1822、挂钟1824、咖啡机1826、客厅落地扬声器1828、书架音频系统1830、家庭影院扬声器1832、1834、门把手1836、冰箱1850、电视1852、智能电话1870以及无线路由器或家庭网关1872。进一步,如图18中所示,家庭网络环境1800中的各IoT设备可被配置成以在以上进一步具体描述的各角色(例如,控制设备、源设备、目的设备等)中的一者或多者来操作。相应地,在各实施例中,智能电话1870、无线路由器或家庭网关1872或环境1800中的另一合适的设备可以作为响应于检测到广播自一个或多个源设备的事件通知而触发一个或多个目标设备上的命令的控制设备来操作。例如,在一个实施例中,智能电话1870可以监视本地环境1800并且检测闹钟1816使用合适的基于邻近度的D2D协议广播的事件通知,以及响应于此,智能电话1870可以使用D2D技术与一个或多个目标设备通信以调用先前定义的命令触发(例如,将恒温器1820的温度上调、开启咖啡机1826等)。在另一示例中,智能电话1870可以在命令触发被初始定义时向闹钟1816传送命令分组,从而闹钟1816可以随后在未来无论何时再次广播相同事件通知都可以调用(诸)可控目标设备上所链接的命令。在还有另一个示例中,智能电话1870可以学习环境1800中各IoT设备上支持的事件通知和命令,从而用户可以在网络环境1800中的一个或多个IoT设备上定义和注册广播监听器。由此,响应于从用户接收到一个或多个命令触发定义,智能电话1870可以创建将特定目标设备处支持的一个或多个方法或命令与特定源设备处支持的一个或多个事件通知链接的事件监听器,以及在目标设备处配置事件监听器,藉此,目标设备可以执行所配置的监听器并且响应于检测到来自源设备的事件通知来调用链接到该事件通知的方法或命令而没有进一步的经由智能电话1870的介入。

本领域技术人员将领会,信息和信号可使用各种不同技术和技艺中的任何一种来表示。例如,贯穿上面描述始终可能被述及的数据、指令、命令、信息、信号、位(比特)、码元、以及码片可由电压、电流、电磁波、磁场或磁粒子、光场或光粒子、或其任何组合来表示。

此外,本领域技术人员将领会,结合本文中所公开的方面描述的各种解说性逻辑块、模块、电路、和算法步骤可被实现为电子硬件、计算机软件、或两者的组合。为清楚地解说硬件与软件的这一可互换性,各种解说性组件、块、模块、电路、以及步骤在上面是以其功能性的形式作一般化描述的。此类功能性是被实现为硬件还是软件取决于具体应用和施加于整体系统的设计约束。技术人员可针对每种特定应用以不同方式来实现所描述的功能性,但此类实现决策不应被解读为脱离本文描述的各方面和实施例的范围。

结合本文中公开的方面描述的各种解说性逻辑块、模块、以及电路可用设计成执行本文中描述的功能的通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其他可编程逻辑器件、分立的门或晶体管逻辑、分立的硬件组件、或其任何组合来实现或执行。通用处理器可以是微处理器,但在替换方案中,处理器可以是任何常规的处理器、控制器、微控制器、或状态机。处理器还可以被实现为计算设备的组合(例如DSP与微处理器的组合、多个微处理器、与DSP核协作的一个或多个微处理器、或任何其他此类配置)。

结合本文公开的方面描述的方法、序列和/或算法可直接在硬件中、在由处理器执行的软件模块中、或在这两者的组合中体现。软件模块可驻留在RAM、闪存、ROM、EPROM、EEPROM、寄存器、硬盘、可移动盘、CD-ROM或本领域中所知的任何其他形式的存储介质中。示例性存储介质耦合到处理器以使得该处理器能从/向该存储介质读写信息。在替换方案中,存储介质可以被整合到处理器。处理器和存储介质可驻留在ASIC中。ASIC可驻留在IoT设备中。替换地,处理器和存储介质可作为分立组件驻留在用户终端中。

在一个或多个示例性方面,所描述的功能可在硬件、软件、固件或其任何组合中实现。如果在软件中实现,则各功能可以作为一条或多条指令或代码存储在计算机可读介质上或藉其进行传送。计算机可读介质包括计算机存储介质和通信介质两者,包括促成计算机程序从一地向另一地转移的任何介质。存储介质可以是能被计算机访问的任何可用介质。作为示例而非限定,此类计算机可读介质可包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储或其他磁存储设备、或能用于携带或存储指令或数据结构形式的期望程序代码且能被计算机访问的任何其他介质。任何连接也被正当地称为计算机可读介质。例如,如果软件是使用同轴电缆、光纤电缆、双绞线、DSL、或诸如红外、无线电、以及微波之类的无线技术从web网站、服务器、或其他远程源传送而来,则同轴电缆、光纤电缆、双绞线、DSL、或诸如红外、无线电、以及微波之类的无线技术就被包括在介质的定义之中。如本文所使用的,盘(disk)和碟(disc)包括CD、激光碟、光碟、DVD、软盘和蓝光碟,其中盘(disk)常常磁性地和/或用激光来光学地再现数据。上述的组合应当也被包括在计算机可读介质的范围内。

尽管前面的公开示出了解说性方面和实施例,但是本领域技术人员将明白,在其中可作出各种变更和修改而不会脱离如所附权利要求定义的本公开的范围。根据本文中所描述的诸方面和实施例的方法权利要求的功能、步骤和/或作不必按任何特定次序来执行。此外,尽管各元素可能是以单数来在上文描述或主张权利的,但是复数也是已构想了的,除非显式地声明了限定于单数。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1