CN111506356A - 电子消息适配 - Google Patents
电子消息适配 Download PDFInfo
- Publication number
- CN111506356A CN111506356A CN202010029158.7A CN202010029158A CN111506356A CN 111506356 A CN111506356 A CN 111506356A CN 202010029158 A CN202010029158 A CN 202010029158A CN 111506356 A CN111506356 A CN 111506356A
- Authority
- CN
- China
- Prior art keywords
- message
- devices
- computer system
- device capability
- identified
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000006978 adaptation Effects 0.000 title abstract description 4
- 238000000034 method Methods 0.000 claims abstract description 76
- 238000013519 translation Methods 0.000 claims abstract description 48
- 238000004891 communication Methods 0.000 claims abstract description 25
- 238000012545 processing Methods 0.000 claims description 17
- 238000003860 storage Methods 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 description 35
- 230000000694 effects Effects 0.000 description 24
- 230000004044 response Effects 0.000 description 18
- 230000009471 action Effects 0.000 description 13
- 239000012634 fragment Substances 0.000 description 13
- 230000008569 process Effects 0.000 description 11
- 238000007726 management method Methods 0.000 description 6
- 238000009826 distribution Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 239000003999 initiator Substances 0.000 description 3
- 230000002155 anti-virotic effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000002716 delivery method Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000003306 harvesting Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000000844 transformation Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 208000013407 communication difficulty Diseases 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000004146 energy storage Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000001404 mediated effect Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
- G06F9/4451—User profiles; Roaming
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/70—Services for machine-to-machine communication [M2M] or machine type communication [MTC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/06—Message adaptation to terminal or network requirements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/146—Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/303—Terminal profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/18—Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/26—Special purpose or proprietary protocols or architectures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/12—Messaging; Mailboxes; Announcements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及电子消息适配。提供了一种用于操作计算机系统以管理与多个设备的网络通信的技术,该技术包括从注册表检索经识别的设备的一个或多个设备能力简档,注册表将设备能力简档与经识别的多个设备中的每个设备链接并且设备能力简档标识设备的一个或多个能力;在计算机系统中操作消息翻译管理器,以根据多个设备中的每个设备的所链接的设备能力简档来适配消息;以及将消息以适配的形式发送到所述多个设备中的每个经识别的设备。
Description
技术领域
本技术涉及用于操作计算机系统以构建用于经由电子数据处理设备的网络传输的电子消息的方法和装置。
背景技术
在常规系统中,附接到网络的电子设备以及组成此类网络的通信信道已经能够依赖所连接的设备和信道中的一定级别的同质性(homogeneity),这常常是通过安装都在某个中央实体(诸如服务器)的控制下的专用硬件、固件或软件适配器来实现的。
自从互联网和万维网出现的多年来,计算能力的使用已经得到广泛扩展,并且能够存储和处理数据的设备的互连性迅速增加。最近,设备的同质性已受到被称为物联网(I0T)中的联网的或至少可附接网络的设备的普及破坏,在IoT中,各种物体和设备都可以配备一定程度的信息处理能力。可以存在同质性不足的原因是例如设备来自使用专有协议或竞争标准的不同制造商。随着时间的流逝也会出现这种情况,因为在这种技术发展领域中发生的变化非常迅速。
通常,IoT设备经由可以使用各种有线和无线网络实现的通信信道进行连接,常常使用抽象层至少间歇性地互连以支持消息传输和接收,使得发送方和接收方不太需要知道和操纵底层网络和服务提供设备用来提供功能的较低级别的协议。作为使用此类抽象层的示例,云计算是一种用户可以请求由服务提供商以抽象级别执行各种服务的技术,在该抽象级别之下,使用广泛分布的资源和处理器以灵活的方式执行提供服务的操作,从而实现成本和资源效率。
无处不在的计算环境、控制级别的极端抽象和快速可变性的这种复杂组合(现代技术中典型的)是造成数据处理和通信困难的根源。
发明内容
在解决适当地操作计算机系统构建电子消息以便经由电子数据处理设备的网络进行传输和接收时遇到的许多困难的第一种方法中,本技术提供了一种计算机实现的方法,用于操作服务提供者计算机系统以管理与多个设备的网络通信,包括:从注册表中检索经识别的设备的一个或多个设备能力简档,注册表将设备能力简档与经识别的多个设备中的每个设备链接,并且设备能力简档标识设备的一个或多个能力;在服务提供者计算机系统中操作消息翻译管理器,以根据多个设备中每个设备的所链接的设备能力简档来适配消息;以及将消息以适配的形式发送到所述多个设备中的每个经识别的设备。
该方法可以被操作为触发计算机系统根据设备或每个设备的至少一个能力来向至少一个设备发送消息,包括:从设备网络操作者向服务提供者计算机系统发送消息,该消息指示要将一个或多个消息发送到至少一个经识别的设备;使服务提供者计算机系统从注册表中检索标识设备的一个或多个能力的至少一个设备能力简档,该设备能力简档在注册表中与至少一个经识别的设备链接;以及使服务提供者计算机系统操作消息翻译层,以根据设备能力简档来适配消息。
在本技术的另一方面,可以提供一种计算机实现的方法,用于操作计算机系统以根据设备的至少一个能力来构建消息,包括:由计算机系统接收定义设备的一个或多个能力的至少一个设备能力简档;在计算机系统中提供具有更新能力的注册表,该注册表可操作为将设备能力简档与具有在设备能力简档中定义的一个或多个能力的设备的至少一个设备标识符链接;以及在计算机系统中调用消息翻译管理器以根据链接的设备能力简档来构建去往或来自设备的至少一个消息。
该方法还可以包括:响应于从时间T起生效的设备更新,向计算机系统发送更新后的设备简档标识符,以指示服务提供者计算机系统应当更新将设备的至少一个设备标识符与从时间T起生效的至少一个设备能力简档链接的至少一个条目;其中该设备可操作为执行以下至少一项:(i)接收由服务提供者计算机系统中的消息翻译管理器根据被注册为从时间T起生效的所链接的设备能力简档构建的至少一个消息,以及(ii)根据从时间T起生效的链接的设备能力简档向服务提供者计算机系统发送至少一个消息,以便由服务提供者计算机系统中的消息翻译进行构建。
在本技术的附加方面中,提供了一种计算机实现的在多个联网设备中中介消息分发的翻译管理器的操作方法,包括:在与第一联网设备相关联的翻译管理器处接收来自第二联网设备的请求,以便将消息分发到形成联网设备的设备类别的多个设备,该设备类别具有包括至少第三和第四联网设备的成员并且成员具有定义的能力;由翻译管理器将请求翻译成适于由第一联网设备的处理层处理并产生经处理的消息的请求的形式;在翻译层处接收经处理的消息;由翻译层将经处理的消息翻译成适于由具有定义的能力的设备类别的成员接收和处理的消息的形式;以及由第一联网设备分发消息。
操作消息翻译管理器构建消息因此可以包括根据由所链接的设备或类别能力简档确定的格式来适配消息或构造消息,例如,构建下载有效载荷或返回消息。可以根据在注册表中链接到多个设备或类别标识符的设备或类别能力简档来为多个设备或设备类别构建消息。
在硬件方法中,提供了一种电子装置,其包括可操作为实现本技术的方法的逻辑组件。在另一种方法中,可以以计算机程序产品的形式来实现计算机实现的方法。
因此,关于本文的描述,翻译管理器可以基于设备的能力来根据指令构造或重构去往或来自设备的消息。如本文所使用的,术语“能力”被用于表示设备的各种特性,诸如:设备的特征能力或者与设备的硬件或软件布置相关的配置信息。照此,术语“能力”可以被用于指代设备可以执行或处置的特征,还可以指设备的配置的特征,诸如具体数据被存储在何处或如何布置设备以进行操作。这些能力中的一个或多个可以单独或组合地指示如何以适于设备的方式来翻译高级意图或指令。
可影响消息的构造的能力可以包括:
·存储容量,其可以影响设备可以处置的有效载荷或更新有效负载的尺寸,从而触发服务将消息分离成较小消息或重新定义更新清单以指示设备获得多个较小的软件更新有效载荷;
·处理能力,其可以影响指示设备执行处理的方式;
·电力可用性和连续性(例如,在电池驱动或电力收集设备中),其可以影响消息的定时或配置,以优化设备的电力资源;
·连接可用性和连续性(例如,在间歇地连接的移动网络中),其可以影响消息的定时或配置,以优化设备的连接可用性;
·资源定位器寻址和存储配置,其中资源定位器寻址涉及特定资源在设备处所位于的地址(诸如用户资源指示符(URI))(诸如设备处的轻量级M2M(LwM2M)的地址),其可以在设备之间不同,因此消息可以针对不同的设备被不同地翻译,以确保对适当资源的正确访问;
·对接受和读取各种类型的下载清单的算法的支持,其中下载清单定义了进行下载的方式,并且可以依赖不同的算法或处理;
·对用于增量更新的算法的支持(包括修改指令和减少的数据量的更新,而不是完整的数据替换更新),其可以定义向设备指示更新的方式,以确保可以执行设备指示的操作;
·传输格式和协议,诸如对一种或多种不同传输层协议的支持;
·对不同的数据表示、排序和编码的支持;
·响应消息格式和协议;
·对于接收方的动作的响应消息要求;
·对各种一种或多种类型的加密和认证方法和算法的支持;
·对各种一种或多种类型的压缩的支持;
·其它本领域技术人员自然会想到更多示例。
因此,术语“能力”可以被理解为既包括设备的正面能力,又包括与设备相关联的任何约束或限制,以及在设备之间可以不同的配置或布置特性。
这些能力中的至少一些可以包括对轻量级机器对机器(LWM2M)通信的特征支持。因此,能力可以包括设备支持的任何硬件、固件或软件能力。例如,处置任何特定形式的密码表示的能力因设备而异。示例包括设备是支持对称的还是非对称的密钥密码。例如,设备可以支持公钥密码或特定类型的安全证书,或者可能是该设备是否支持借助于特定协议进行的通信或是否(永久或间歇地)连接到特定网络。在公钥密码示例中,当确定设备能够接收并使用对应的公共密钥解密这样的消息时,可以使用私钥将消息打包为密码表示形式。另一方面,如果设备不支持公钥加密,那么可以使用某种其它方法,诸如共享秘密方法,或者可以重新检查消息以确定它是否适合在这种情况下以明文形式发送。
设备限制的一个可能示例是,例如在电力收集IoT设备中缺乏对电源的连续访问。另一个示例是缺乏通信信道上可用带宽的连续性。本领域普通技术人员将立即理解的是,为了实现真正灵活的异构网络,可能需要适应设备的许多其它能力和限制。对于任何给定的设备,可以创建能力简档,由此可以列举该设备的能力。如本领域技术人员将清楚的,与任何常规设备配置数据相比,这种能力简档包括更广泛的数据集,并且将其组装为易于查询的、方便处置的可传输实体提供了广泛的可能的用例。
类似地,配置或布置特性可以影响消息的构造,因此可以形成设备能力简档的一部分。在示例中,配置或布置特性可以包括具体资源(诸如LwM2M资源)在设备处的位置(诸如URI)或可以从中接收数据的特定存储器位置。
附图说明
现在将参考附图仅以示例的方式描述所公开的技术的实现,其中:
图1示出了可以用于实现在此描述的技术的实施例的逻辑、固件或软件组件的布置的框图;
图2示出了根据本技术的实施例的电子消息控制的系统中的操作方法的示例;
图3示出了根据本技术的实施例的电子消息控制的系统中的操作方法的另一个示例;
图4示出了根据本技术的实施例的电子消息控制的系统中的操作方法的其它方面;
图5示出了根据本技术的实施例的电子消息控制的系统中的操作方法的附加方面;
图6示出了根据本技术的实施例的翻译库系统的实现方式;
图7示出了根据本技术的实施例的翻译器单元的实现方式;
图8示出了根据本技术的实施例的设备网络中的消息流的示例;
图9示出了根据本技术的实施例的设备网络中的更新数据流的示例;以及
图10示出了根据本技术的实施例的设备网络中的事件数据流的示例。
具体实施方式
因此,本技术提供了计算机实现的技术和逻辑装置,用于处理要递送到多个设备的消息或从多个设备接收的消息,从而以适于该接收方或网络通路(设备经由该网络通路进行通信)的能力和限制(例如,硬件能力,诸如存储器尺寸和总线带宽)的方式将消息提供给每个接收者,每个设备具有不同的能力和限制。这可以通过提供将设备ID和/或设备类别ID与能力和限制数据链接的具有更新能力的注册表来实现,使得发送者可以使用与设备无关的消息和消息结构,并确保消息将以如下方式被构建或构造:各个设备或设备类别将能够接收和理解它们,并且使得可以正确地解释来自它们的返回消息和对其采取动作。根据本技术的具有更新能力的注册表可以是时间敏感的,使得影响设备或设备类别的能力或限制的更新可以被正确地同步以避免消息丢失。
在图1中,示出了示例性的服务提供者计算机系统100的框图,服务提供者计算机系统100包括可以用于实现在此描述的技术的逻辑组件、固件组件或软件组件,并且可操作为通过电子手段连接到设备118。通常,这种系统的组件将在包括网络的物理实体之间分段和分布,并且这些组件中的一个或多个可以通过如下方式虚拟化:被呈现为好像位于单个物理实体处,而事实上,在网络布置(诸如云)上分段和分布以实现负载平衡、网络优化等。一些组件还可以包括集成系统,诸如片上系统(SoC)设备,其中多个组件集成到单个设备中。还可能的是,一些设备可操作用于多个目的。在一个示例中,在网状网络中,设备可以具有其自己的信息存储和处理功能,但是还可以作为路由器可操作为在网状网络上以逐跳的方式转发消息。类似地,在某些联网的存储控制系统中,还可以选择存储设备控制器作为控制器或仲裁器,用于在环路或网络拓扑中进行设备到设备的通信。
在图1中,服务提供者计算机系统100可操作为通过电子手段耦合到设备118,该电子手段可以包括例如有线或无线连接(诸如无线局域网)或混合有线/无线网络(诸如互联网)。服务提供者计算机系统100配备有I/O信道101、101′,用于与其它实体进行通信;如图1中所示,I/O信道101′可以用于与设备118处的通信组件120(其可以包括常规的收发器组件)进行通信。I/O信道101、101′可以使用任何类型和组合的电子通信手段进行通信,并且可以根据所描述的设备能力来控制所使用的通信手段。
服务提供者计算机系统100包括具有更新能力的注册表102,注册表102可操作为存储具有相应设备ID 108和/或设备类别ID 109的设备能力简档106的一个或多个实例。设备ID 108和设备类别ID 109在附接的或可附接的设备118中具有其对应项(设备ID 108′和设备类别ID 109′),在通信活动期间,设备118可操作为结合其通信组件使用它们以识别其自身及其类别。例如,新设备附接到网络。它使用存储访问器来访问包含设备信息的存储装置并向服务提供者计算机系统100报告其设备ID 108′(以及可选地,其设备类别ID 109′)以及其它特性,包括其能力和限制,服务提供者计算机系统100在具有更新功能的注册表102中创建将设备能力简档106链接到设备ID 108(以及可选地,设备类别ID 109)的注册表条目。
可以通过I/O信道101将设备能力简档106接收到具有更新能力的注册表102中,并且可以由更新器104控制对设备能力简档的更新。在一些实施例中,时间控制器110可以操作为控制对具有更新能力的注册表102的内容的更新的有效时间段,使得更新可以在指定的时刻生效,而在此时刻之前,具有更新能力的注册表102中的先前条目保持有效。可以以这种方式提供一种机制,以允许服务提供者计算机系统100和设备118处的改变的同步。例如,如果因为要启用设备中迄今为止未启用的功能而要改变设备的功能或限制,那么有必要确保要由那个设备接收的消息仅在启用新功能的动作已完成操作之后才开始使用那个功能。
服务提供者计算机系统100还包括翻译管理器112,翻译管理器112可操作为根据已知的关于设备118的能力和限制以及可能还有通信信道的能力和限制的信息来翻译、适配或构建消息,消息借助于通信信道被传送到设备118和从设备118传送。“构建”一词在这里被用于指示布置消息有效负载和任何附加控制的动作——这可以构成要转发的消息的翻译,或者它可以构成根据与触发指令消息一起接收的参数、利用从存储库中保存的信息元素(“片段(snippet)”)构造消息。例如,触发指令消息可以指示翻译管理器用包括错误代码、错误解释和错误恢复提示的一组片段(存储在片段表117中)构造错误消息。在这种情况下,向设备118发送或由设备118接收的不是触发指令消息本身,而仅是用指定的片段构造的消息。为此,翻译管理器112配备有构造器/解构器116和片段表117。
在一个实现方式中,对消息的“活动(campaign)”进行计划,这意味着一个或多个消息旨在使用一定级别的自动化广播到多个设备,例如,主张应用采取所需要的修复的一系列消息旨在被发送到特定类别设备的所有用户。在这种情况下,可以将消息的活动设置为不时地被触发,而不是每次从头开始编写消息,并且可以用预先准备的“片段”即时构造消息。如本领域技术人员将清楚的,这样的活动消息可以旨在广播给网络或网络的子网中的所有设备,或者它们可以以具体的设备或设备类别为目标。
在其它情况下,翻译管理器112可操作为使用适配器114来适配必需的消息以适应设备118的能力和限制。由适配器114提供的适配可以包括例如用于传输和响应消息这两种消息的协议转换、分组改变、通信调度和定时操纵以及类似变换。本领域普通技术人员将立即清楚地的是,本技术将启用许多其它类型的变换或构造。在一个示例实现方式中,通过使用一个或多个包括可调用的翻译器脚本的库来实现翻译,其中可调用的翻译器脚本可操作为根据设备能力简档来翻译消息和事件通知(诸如响应)。在一个可能的实现方式中,最小设备能力简档可以被用于先前没有注册的简档的设备。
现在转向图2,示出了根据本技术一个方面的电子消息控制的一个方法200,其可在例如图1所示的服务提供者计算机系统100中操作。在图2中,该方法开始于“开始”202,并且在204处,通常由服务提供者计算机系统100的组件来接收设备能力简档。在206处,将至少一个设备ID链接到设备能力简档,并且将所得到的至少一个设备ID-设备能力简档对存储在例如图1中所示的具有更新能力的注册表102中。在208处,在服务提供者计算机系统100处接收消息或消息指令。在210处,通过设备ID来识别接收者/发送者设备,在212处,根据由有关设备ID索引的设备能力简档来构建消息,并且该处理在“结束”214处完成。
图3示出了根据本技术一个方面的电子消息控制的另一个方法300,其可在例如图1所示的服务提供者计算机系统100中操作。在图3中,该方法开始于“开始”302,并且在304处,通常由服务提供者计算机系统100的组件来接收设备类别能力简档。设备类别能力简档可以指定例如与一类设备相关联的最小能力集合,或者它可以提供与一类设备相关联的能力和限制的详尽名录。在306处,提供注册表以将至少一个设备类别ID链接到设备类别能力简档,并且将所得到的至少一个设备类别ID-设备类别能力简档对存储在例如图1所示的具有更新能力的注册表102中。在308处,在服务提供者计算机系统100处接收消息或消息指令。在310处,通过设备类别ID来识别接收器/发送者设备的类别,在312处,根据由有关设备类别ID索引的设备类别能力简档来构建消息,并且该处理在“结束”314处完成。
随着物联网(IoT)的发展,传统不被配备为存储和处理数据的设备正变得被如此配备。一个示例是家用冰箱,为其提供了识别与易腐食品相关联的编码数据、将数据存储在设备存储装置中、随后通过到智能电话的网络警告用户食品的即将“到期”日期的能力。日常用品的其它示例可以包括联网电话、可穿戴健身追踪器和导航设备。商业世界中的示例包括可跟踪的运输途中的货物监视器、联网的制造机器、附接到能源分配渠道的传感器、车载管理系统等。用于将设备联网的这种扩展能力带来了优势,但是同时,连接或可连接的设备以及可能通过其连接的通信手段在其功能和限制方面可以非常不同。如以上简要提到的,这种可变性可以出于多种原因而产生。这些可以包括网络堆栈的各个层的协议的差异,不同制造商采用的不同标准等。在此相对较新的技术领域中发生的快速变化加剧了这一困难,这意味着设备和网络的能力及其限制可能随着时间而改变。
在一个实现方式中,用户将消息上传到云消息服务,意图是使消息分发到网络中的设备集合的某个子集。云消息服务然后将消息递送到每个预期的终端设备。但是,实际上,终端设备及其通信信道可能具有不同的能力和限制。例如,一些终端设备可能具有降低的硬件能力,诸如更少的存储器、更低的处理能力、更少的电池寿命、有限的连接到网络的时间窗口或不同的通信协议连接。
除了硬件和固件能力和限制外,还可能存在软件能力和限制,诸如支持或不支持增量更新或反复发生的神经网络更新。出于多种原因,以相同的递送方式向每个设备递送相同的消息可以导致消息失败问题。例如,一些设备可能没有足够的存储器来立即存储整个消息有效载荷,或者下载并立即安装包含固件或软件的更新的有效载荷会造成处理能力受到限制的设备出现性能问题。另外,由设备发送回的响应消息会遇到类似的不兼容问题,从而一些确认和返回代码消息可能是无法使用的。这种类型的响应消息的一些示例包括操作成功或失败指示符、下载进度指示符以及有关广播消息的覆盖范围的指示符。
在本技术的一个实现方式中,消息服务例如在能力数据库中维护关于由它提供服务的每个设备的能力的数据。这种知识可以是每个个体设备的相关能力或限制的集合的形式,或者是每个设备到若干不同设备类别(例如,具有较少存储器的设备、仅蓝牙的设备,当前运行特定软件版本的设备)的特征化的形式。然后,云消息服务接收消息有效载荷或指令以发送来自客户的消息、基于所存储的个体设备或设备类别的能力来将消息处理(或基于触发指令消息中接收到的参数,用存储的片段构造消息)为适于终端设备的形式,并以适于每个设备的方式将经处理的消息递送到该设备。重要的是,消息有效载荷本身不改变,但是有效载荷的递送方法被改变为适合该设备。
在图4中示出了根据本技术的电子消息控制的系统中的操作方法400的其它方面。在图4中,该方法开始于“开始”402处,并且在404处,计算机系统(诸如服务提供者计算机系统100)的组件接收设备或类别能力简档更新。如本领域普通技术人员将清楚的,当设备被部署在现场并长时间放置时,这种更新的接收通常有规律地发生——计算环境的改变(例如对服务提供者系统、其它通信设备、网络基础设施等的改进)在快速发展的技术世界中是不可避免的,因此必须适应这种改变。然后,在406处,通过将有关设备或类别ID链接到更新后的设备或类别能力简档来更新注册表以反映该改变。当在408处接收到消息或消息指令时,在410处通过设备或类别ID来识别一个或多个相关的发送者或接收者设备。为了确保可以实现消息的适当构建,电子消息控制的系统的至少一个组件必须根据要发送或接收的消息的时间来确定更新后的能力是否有效。实际上,在有关功能已被部署到设备或设备类别之前,根据更新后的简档构建消息是没用的,并且在更新生效之后继续发送后级消息也是不明智的。在412处,检查更新的有效时间,并且在414处,根据用于设备或类别的适当简档、根据更新的有效时间来构建消息。该方法在“结束”416处终止。
在一个场景中,描绘了基于云的网络,该网络具有附接(或可能间歇地附接)到它的许多不同设备,诸如IoT设备。随着设备和网络随时间的不断演化,例如,底层控制代码(例如,机器代码、固件和操作系统软件)要求更新。代码有效载荷需要被接收、存储、可能被扫描以检测和防止恶意活动、可能被编译、链接-编辑或以其它方式被变换并以可执行形式安装。这些更新操作在例如设备或网络可能停止服务的实际时间、处理器使用时间、网络带宽消耗、能耗和存储装置占用空间方面均具有实现成本。
在这种场景的一个实例中,用户将固件更新上传到云更新服务,意图是将更新分发到网络中的设备。云更新服务然后将更新递送到每个终端设备。但是,在实践当中,终端设备及其通信信道可能具有不同的能力和限制。以相同的递送方式向每个设备递送相同的更新有效载荷会导致更新问题。例如,一些设备可能没有足够的存储器来存储整个有效载荷,或者更新的下载和安装会在处理能力受限的设备中造成性能问题。在本技术的一个实现方式中,云更新服务维护有关每个设备的能力的数据,如上所述。然后,云更新服务从客户接收软件更新、基于所存储的各个设备或设备类别的能力将更新映像(update image)处理为适合终端设备的形式,并以适于每个设备的方式将经处理的固件递送到该设备。重要的是,有效载荷本身不改变,但是有效载荷的递送方法被改变为适合那个设备。这可以通过许多不同方式来完成,例如:
·将固件映像分成多个较小的部分,这些部分可以分别存储在具有较小存储器容量的设备的存储器中;
·将固件映像分成多个较小的部分,对于电池寿命有限、电力输送受限或云访问受限的设备,这些部分可以在几天内提供;
·在预定的有限时间的访问窗口(例如,每天的预定时间)内安排软件的递送时间;或
·格式化固件更新以通过适当的通信协议进行递送。
在另一个实现方式中,要发送的消息可以是“活动”消息,即,旨在有可能作为一系列相关消息的一部分在网络中的设备之间广泛分发的消息,以实现指定的目的。例如,可能需要发送一系列紧急程度增加的消息,以告知一类设备的用户他们必须采取行动。此类消息可以是相当公式化的,并且可以容易地用所存储的元素或可随意组装成完整消息的“片段”构造。对于活动消息,例如,防病毒程序的劝告更新,这些片段可以包括固定元素和可变元素,可变元素取决于活动的进度。因此,例如,活动的第一个消息可以包括固定片段“更新您的防病毒程序”和指示紧急程度的可变片段:“供参考”、“紧急”和“警告”。随着活动的发展,可变片段中的紧急级别逐渐增加。在每种情况下,消息的发起者都将触发消息发送到消息控制系统,并且消息控制系统根据与触发消息一起发送的参数用所存储的片段中组装消息。因此,消息控制系统可操作为接受消息片段并存储它们以准备好在接收到触发消息后将它们组装成完整的消息。如本领域普通技术人员将立即清楚的,以上示例是相当琐碎的,并且实际上,片段的更复杂的组装将是更典型的。
因此,转向图5,示出了根据本技术的电子消息控制的系统中的操作方法500的其它方面。在“开始”502之后,在504处,由计算机系统(诸如图1的服务提供者计算机系统100)的组件接收设备或类别能力简档,并且在506处,提供注册表(诸如图1的具有更新能力的注册表102),以将设备或类别ID链接到设备或类别能力简档。在508处,提供片段表,并在从消息发起者接收到触发消息时用固定和可变片段来填充,以便构造消息。固定片段可以以完整或压缩的格式存储,这取决于底层系统的存储能力。可变片段可以包括例如如上所述的可选列表项,或者可以包括用于生成消息部分的手段,例如可解析的宏指令等。在510处,从发起者接收触发消息指示。触发消息可以包括用于控制输出消息的构建的参数,例如,它可以包含指示从消息片段的列表中进行选择的参数,或者它可以包含用于控制所存储的宏指令扩展的分辨率的参数。在512处,通过其设备或类别ID来识别有关的接收者或发送者设备,并且在514处,根据设备或设备类别的有关能力简档,用片段构建响应于触发消息而要发送的消息。该处理在516处完成。
转到图6,示出了根据本技术实施例的翻译库系统600的实现方式的框图。库602可用于从计算系统内的其它实体调用,并且输入参数采取至少输入610和简档编号612或类似标识的形式。简档编号612指向如上所述的设备能力简档,并且可以与个体设备或设备类别相关联。N宽度解复用器N-demux 604接受并解复用输入参数,并基于简档编号612从一系列翻译器单元T1-TN中选择翻译器单元608,以执行输入610的翻译。N宽度多路复用器N-mux606然后对输出614进行多路复用。
现在在图7中更详细地表示翻译器单元608。现在在图7中示出了翻译器单元702,其可根据诸如Execute<capability>、Translate<event>和Get resource representation之类的输入来操作。翻译器单元包括与能力704和资源706相关的数据。响应于Execute<capability>输入,翻译器单元702调用能力704,并将相关联的过程的结果传递给输出708。Execute<capability>输入的示例可以被表示为MyProfile.update_manifest_version(device)的程序调用,该程序调用将作为提供适于设备的能力的固件更新的理的一部分调用翻译库的MyProfile过程,以定位适于由device参数所指定的设备的能力的更新清单版本,并将结果提供给输出708。
响应于Translate<event>输入,翻译器单元702使用事件代码调用资源706,以将所选择的资源事件或每个所选择的资源事件构建成消息,以传递到输出708。Translate<event>输入的示例可以被表示为MyProfile.update_result_events(42)的程序调用,该程序调用将作为处置来自设备的入站事件(诸如错误响应)的处理的一部分调用翻译库的MyProfile过程,以定位由发送设备提供的事件代码42,并根据消费设备或组件的能力以适于后续翻译的通用形式将结果提供给输出708。
响应于Get resource representation输入,翻译器单元702从资源706中选择所请求的表示,并将其传递给输出708。Get resource representation输入的示例可以被表示为MyProfile.update_state的程序调用,该程序调用将调用翻译库的MyProfile过程,以定位表示更新状态的资源并将结果提供给输出708。
现在将示出实现方式的一个示例,该示例以JavaScript对象表示法(JSON)表示,并添加省略号(…)以示出省略,其中用户或发起者希望检索关于设备的更新状态的数据。
JSON示例的第一部分包含一些预期在设备上的轻量级机器对机器(LWM2M)资源的定义;其中一个具有“events”键,该键将“trigger_value”(那个资源中的存储值)的实例映射到其对服务(或服务用户)的含义。“variables”是存储在服务中的、与事件有关的字段。
这些JSON简档可以变换成可使用的形式,以创建具有公共接口的翻译器单元(每个简档一个)的库。在这个示例中,参考简档2。
程序或脚本可能包含用于访问库的“device.api”,以检索表示服务中的设备的“device”变量。在本示例中,可以存储两个简档:简档1和简档2。公共接口是编程“对象”,具有访问每个LWM2M资源的表示的属性。因此,例如,程序或脚本可以执行“device.api.update_state”以访问“Update State”资源,无论它恰好位于设备本身上什么地方,并且“Update Sate”资源的位置可以是在具有简档1的设备与具有简档2的设备中有所不同。
图8示出了根据本技术的实施例的设备网络中的消息流的示例。图8的设备网络包括“管理器”,其可以是根据本技术的实施例的需要由翻译器服务进行中介的预期动作的任何发起者。在图8所示的示例中,“管理器”可以是作为对网络中或可附接到网络的各种设备的活动的一部分被分发的更新(例如,固件更新)的提供者。网络可以还包括“活动”服务,该“活动”服务代表管理器采取动作以使用“简档”通过“库”层来控制活动消息的翻译,并将翻译后的消息转发到设备(在此通过最右边的被标记为“设备”的列例示)。设备可通过“连接性”层与“设备目录”进行电子通信。仅为了便于描述,将消息流划分为由水平分隔线分开的三个阶段。为了便于解释,将阶段标识为I、II和III,但是在阶段II和III之间没有暗示任何顺序。
当在步骤1处“设备”层中的设备将其识别数据发送到“连接性”层以在步骤2处继续发送到“设备目录”时,图8的消息流从阶段I开始。识别数据可以包括设备ID,并且在一些实施例中,可以包括另外的数据,诸如指定设备类别或固件版本的数据。在步骤3处,“设备目录”层在设备标识符和能力简档之间创建链接,并存储数据和链接以供翻译处理期间使用。在实施例中,“设备目录”层可以例如响应于发现动作而从由设备发送的数据中导出设备能力简档,或者它可以从位于其它地方的数据中导出设备能力简档——在一个示例中,设备能力数据可以从存储在设备制造商或分销商处或由设备制造商或分销商提供的设备数据的数据库中获取。
当“管理器”在步骤4处向“活动”服务发送管理动作时,阶段II开始,其中管理动作可以采取不针对任何特定设备能力类别的通用形式语言的“意图声明”形式。例如,管理动作可以在“管理器”不了解设备上安装的固件版本级别的情况下指定要分发的固件更新的集合。因此,对于一些设备,对设备的更新版本级别的详细了解将指示:对于一些设备,仅需要“意图声明”中的一些更新,而对于其它设备,则需要完整的更新集合。响应于步骤4的管理动作,“活动”服务在步骤5处从“设备目录”中获取每个设备(或每个设备类别)的版本信息,并在步骤6处调用“库”以根据所选择的版本执行翻译。在步骤7处,“库”从简档中检索与所选择的版本的设备能力对应的翻译图,并且在步骤8处,根据检索到的翻译图来执行翻译。如果“库”的处理中出现错误,那么步骤9和10经由“活动”服务将错误返回给“管理器”;否则,在步骤11处,将翻译从“库”返回到“活动”服务。在步骤12和13处,将翻译发送到接收设备。以这种方式,可以将出站消息、更新活动等翻译成适于每个目标设备的能力的形式。
在阶段III中,示出了本技术如何处置入站事件(诸如反馈)、返回/响应代码(诸如错误代码)等。当设备在步骤14处发送反馈消息时,阶段III开始。“连接性”层在步骤15处将反馈消息解释为要求它将消息有效载荷传递到“设备目录”层的消息,然后,“设备目录”在步骤16处导出适于原始设备的版本数据,并在步骤17处调用“库”以进行翻译。“库”接收消息有效载荷和版本数据,并在步骤18处从“简档”层获取适当的翻译图。在步骤19处,“库”根据翻译图来执行翻译过程,并且要么在步骤20处将错误返回到“设备目录”层,要么在步骤21处将翻译发送到“设备目录”层。然后,“设备目录”层在步骤22处执行由反馈消息的翻译而触发的任何必需的工作流动作。
在图9中呈现了根据本技术实施例的设备网络中的固件更新活动数据流900的实施例的示例。(如前面所描述的,固件更新活动以不指定接收设备级别的更新数据的细节的“意图声明”发起。)设备目录902将设备数据906提供给活动服务910,而固件名录904将有效载荷908提供给活动服务910。活动服务构造活动数据,该活动数据被排队912以供固件更新工作器914处理,固件更新工作器914通过库916调用翻译以产生根据接收方设备924的能力简档适当地构建的固件更新920。固件更新920然后被传递到通信服务922并且被传输到设备924。如图所示,设备924包括具有设备能力简档1和2的设备,并且本技术的当前实现方式针对提供已被翻译为匹配设备924中的每个设备的适当能力的固件更新。
图10示出了根据本技术实施例的设备网络中的事件数据流的示例。事件数据流遵循来自网络中的设备的反向路径,并且事件可以表示任何形式的反馈,例如,指示图8的阶段II和图9的数据流中所例示的类型的固件更新的成功或失败的响应。在异构设备的任何网络中,设备的能力可以包括其响应“非正规(out-of-line)”情况(诸如数据接收失败、更新失败等)的能力。因此,需要在管理系统(诸如固件分发器)级别上提供从具有变化的反馈能力的设备接收的响应的变化。在图10的事件数据流1000中,设备1002包括具有简档1和2的设备。在这个示例中,来自具有这些不同简档的设备的反馈响应可以有所不同,因此,如果分发网络的其它组件要对它们做出响应,那么需要正确地解释它们。设备1002各自根据其能力简档生成事件1004,并且事件1004流向通信服务1006。根据始发设备的能力简档,事件与标识符相关联,并且经识别的事件流向一个或多个设备事件工作器组件1010。设备事件工作器1010调用库1012的服务,传递经识别的事件1008,然后库1012根据为经识别的事件1008指定的设备能力简档执行翻译。库1012将结果转换提供给设备事件工作器1010,设备事件工作器1010将从针对其指定的设备能力简档导出的设备状态1014传送到设备目录1016。因此,设备目录1016可操作为对接收到的设备状态1014采取动作,例如根据来自设备1002的反馈对其存储的设备数据进行修改。设备事件工作器1010还可操作为将从翻译导出的活动状态1018传送到活动服务1020。在实现方式中,活动服务1020可操作为根据来自设备1002的反馈来修改固件更新。
以这种方式,固件更新活动服务可以使用在此公开的技术来控制对异构设备网络中的固件的更新,在异构设备网络中,设备可以安装有不同级别的固件。本领域的普通技术人员将清楚的是,本技术不限于固件更新,而是可以在各种替代用例中等同地应用于各种电子内容的分发。因此,本技术的基于库的翻译服务提供了可以在设备的电子网络的软件-固件-硬件栈中的各个级别上应用于广泛的分发场景类别。
如本领域技术人员将认识到的,本技术可以被实施为系统、方法或计算机程序产品。因而,本技术可以采取完全硬件实施例、完全软件实施例或组合软件和硬件的实施例的形式。在使用词“组件”的情况下,本领域的普通技术人员将理解,它是指任何上述实施例的任何部分。
此外,本技术可以采取在计算机可读介质中实施的计算机程序产品的形式,该计算机可读介质具有在其上实施的计算机可读程序代码。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读介质可以是例如但不限于电子、磁、光学、电磁、红外或半导体系统、装置或设备,或前述的任意合适组合。
用于执行本技术的操作的计算机程序代码可以以一种或多种编程语言的任意组合来编写,包括面向对象的编程语言和常规的过程编程语言。
例如,用于执行本技术的操作的程序代码可以包括诸如C之类的常规编程语言(解释或编译)的源代码、目标代码或可执行代码、或汇编代码、用于设置或控制ASIC(专用集成电路)或FPGA(现场可编程门阵列)的代码、或诸如VerilogTM或VHDL(超高速集成电路硬件描述语言)之类的硬件描述语言的代码。
程序代码可以完全在用户计算机上执行、部分在用户计算机上执行且部分在远程计算机上执行,或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络连接到用户的计算机。代码组件可以被实施为过程、方法等,并且可以包括子组件,这些子组件可以采用任何抽象级别的指令或指令序列的形式,从本机指令集的直接机器指令到高级编译或解释语言结构。
本领域技术人员还将清楚的是,根据本技术实施例的逻辑方法的全部或一部分可以适当地在包括执行该方法的步骤的逻辑元件的逻辑装置中实施,并且这种逻辑元件可以包括例如可编程逻辑阵列或专用集成电路中的诸如逻辑门之类的组件。这种逻辑布置还可以在使能元件中实施,以使用例如虚拟硬件描述符语言在这种阵列或电路中临时或永久地建立逻辑结构,所述虚拟硬件描述符语言可以使用固定或可传输的载体介质来存储和传输。
在一个替代方案中,本技术的实施例可以以计算机实现的部署服务的方法的形式来实现,该方法包括部署计算机程序代码的步骤,该计算机程序代码可操作为在部署到计算机基础设施或网络中并在其上执行时使计算机系统或网络执行该方法的所有步骤。
例如,服务提供者可以在网络中的监督或补充级别上操作,并且可以向所有的或选择的用户提供服务,以部署在网络的各个层中实现本技术的至少一部分的服务器或客户端代码,由此帮助用户受益于本技术实现的操作效率。根据这个实现方式的服务可以包括例如云计算服务、网状网络、网格等。用户可以进而提供下游服务以部署至少有选择地在例如网络的子网中的下层级别实现本技术的至少部分的服务器或客户端代码。
在另一个替代方案中,本技术的实施例可以以其上具有功能数据的数据载体的形式来实现,其中功能数据包括功能计算机数据结构,当其被加载到计算机系统或网络中并由此对其进行操作时,使计算机系统能够执行该方法的所有步骤。
本领域技术人员将清楚的是,在不脱离本技术范围的情况下,可以对前述示例性实施例进行许多改进和修改。
Claims (15)
1.一种计算机实现的方法,用于操作计算机系统管理与多个电子设备的网络通信,该方法包括:
从注册表中检索经识别的设备的一个或多个设备能力简档,所述注册表将设备能力简档与所述多个电子设备中的所述经识别的设备中的每个设备链接,并且设备能力简档标识设备的一个或多个能力;
在所述服务提供者计算机系统中调用消息翻译管理器,以根据所述多个设备中的每个设备的所链接的设备能力简档来适配发送消息的指令;以及
将所述消息以适配的形式发送到所述多个设备中的每个经识别的设备。
2.如权利要求1所述的方法,还包括由所述计算机系统从设备管理实体接收将至少一个消息发送到所述多个设备中的经识别的设备的指令。
3.如权利要求1或权利要求2所述的方法,所述适配包括在维持消息有效载荷不变的同时适配消息结构。
4.如任何前述权利要求所述的方法,所述适配包括重新打包所述消息。
5.如任何前述权利要求所述的方法,所述适配包括适配所述消息的传输定时。
6.如任一前述权利要求所述的方法,所述适配包括用第二固件映像代替第一固件映像。
7.如任何前述权利要求所述的方法,所述适配包括用第二清单代替第一清单。
8.如任何前述权利要求所述的方法,所述适配包括用第二资源定位符代替第一资源定位符。
9.如任何前述权利要求所述的方法,所述适配包括适配所述消息的密码表示。
10.一种计算机实现的方法,用于触发计算机系统根据设备或每个设备的至少一个能力来向至少一个电子设备发送消息,该方法包括:
从设备网络操作者向所述计算机系统传输发送指示一个或多个消息要被发送到至少一个经识别的设备的消息的指令;
使所述计算机系统从注册表中检索标识设备的一个或多个能力的至少一个设备能力简档,该设备能力简档在注册表中与所述至少一个经识别的设备链接;以及
使所述计算机系统操作消息翻译层,以根据所述设备能力简档来适配所述一个或多个消息。
11.如权利要求10所述的计算机实现的方法,还包括:
从所述设备网络拥有者向所述计算机系统传递相对于发送所述消息的时间T定义的消息时间M;并且其中
所述使所述计算机系统从注册表中检索链接设备能力简档的至少一个条目的步骤包括使得检索出如下条目,该条目将在时间T时、之前和之后当中至少之一有效的设备能力简档与所述设备类别指示符链接;
所述选择所述设备能力简档包括选择在消息时间M对所述设备类别指示符有效的所述设备能力简档;以及
所述使所述计算机系统调用消息翻译层以根据所述设备能力简档来适配所述消息包括根据在消息时间M对于所述设备类别指示符有效的所述设备能力简档来适配所述消息。
12.如任何前述权利要求所述的计算机实现的方法,所述指令包括将所述消息发送到具有不同能力简档的至少两个设备的指令。
13.一种计算机系统中的电子装置,所述计算机系统可操作为管理与多个电子设备的网络通信,所述电子装置包括:
存储访问器,可操作为从注册表中检索经识别的设备的一个或多个设备能力简档,所述注册表将设备能力简档与所述多个电子设备中的所述经识别的设备中的每个设备链接,并且设备能力简档标识设备的一个或多个能力;
消息翻译管理器,可操作为根据所述多个设备中的每个设备的所述链接的设备能力简档来适配发送消息的指令;以及
收发器,可操作为将适配形式的所述消息发送到所述多个设备中的每个经识别的设备。
14.一种电子装置,可操作为触发计算机系统根据设备或每个设备的至少一个能力向至少一个设备发送消息,该电子装置包括:
发送器,可操作为从设备网络操作者向所述计算机系统传输指示一个或多个消息要被发送到至少一个经识别的设备的指令;
存储访问器,响应于所述指令消息以使所述计算机系统从注册表中检索标识设备的一个或多个能力的至少一个设备能力简档,该设备能力简档在注册表中与所述至少一个经识别的设备链接;以及
消息翻译层,响应于所述一个或多个消息并且可操作以根据所述设备能力简档来适配所述一个或多个消息。
15.一种计算机程序代码,当被加载到计算机中并在该计算机上执行时可操作为使所述计算机操作处理和存储逻辑执行如权利要求1至12中的任一项所述的方法的步骤。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1900413.4 | 2019-01-11 | ||
GB1900413.4A GB2580420B (en) | 2019-01-11 | 2019-01-11 | Electronic message adaptation |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111506356A true CN111506356A (zh) | 2020-08-07 |
Family
ID=65527964
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010029158.7A Pending CN111506356A (zh) | 2019-01-11 | 2020-01-10 | 电子消息适配 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11245567B2 (zh) |
KR (1) | KR20200087673A (zh) |
CN (1) | CN111506356A (zh) |
GB (1) | GB2580420B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2580421B (en) | 2019-01-11 | 2021-09-15 | Arm Ip Ltd | Electronic message translation management |
US11895078B2 (en) * | 2021-11-18 | 2024-02-06 | Eagle Technology, Llc | System for communicating among end-user devices having different message channel formats and associated methods |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080212699A1 (en) * | 2006-11-17 | 2008-09-04 | Canon Kabushiki Kaisha | Communication control apparatus and control method thereof, communication apparatus and control method thereof, wireless communication system, program, and storage medium |
US20090191902A1 (en) * | 2008-01-25 | 2009-07-30 | John Osborne | Text Scripting |
WO2015024349A1 (zh) * | 2013-08-22 | 2015-02-26 | 中国科学院计算机网络信息中心 | 一种基于物联网标识服务的异构智能家电互通控制方法 |
US20170171143A1 (en) * | 2015-12-14 | 2017-06-15 | International Business Machines Corporation | Method and apparatus for unified message adaptation |
US20180035479A1 (en) * | 2016-07-27 | 2018-02-01 | Hon Hai Precision Industry Co., Ltd. | Interconnecting device and iot system using the same |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100442256B1 (ko) * | 2002-02-28 | 2004-07-30 | 엘지전자 주식회사 | 홈 네트워크 시스템의 규격 호환장치 및 방법 |
US20040215694A1 (en) * | 2003-03-26 | 2004-10-28 | Leon Podolsky | Automated system and method for integrating and controlling home and office subsystems |
US8745228B2 (en) | 2007-11-26 | 2014-06-03 | Adobe Systems Incorporated | Matching device capabilities and content characteristics |
US8560713B2 (en) * | 2008-07-31 | 2013-10-15 | Sap Ag | Method and system for mediating enterprise service access for smart devices |
FR2952463B1 (fr) * | 2009-11-06 | 2012-12-21 | Somfy Sas | Communication d'ordres dans un reseau domotique et entre reseaux domotiques. |
CN102104883B (zh) | 2009-12-22 | 2014-03-12 | 中兴通讯股份有限公司 | 一种m2m平台定义消息的方法、系统和m2m平台 |
CN102244666A (zh) * | 2010-05-10 | 2011-11-16 | 中兴通讯股份有限公司 | M2m平台处理报文的方法和m2m平台系统 |
CN102202093B (zh) * | 2011-05-12 | 2016-01-20 | 南京中兴新软件有限责任公司 | 一种实现传感器适配的方法和系统 |
EP2608496B1 (en) * | 2011-12-19 | 2015-06-17 | GN Netcom A/S | Firmware upgrade function for deskphone electronic protocol converter |
US9307509B1 (en) | 2013-05-16 | 2016-04-05 | Google Inc. | Transmitting radio signals using simultaneous retransmission |
WO2015160953A2 (en) | 2014-04-16 | 2015-10-22 | Pixia Corp. | Method and system of transmitting data over a network using a communication protocol |
US9628855B2 (en) | 2014-10-08 | 2017-04-18 | Lattice Semiconductor Corporation | Secure internal control for encrypting video data |
CA3199536A1 (en) * | 2015-04-14 | 2016-10-20 | Capital One Services, Llc | Systems and methods for secure firmware validation |
US11863509B2 (en) | 2015-12-18 | 2024-01-02 | Amazon Technologies, Inc. | Publish-subscribe message transformation |
US9917903B2 (en) | 2015-12-28 | 2018-03-13 | Verizon Patent And Licensing Inc. | Internet of things provisioning |
CN108463974A (zh) * | 2016-01-11 | 2018-08-28 | 开利公司 | 用于远程装置控制的通信系统中的改进 |
US9894159B2 (en) | 2016-06-13 | 2018-02-13 | Verizon Patent And Licensing Inc. | Generating consumer internet-of-things data products |
US10305773B2 (en) | 2017-02-15 | 2019-05-28 | Dell Products, L.P. | Device identity augmentation |
CN109286542A (zh) | 2017-07-21 | 2019-01-29 | 西安中兴新软件有限责任公司 | 一种基于nb-iot的无线设备群组接入方法及终端 |
CN109756450B (zh) | 2017-11-03 | 2021-06-15 | 华为技术有限公司 | 一种物联网通信的方法、装置、系统和存储介质 |
US10581690B2 (en) * | 2018-03-15 | 2020-03-03 | Cisco Technology, Inc. | Update specific policies for internet of things devices |
CN108833219B (zh) * | 2018-05-02 | 2021-08-10 | 深圳市彬讯科技有限公司 | 智能家居系统、智能网关及其控制方法 |
GB2580421B (en) | 2019-01-11 | 2021-09-15 | Arm Ip Ltd | Electronic message translation management |
GB2580419B (en) | 2019-01-11 | 2021-07-07 | Arm Ip Ltd | Electronic message control |
-
2019
- 2019-01-11 GB GB1900413.4A patent/GB2580420B/en not_active Expired - Fee Related
- 2019-12-18 KR KR1020190169399A patent/KR20200087673A/ko unknown
-
2020
- 2020-01-07 US US16/736,333 patent/US11245567B2/en active Active
- 2020-01-10 CN CN202010029158.7A patent/CN111506356A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080212699A1 (en) * | 2006-11-17 | 2008-09-04 | Canon Kabushiki Kaisha | Communication control apparatus and control method thereof, communication apparatus and control method thereof, wireless communication system, program, and storage medium |
US20090191902A1 (en) * | 2008-01-25 | 2009-07-30 | John Osborne | Text Scripting |
WO2015024349A1 (zh) * | 2013-08-22 | 2015-02-26 | 中国科学院计算机网络信息中心 | 一种基于物联网标识服务的异构智能家电互通控制方法 |
US20170171143A1 (en) * | 2015-12-14 | 2017-06-15 | International Business Machines Corporation | Method and apparatus for unified message adaptation |
US20180035479A1 (en) * | 2016-07-27 | 2018-02-01 | Hon Hai Precision Industry Co., Ltd. | Interconnecting device and iot system using the same |
Also Published As
Publication number | Publication date |
---|---|
US11245567B2 (en) | 2022-02-08 |
GB2580420B (en) | 2022-02-16 |
US20200228389A1 (en) | 2020-07-16 |
GB2580420A (en) | 2020-07-22 |
KR20200087673A (ko) | 2020-07-21 |
GB201900413D0 (en) | 2019-02-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11991255B2 (en) | Interworking service for the restful internet of things | |
CN111435947A (zh) | 电子消息控制 | |
US10997376B2 (en) | Electronic message translation management | |
KR101599179B1 (ko) | 그룹 통신 방법 및 시스템, 그룹 서버 및 그룹 구성원 디바이스 | |
US10965718B2 (en) | Method for providing wireless application privilege management | |
EP3298806A1 (en) | Methods and apparatus for analyzing and grouping service layer subscriptions and notifications for enhanced efficiency | |
CN110471692B (zh) | 终端程序的空中升级方法、装置、设备及存储介质 | |
US11671514B2 (en) | Service layer message templates in a communications network | |
CN111506356A (zh) | 电子消息适配 | |
US10992578B2 (en) | Message retargeting in machine-to-machine service layer communications | |
CN112583630A (zh) | 设备管理方法、装置、系统、设备及存储介质 | |
WO2020009797A1 (en) | Efficient resource representation exchange between service layers | |
WO2018209189A1 (en) | Enable reliable and distributed m2m/iot services | |
EP2424162B1 (en) | Method, apparatus and system for device management | |
CN113268272B (zh) | 基于私有云的应用交付方法、装置及系统 | |
CN115720221A (zh) | 基于规则的属性发现 | |
WO2024155365A1 (en) | Building automation system for smart edge management | |
CN116931956A (zh) | 一种应用部署方法及相关装置 | |
CN116886163A (zh) | 卫星的控制方法、装置、系统和存储介质 | |
CN111131425A (zh) | 分布式系统以及分布式系统的通信方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20200807 |