用于设置用户偏好或设备配置的方法和装置与流程

文档序号:12481902阅读:241来源:国知局
用于设置用户偏好或设备配置的方法和装置与流程

本专利申请要求于2014年5月2日提交的题为“USER PREFERENCE SERVICE(用户偏好服务)”的美国临时申请No.61/987,816的权益,该临时申请已被转让给本申请受让人并由此通过援引明确地整体纳入于此。

技术领域

本公开涉及用户偏好服务

背景

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

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

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

因此,在不久的将来,IoT技术持续增进的发展将导致家中、车辆中、工作中、和许多其它位置处用户周围的众多IoT设备。随着越来越多的设备变成是网络知悉式的,涉及配置设备的问题将因此变得更严重。一个问题是在升级设备并将终端用户的个人偏好集从旧设备转移至新设备时创造无缝体验。例如,用户可购买可针对房间中的人定制观看体验的新智能电视。当用户首次购买旧智能电视时,用户必须用例如该用户想要观看什么类型的节目和影片的用户偏好来对该智能电视进行编程。智能电视也可能已经随时间学习这些或其它用户偏好。然而当用户安装新智能电视时,该用户将必须再次重新编程他或她的个人偏好和/或该智能电视将必须再次学习这些偏好。

概述

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

一种用于设置用户偏好和/或设备配置信息的方法包括由第一用户设备检测本地无线网络;从第二用户设备接收第二用户设备的配置信息和/或偏好信息,第二用户设备具有与第一用户设备类似的功能性;以及用从第二用户设备接收到的配置信息和/或偏好信息的至少子集来更新第一用户设备的配置信息和/或偏好信息,第一用户设备的配置信息和/或偏好信息存储在第一用户设备处。

一种用于设置用户偏好和/或设备配置信息的装置包括:收发机,其被配置成在第一用户设备处检测本地无线网络,并且从第二用户设备接收第二用户设备的配置信息和/或偏好信息,第二用户设备具有与第一用户设备类似的功能性;以及处理器,该处理器被配置成用从第二用户设备接收到的配置信息和/或偏好信息的至少子集来更新第一用户设备的配置信息和/或偏好信息,第一用户设备的配置信息和/或偏好信息存储在第一用户设备处。

一种用于设置用户偏好和/或设备配置信息的装备包括用于由第一用户设备检测本地无线网络的装置;用于从第二用户设备接收第二用户设备的配置信息和/或偏好信息的装置,第二用户设备具有与第一用户设备类似的功能性;以及用于用从第二用户设备接收到的配置信息和/或偏好信息的至少子集来更新第一用户设备的配置信息和/或偏好信息的装置,第一用户设备的配置信息和/或偏好信息存储在第一用户设备处。

一种用于设置用户偏好和/或设备配置信息的非瞬态计算机可读介质包括用于由第一用户设备检测本地无线网络的至少一条指令;用于从第二用户设备接收第二用户设备的配置信息和/或偏好信息的至少一条指令,第二用户设备具有与第一用户设备类似的功能性;以及用于用从第二用户设备接收到的配置信息和/或偏好信息的至少子集来更新第一用户设备的配置信息和/或偏好信息的至少一条指令,第一用户设备的配置信息和/或偏好信息存储在第一用户设备处。

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

附图简述

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

图1A解说了根据本公开的一方面的无线通信系统的高级系统架构。

图1B解说了根据本公开的另一方面的无线通信系统的高级系统架构。

图1C解说了根据本公开的一方面的无线通信系统的高级系统架构。

图1D解说了根据本公开的一方面的无线通信系统的高级系统架构。

图1E解说了根据本公开的一方面的无线通信系统的高级系统架构。

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

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

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

图5解说了根据本公开的一个方面的可支持可发现对等(P2P)服务的无线通信网络。

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

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

图8A-C解说了操作中的用户偏好服务的各种示例。

图9解说了用于设置第一用户设备的用户偏好信息和/或设备配置信息的示例性流程。

图10-11是配置成支持本文所教导的通信的装置的若干范例方面的其他简化框图。

详细描述

公开了用于设置用户偏好和/或设备配置信息的方法和装置。第一用户设备检测本地无线网络,从第二用户设备接收第二用户设备的配置信息和/或偏好信息,第二用户设备具有与第一用户设备类似的功能性,并且用从第二用户设备接收到的配置信息和/或偏好信息的至少子集来更新第一用户设备的配置信息和/或偏好信息,第一用户设备的配置信息和/或偏好信息存储在第一用户设备处。

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

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

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

此外,许多方面以将由例如计算设备的元件执行的动作序列的方式来描述。将认识到,本文描述的各种动作能由专用电路(例如,专用集成电路(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上彼此直接通信。替换或附加地,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-C中示出的无线通信系统100A-C相同和/或基本相似的各种组件。如此,出于描述的简洁和容易起见,与图1D中所示的无线通信系统100D中的某些组件相关的各个细节在相同或类似细节已在以上分别关于图1A-C中解说的无线通信系统100A-C提供的程度上可在本文中省略。

因特网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-D中示出的无线通信系统100A-D相同和/或基本相似的各种组件。如此,出于描述的简洁和方便起见,与图1E中示出的无线通信系统100E中的某些组件相关的各种细节可在本文中省略,既然上面已关于分别在图1A-D中解说的无线通信系统100A-D提供了相同或类似细节。

通信系统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-B的空中接口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相关联的传感器、致动器、中继、阀、开关等)通信并从其进行控制。平台202还可包括偏好/配置模块216,该模块可被存储在存储器212中且可由处理器208执行,或者可以是耦合到或集成到处理器208中的硬件组件。

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

例如,在IoT设备200A被配置成如本文描述地设置用户偏好和/或设备配置信息的情况下,在收发机206检测到本地无线网络之际,偏好/配置模块216(与处理器208协同,其中偏好/配置模块216是存储在存储器212中的可执行模块)可被配置成(经由收发机206)从第二用户设备接收第二用户设备的配置信息和/或偏好信息,第二用户设备具有与IoT设备200A类似的功能性,并且用从第二用户设备接收到的配置信息和/或偏好信息的至少子集来更新IoT设备200A的配置信息和/或偏好信息,IoT设备UE 200A的配置信息和/或偏好信息被存储在IoT设备200A处(例如,存储器212中)。

图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网络内被观察、监视、控制、或以其他方式被管理。

此外,取决于在无源IoT设备200B处可用的处理水平,无源IoT设备200B可任选地包括偏好/配置模块216。偏好/配置模块216可以是在通电时被配置成执行本文描述的功能性的自立电路。例如,偏好/配置模块216可以在RFID标签上实现,该RFID标签在通电时(经由收发机206)从第二用户设备接收第二用户设备的配置信息和/或偏好信息,并且用从第二用户设备接收到的配置信息和/或偏好信息的至少子集来更新UE 200B的配置信息和/或偏好信息。

图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对应于某种类型的基于网络的服务器(例如,IoT服务器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至少部分地依赖于硬件来实现其功能性。

在通信设备300如本文描述地被配置成设置用户偏好和/或设备配置信息的情况下,被配置成接收和/或传送信息的逻辑305可被配置成检测本地无线网络并从第二用户设备接收第二用户设备的配置信息和/或偏好信息,第二用户设备具有与通信设备300类似的功能性。被配置成处理信息的逻辑310可被配置成用从第二用户设备接收到的配置信息和/或偏好信息的至少子集来更新通信设备300的配置信息和/或偏好信息。被配置成存储信息的逻辑310可被配置成存储通信设备300的配置信息和/或偏好信息。

参照图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可对应于上述监管器设备130或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还可被实现为服务器。

参照图4,服务器400可被配置成促成第一用户设备设置用户偏好和/或设备配置信息,如本文所讨论的。在这一实施例中,服务器400可包括偏好/配置模块416,该模块可被存储在例如存储器403中且可由处理器401执行,或者可以是耦合到或集成到处理器401中的硬件组件。在操作中,在服务器400检测到第一用户设备已经加入本地无线网络之际,服务器400(具体而言是偏好/配置模块416与处理器401和网络接入端口404协同)可将第二用户设备的配置信息和/或偏好信息发送到第一用户设备,第二用户设备具有与第一用户设备类似的功能性。第一用户设备然后可以用从第二用户设备接收到的配置信息和/或偏好信息的至少子集来更新第一用户设备的配置信息和/或偏好信息。第一用户设备和第二用户设备的配置信息和/或偏好信息可被存储在服务器400和第一用户设备两者处。

一般而言,用户装备(UE)(诸如电话、平板计算机、膝上型和台式计算机、某些车辆等)可被配置成在本地(例如,蓝牙、本地Wi-Fi等)或远程地(例如,经由蜂窝网络、通过因特网等)彼此连接。此外,某些UE还可使用使得设备能够进行一对一连接或同时连接至包括若干设备的群以便彼此直接通信的某些无线联网技术(例如,Wi-Fi、蓝牙、Wi-Fi直连等)来支持基于邻近度的对等(P2P)通信。为此,图5解说了可支持可发现P2P服务的示例性无线通信网络或WAN 500。例如,在一个实施例中,无线通信网络500可包括LTE网络或另一合适的WAN,其包括各种基站510和其他网络实体。出于简化起见,在图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可支持P2P通信,如以下描述的。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通信,例如在不进行P2P通信时或者可能与P2P通信并发地与基站500通信。

在本文的描述中,WAN通信可以指无线网络500中的设备520与基站510之间的通信,例如用于与远程实体(诸如另一设备520)的呼叫。WAN设备是有兴趣进行或正参与WAN通信的设备520。P2P通信是指两个或更多个设备520之间的直接通信而不经过任何基站510。P2P设备是有兴趣进行或正参与P2P通信的设备520,例如具有要给另一设备520的话务数据的设备520,该另一设备520邻近该P2P设备。例如,两个设备在若每个设备520能检测到另一设备520的情况下可被认为彼此邻近。一般而言,设备520可针对P2P通信直接与另一设备520通信,或者针对WAN通信经由至少一个基站510与另一设备520通信。

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

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

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

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

根据本公开的一个方面,图7解说了示例性消息序列700,其中可发现P2P服务可被用于建立基于邻近度的分布式总线,第一设备(“设备A”)710和第二设备(“设备B”)730可在该总线上通信。一般而言,设备A 710可请求与设备B 730通信,其中设备A 710可包括可作出通信请求的本地端点714(例如,本地应用、服务等)以及可辅助促成此类通信的总线节点712。此外,设备B 730可包括本地端点734和总线节点732,本地端点714可尝试与本地端点734通信,总线节点732可辅助促成设备A 710上的本地端点714与设备B 730上的本地端点734之间的通信。

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

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

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

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

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

在不久的将来,IoT技术持续增进的发展将导致家中、车辆中、工作中、和许多其它位置处用户周围的众多IoT设备。随着越来越多的设备变成是网络知悉式的,涉及配置设备的问题将变得更严重。一个问题是在升级或添加设备并将终端用户的个人偏好集从旧设备转移至新设备时创造无缝体验。例如,用户可购买可针对房间中的人定制观看体验的新智能电视。当用户首次购买旧智能电视时,用户必须用例如该用户想要观看什么类型的节目和影片的用户偏好来对该智能电视进行编程。智能电视也可能已经随时间学习这些或其它用户偏好。然而当用户安装新智能电视时,该用户将必须再次重新编程他或她的个人偏好和/或该智能电视将必须再次学习这些偏好。

因此,本公开提供了使新IoT设备能够在被添加到本地无线网络(诸如用户的家用网络)时接收到用户偏好和/或设备配置信息的用户偏好服务(可以在图2A中的偏好/配置模块216中实现)。所公开的服务允许用户执行对用户偏好和/或设备配置的一次性设置。替换地,可随时间动态地学习用户偏好和/或设备配置信息。当新设备被添加到用户的网络时,该新设备可接收且纳入这些用户偏好和/或设备配置信息,由此消除对用户配置新设备的需求。

例如,用户可指定他或她偏好74度的温度,而家中的另一用户偏好78度的温度。当该用户首先安装新智能恒温器时,该设备将具有该用户的偏好的某一先验知识,该设备可开始于该用户偏好的先验知识以助推它可包含的任何学习算法。即使该设备是非学习型恒温器但能够理解这些温度偏好,它也能通过能够将温度调整至家中的各用户的中值而看上去更智能。作为另一示例,参照以上智能电视示例,智能电视可检测到四个人正在看电视并按性别(男或女)、年龄群体和兴趣来归类这些人,并基于它在加入该网络时接收到的用户偏好来自动创建简档。

为了实现该功能性,用户偏好服务可发布信号,该信号包含用户输入的和/或学习到的表示用户偏好和/或设备配置信息的关键字表。这提出了关于表中的关键字的含义的互操作性问题,但这超出了本公开的范围并且将由协会/联盟来定义以确保互操作性。每一偏好/配置值可被标记为公开或私有以允许确认是否允许IoT设备接收偏好/配置。

用户偏好服务还可提供监视新IoT设备以帮助将偏好/配置值“预填”到表中的学习算法。例如,如果用户主要观看动作影片,则“影片兴趣”条目可被更新为包括风格“动作”。类似地,用户可具有他或她的智能电话始终知晓用户周遭的温度的偏好。在其核心,该数据的公开大约为了告知设备“这就是我所喜欢的,你能有所帮助吗?”并允许设备说“如果你喜欢那样,那么让我帮助为你改变它”。

图8A-C解说了操作中的用户偏好服务的各种示例。图8A-C中解说的各种IoT设备可使用P2P协议来彼此通信,如以上参照图5-7描述的。

图8A解说了包括与控制器IoT设备802(被示为平板计算机)通信的智能恒温器804的示例家用网络。尽管控制器IoT设备802被示为平板计算机,但本公开不限于此,且控制器IoT设备802可以是能够实现本文描述的功能性的任何IoT设备,诸如智能电话、图1B中解说的计算机120、监管器130或IoT服务器170、图2A中的IoT设备200A、或图4中的服务器400。为了实现本文描述的功能性,控制器IoT设备802可包括图4中的偏好/配置模块416。

控制器IoT设备802可存储关于附连到用户的家用网络的各种IoT设备的用户偏好和/或设备配置信息。用户可能已经用这些偏好/配置对控制器IoT设备802进行了编程,并且控制器IoT设备802然后可能已经向适当的IoT设备发布了这些偏好/配置。替换地,控制器IoT设备802可能已经在IoT设备由用户编程后和/或在IoT设备学习到用户的一个或多个偏好后从这些IoT设备本身接收到偏好/配置。在后一情形中,IoT设备可在它们学习到新偏好/配置时继续更新控制器IoT设备802。

参照图8A,智能恒温器804从控制器IoT设备802接收用户的温度偏好并且可相应地调整温度。例如,如果当前温度是78度,则智能恒温器804内的算法使用该信息来调整温度以使得房间开始冷却到用户偏好温度73度。智能恒温器804可包括偏好/配置模块216来实现该功能性。

图8B解说了包括与图8A所示的控制器IoT设备802通信的智能电视806的示例家用网络。如图8B所示,智能电视806可能已经学习到某些用户偏好,诸如该用户最喜欢的频道是频道8。在与控制器IoT设备802通信后,智能电视806可发现用户最喜欢的影片风格是“动作”。智能电视806可将该用户定义的偏好添加至其本地存储的用户偏好列表。即,智能电视806可随时间用该用户明确定义的用户偏好来扩充它学习到的用户偏好。智能电视806可包括偏好/配置模块216来实现该功能性。

图8C解说了包括与另一智能电视808通信的图8B所示的智能电视806的示例家用网络。在图8C的示例中,智能电视808最近已经被添加到用户的家用网络。智能电视808可包括偏好/配置模块216以实现以下功能性。在检测到用户的家用网络之际,智能电视808可以向类似的IoT设备(诸如智能电视806)请求用户偏好和/或设备配置信息。智能电视808可使用P2P协议来向该用户的家用网络上的所有IoT设备广播该请求,如以上参照图5-7描述的。替换地,智能电视806可检测到类似的IoT设备已加入用户的家用网络并向智能电视808发送它可具有的任何公开的用户偏好和/或设备配置信息。智能电视806可以通过例如从智能电视808接收介绍或“关于”消息来检测到智能电视808。

无论哪种方式,新智能电视808从智能电视806接收用户偏好和/或设备配置信息并用接收到的用户偏好和/或设备配置信息来更新或填充任何相似的用户偏好和/或设备配置信息。以此方式,用户将既不必用他或她的偏好和/或设备配置信息来对智能电视808进行编程,智能电视808也将不必学习已被类似的IoT设备(在此是智能电视806)学习到的用户偏好和/或设备配置信息。

图9解说了用于设置第一用户设备902的用户偏好信息和/或设备配置信息的示例性流程。第一用户设备902可以是任何IoT设备,诸如图2A中的IoT设备200A。如图9中解说的,第一用户设备902可以与设备904通信。设备904可以是与第一用户设备904类似的第二用户设备(诸如IoT设备200A)(例如,第一用户设备902和设备904两者可以是智能电视),或者设备904可以是控制器IoT设备(诸如监管器设备130、服务器400或控制器IoT设备802)。偏好/配置模块216可以与第一用户设备902的其它组件(诸如处理器、存储器和收发机)协同实现参照图9描述的第一用户设备902的功能性。在设备904对应于与第一用户设备902类似的第二用户设备的情况下,偏好/配置模块216可同样与设备904的其它组件(诸如处理器、存储器和收发机)协同实现参照图9描述的设备904的功能性。替换地,在设备904是控制器IoT设备的情况下,偏好/配置模块416可以与设备904的其它组件(诸如处理器、存储器和收发机)协同实现参照图9描述的设备904的功能性。

用户偏好信息和/或设备配置信息最初可在本地存储在第二用户设备处,或者可被存储在控制器IoT设备处。第一用户设备902和设备904两者可属于本地无线网络的同一用户。

在910,设备904可任选地更新用户偏好信息和/或设备配置信息。在设备904是第二用户设备的情况下,设备904可基于学习算法来更新用户偏好信息和/或设备配置信息。替换地,在设备904是控制器IoT设备的情况下,设备904可以在从第二用户设备接收到用户偏好信息和/或设备配置信息后在设备904的存储器中存储/更新用户偏好信息和/或设备配置信息。

设备配置信息可包括并非由第二用户设备904的用户输入的配置信息。例如,第二用户设备904可基于与用户的交互历史来更新配置信息。作为另一示例,并非由用户输入的配置信息可包括第二用户设备904基于与用户的交互历史学习到的用户偏好。作为又一示例,并非由用户输入的配置信息可包括第二用户设备904的不是用户偏好的一个或多个配置(诸如在第二用户设备904是智能恒温器的情况下由制造商设置的最优温度)。作为另一示例,并非由用户输入的配置信息可包括第二用户设备904基于与多个用户的交互历史学习到的第二用户设备904的一个或多个配置(诸如同样在第二用户设备904是智能恒温器的情况下作为多个用户的偏好温度的均值的温度)。第二用户设备904还可基于与第二用户设备904的用户的交互历史来更新用户偏好信息。

在一实施例中,第二用户设备的配置信息和/或偏好信息可包括第二用户设备的所有配置信息和/或偏好信息。替换地,第二用户设备的配置信息和/或偏好信息可包括安装在第二用户设备上的一个或多个应用的配置信息和/或偏好信息。

在920,第一用户设备902检测本地无线网络。该检测可以是对本地无线网络的初始检测。

在930,设备904可任选地检测到第一用户设备902已加入本地无线网络。替换地,在940,第一用户设备902可任选地请求用户偏好信息和/或设备配置信息。第一用户设备902可以向本地无线网络上的每一设备或者在设备904是控制器IoT设备的情况下向设备904广播该请求。框930和940是可任选的,但其中之一需要被执行以使得流程继续至950。

在950,设备904(具体而言是设备904的偏好/配置模块)基于第一用户设备902和第二用户设备的能力和/或配置信息来确定第一用户设备902类似于第二用户设备。设备904可基于表示第一用户设备902的能力和/或配置信息的值与表示第二用户设备的能力和/或配置信息的值重叠来确定第二用户设备具有与第一用户设备902类似的功能性。

在960,响应于950处的确定,设备904向第一用户设备902发送第二用户设备的设备配置信息和/或用户偏好信息。替换地,在第一用户设备902在940向设备904发送请求的情况下(在设备904是控制器IoT设备的情况下),设备904可以在950确定本地无线网络上的哪些用户设备(例如,第二用户设备)具有与第一用户设备902类似的功能性,并且指令该用户设备在960向第一用户设备902发送设备配置信息和/或用户偏好信息,而不是设备904自己向第一用户设备902发送设备配置信息和/或用户偏好信息。

在970,第一用户设备902从设备904(或替换地从第二用户设备)接收设备配置信息和/或用户偏好信息。

在980,第一用户设备902用从设备904接收到的设备配置信息和/或用户偏好信息的至少子集来更新第一用户设备902的设备配置信息和/或用户偏好信息。第一用户设备902的设备配置信息和/或用户偏好信息可被存储在第一用户设备902处。该更新可以是对第一用户设备902的初始配置。

图10解说了被表示为一系列相互关联的功能模块的示例用户设备装置1000。用户设备装置1000可对应于用户设备(诸如图2A中的IoT设备200A)。用于检测的模块1002至少在一些方面可对应于例如通信设备(诸如收发机206),如本文所讨论的。用于请求的模块1004至少在一些方面可对应于例如通信系统(诸如收发机206),如本文所讨论的。用于接收的模块1006至少在一些方面可对应于例如通信设备(诸如收发机206)或处理系统(诸如与偏好/配置模块216协同的处理器208),如本文所讨论的。用于更新的模块1008至少在一些方面可对应于例如处理系统(诸如与偏好/配置模块216协同的处理器208),如本文所讨论的。

图11解说了被表示为一系列相互关联的功能模块的示例用户设备/控制器设备装置1100。用户设备/控制器设备装置1100可对应于用户设备(诸如图2A中的IoT设备200A或者以上参照图9讨论的第二用户设备)。替换地,用户设备/控制器设备装置1100可对应于控制器IoT设备(诸如图8A-C中的控制器IoT设备802)。参照图11,用于更新的模块1102至少在一些方面可对应于例如与存储设备(诸如存储器212或存储器403)协同的处理系统(诸如处理器208或处理器401),如本文所讨论的。用于检测的模块1104至少在一些方面可对应于例如通信系统(诸如收发机206或网络接入端口404),如本文所讨论的。用于确定的模块1106至少在一些方面可对应于例如处理系统(诸如与偏好/配置模块216协同的处理器208或者与偏好/配置模块416协同的处理器401),如本文所讨论的。用于发送的模块1108至少在一些方面可对应于例如处理系统(诸如与偏好/配置模块216协同的处理器208或者与偏好/配置模块416协同的处理器401)或者通信系统(诸如收发机206或网络接入端口404),如本文所讨论的。

图10-11的模块的功能性可以按与本文中的教导相一致的各种方式来实现。在一些设计中,这些模块的功能性可以被实现为一个或多个电组件。在一些设计中,这些框的功能性可以被实现为包括一个或多个处理器组件的处理系统。在一些设计中,可以使用例如一个或多个集成电路(例如,AISC)的至少一部分来实现这些模块的功能性。如本文中所讨论的,集成电路可包括处理器、软件、其他相关组件、或其某种组合。因此,不同模块的功能性可以例如实现为集成电路的不同子集、软件模块集合的不同子集、或其组合。同样,将领会,(例如,集成电路和/或软件模块集合的)给定子集可以提供一个以上模块的功能性的至少一部分。

另外,图10-11所表示的组件和功能以及本文描述的其他组件和功能可以使用任何合适的装置来实现。此类装置还可至少部分地使用本文所教导的相应结构来实现。例如,以上结合图10-11的“用于……的模块”组件所描述的组件还可对应于类似地命名的“用于功能性的装置”。因而,在一些方面,此类装置中的一个或多个可使用本文所教导的处理器组件、集成电路、或其他合适结构中的一者或多者来实现。

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

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

结合本文中公开的方面描述的各种解说性逻辑块、模块、以及电路可用设计成执行本文中描述的功能的通用处理器、数字信号处理器(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