CN101640700B - 为智能设备中介企业服务访问的方法和系统 - Google Patents
为智能设备中介企业服务访问的方法和系统 Download PDFInfo
- Publication number
- CN101640700B CN101640700B CN200910162279.2A CN200910162279A CN101640700B CN 101640700 B CN101640700 B CN 101640700B CN 200910162279 A CN200910162279 A CN 200910162279A CN 101640700 B CN101640700 B CN 101640700B
- Authority
- CN
- China
- Prior art keywords
- service
- request
- smart machine
- equipment
- enterprises
- 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.)
- Active
Links
Images
Classifications
-
- 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/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- 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
-
- 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/59—Providing operational support to end devices by off-loading in the network or by emulation, e.g. when they are unavailable
-
- 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
Abstract
本发明描述了为智能设备中介企业服务访问的技术。本发明公开了为智能设备中介企业服务访问的方法和系统。公开了一种系统,其包括企业服务访问中介器,企业服务访问中介器包括企业服务代理设备,企业服务代理设备包括虚拟代理设备和服务适配器,虚拟代理设备包括:中介接收器,被配置为经由与智能设备相关联的第一协议从智能设备接收第一消息;解析器,被配置为确定第一消息包括对经由位于后端设备的企业服务进行处理的智能设备请求;以及中介转换器,被配置为基于智能设备请求和与企业服务和第一协议相关联的服务适配描述来确定企业服务请求和相关联的企业请求协议,服务适配器被配置为经由相关联的企业请求协议将企业服务请求发送到后端设备。
Description
技术领域
本说明书涉及为智能设备中介(mediate)企业服务访问的技术。
背景技术
随着涉及通过诸如因特网的网络相互连接的智能设备的活动的增长,许多技术被开发用来执行诸如商业处理的处理。虽然客户端-服务器体系结构继续在例如商业软件系统领域中起重要作用,但是面向服务的体系结构(ServiceOriented Architectures,SOA)变得越来越流行。通过SOA将设备整合到商业场景(business landscape)中是一种用于例如通过在这些设备上运行web服务的实例来数字化物理对象和使它们为系统可用的示例方法。
诸如企业后端服务器的企业后端设备可以提供对企业服务的访问,所述企业服务可以包括,例如,可以提供合乎低级(low level)智能设备需要的服务的web服务,所述低级智能设备例如车间里的设备或与能量分布领域(energy distribution domain)相关联的设备。
但是,许多体系结构中的设备级(device level)所包括的智能设备可能具有有限的处理能力,因此所述智能设备很难访问和利用例如可在诸如后端服务器的后端设备上获得的企业服务。例如,企业服务可以包括可经由标准化的协议访问的复杂web服务,而所述标准化的协议可能与智能设备在它们各自典型的通信中使用的通信协议不同。因此,希望提供为智能设备中介企业服务访问的技术。
发明内容
根据一个一般方面,一种系统包括企业服务访问中介器(mediator),该企业服务访问中介器包括企业服务代理(proxy)设备,该企业服务代理设备包括虚拟(virtual)代理设备和服务适配器。虚拟代理设备可以包括:中介接收器,被配置为经由与智能设备相关联的第一协议从智能设备接收第一消息;解析器,被配置为确定第一消息包括对经由位于后端设备的企业服务进行处理的智能设备请求;以及中介转换器,被配置为基于智能设备请求和与企业服务和第一协议相关联的服务适配描述来确定企业服务请求和相关联的企业请求协议。服务适配器可以被配置为经由相关联的企业请求协议将企业服务请求发送到后端设备。
根据另一个方面,一种方法包括:在企业服务代理设备处经由与智能设备相关联的第一协议从智能设备接收第一消息。可以确定第一消息包括对经由位于后端设备的企业服务进行处理的智能设备请求。可以基于智能设备请求和与企业服务和第一协议相关联的服务适配描述来确定企业服务请求和相关联的企业请求协议。企业服务请求可以经由相关联的企业请求协议发送到后端设备。
根据再一个方面,计算机程序产品有形地体现在计算机可读介质上,并被配置为使得数据处理装置执行以下步骤:在企业服务代理设备处经由与智能设备相关联的第一协议从智能设备接收第一消息;确定第一消息包括对经由位于后端设备的企业服务进行处理的智能设备请求;基于智能设备请求和与企业服务和第一协议相关联的服务适配描述来确定企业服务请求和相关联的企业请求协议;并且经由相关联的企业请求协议将企业服务请求发送到后端设备。
在附图和以下描述中阐述了一个或更多实现方式的细节。其它特征将从说明书和附图以及权利要求书中变得更加清楚。
附图说明
图1是根据示例实施例的为智能设备中介企业服务访问的系统的框图。
图2是图示图1的示例系统的操作的流程图。
图3描绘了根据示例实施例的为智能设备中介企业服务访问的系统。
图4描绘了根据示例实施例的为智能设备中介企业服务访问的系统。
图5a-5e描述了根据可扩展标记语言(XML)模式(schema)格式的示例服务适配描述。
图6是与图5a-5e的服务适配描述元素(element)相关联的示例模式的框图。
图7是与包括在图5a-5e的服务适配描述中的转换规则元素相关联的示例模式的框图。
图8a-8b描述了根据可扩展标记语言(XML)格式的示例服务适配描述。
具体实施方式
图1是为智能设备中介企业服务访问的系统100的框图。在图1的示例中,企业服务访问中介器102包括各种处理引擎,用于在位于后端设备106的一个或更多企业软件系统104与例如图1中的设备108、110、112、114、116的一个或更多智能设备之间中介企业服务访问。例如,后端设备106可以包括一个或更多服务器(例如,多个后端的服务器或一个后端的服务器)。例如,后端设备106可以包括一个或更多的一个后端的服务器,被配置为执行企业软件系统或企业服务。
根据一个示例实施例,每个智能设备108、110、112、114、116可以包括具有通信能力的设备。在该情形下,智能设备包括具有嵌入式或附接(attached)系统的任何物理对象,所述嵌入式或附接系统具有一个或更多诸如存储器的存储资源(resources)(例如,易失性RAM、永久ROM、随机分布的金属纤维的图案(pattern)等)和至少一个通信资源(例如,串行链接、通用串行总线(USB)连接、以太网或IP连接、蓝牙或IEEE 802.15.4无线通信、或其它通信手段)。利用这样的资源,智能设备可以和可以以相同或相似通信技术为特点的其它智能设备以及其它系统进行通信。除了这些资源,智能设备可以包括一个或更多传感器、致动器、显示器、或监控或影响其内部状态或其环境的其它设施。智能设备可以进一步包括计算资源(例如,微处理器、硬连线(hard wired)逻辑、单处理器等)。
智能设备的例子可以包括带有无线射频识别(RFID)标签的物件(item)、RFID读取器、生产机器、智能功率表、无线传感器节点、可编程逻辑控制器、电话、交通工具、机器人、移动电话等。
根据一个示例实施例,智能设备108、110、112、114、116中的每一个可以包括嵌入式设备、射频识别(RFID)读取器、带有RFID标签的物件、智能物件设备、传感器网络中的设备、传感器微点(mote)、嵌入信息设备的产品、车间设备、个人数字助理(PDA)、个人计算机、便携计算机、无线电话、功率调节设备、监控设备、生产机器、智能功率表、无线传感器节点、可编程逻辑控制器、电话、交通工具、机器人、移动电话、或产品控制设备中的一个或更多。根据一个示例实施例,每个智能设备108、110、112、114、116可以包括具有连接到网关的能力的智能设备。
作为一个示例的情形,商业会希望经由RFID来跟踪货物。例如,作为商业操作的一部分,所生产的货物会到达库房。装有货物的纸箱可以经由RFID来加标签。当进入库房时,RFID标签可以例如通过由运送货物相关联的人员操作的手持终端来读取。然后,所读取的标签信息可以被发送到适配处理器,该适配处理器可以将标签ID和接收信息(receipt information)进行匹配。所述接收的细节可以基于这个信息来获得,如货物描述、数量和库存清单细目以及其它参数,该信息可以被发送到后端设备106用于处理。
如图1所述,设备108和110与公共设备类型相关联,该公共设备类型在图1中示出为设备类型1118。类似地,设备112、114和116与另一公共设备类型相关联,该另一公共设备类型在图1中示出为设备类型2120。例如,设备108、110、112、114、116中的每一个可以被配置为经由特定协议与其它实体例如其它设备进行通信。例如,通信协议可以包括专有协议(proprietaryprotocol),或者其可以包括标准化的协议。设备108和110可以被配置为经由与设备类型1118相关联的第一类型的通信协议进行通信,而设备112、114和116可以被配置为经由与设备类型2120相关联的第二类型的通信协议进行通信。
企业软件系统104可以包括一个或更多企业服务(未示出),所述企业服务可以被访问以执行各种处理请求,并且可以为与处理请求相关联的请求者返回处理的结果。例如,企业服务可以被配置为执行在一个或更多设备108、110、112、114、116本地不易获得的处理,因此期望一个或更多设备108、110、112、114、116访问企业服务中的一个或更多以获得这样的处理。
例如,后端设备106可以包括后端服务器,该后端服务器可以包括能够被位于后端服务器外部的实体所访问的企业服务。例如,后端设备106可以包括单一硬件设备,或者可以包括多个硬件设备。例如,后端设备106可以包括单一后端服务器,或者可以包括多个后端服务器。例如,后端设备106可以包括被配置为执行一个或更多企业服务的单一后端服务器,或者可以包括被配置为执行企业服务的多个后端服务器。例如,后端设备106可以包括分布在多个硬件设备上的功能。例如,后端设备106可以包括一个或更多分布式系统,所述分布式系统分布在多个经由一个或更多网络和/或本地连接进行通信的硬件设备上。例如,企业服务可以经由一个或更多接口122、124和126来访问。例如,接口122可以被配置为经由web服务接口接收/发送消息,接口124可以被配置为经由商业应用编程接口(BAPI)来接收/发送消息,而接口126可以被配置为经由远程功能调用(RFC)接口来接收/发送消息。而且,系统100可以包括安全策略实施者(enforcer)128,该安全策略执行者可以被配置为实施(enforce)与访问企业服务相关联的预定规则。
数据处理领域的技术人员将理解,可能存在可以被配置为处理许多类型的请求的许多类型的企业服务,并且一些类型的处理不会返回处理结果给位于后端设备106外部的实体,而其它类型的处理则会返回结果给一个或更多位于后端设备106外部和/或内部的实体,所述实体可以包括或可以不包括与处理请求相关联的发起请求者(originating requestor)。
而且,数据处理领域的技术人员将理解,这里所讨论的各种实施例可以被组合以在本公开的精神内有利地提供附加的技术。
企业服务访问中介器102可以包括企业服务代理设备130,该企业服务代理设备包括服务适配器132和一个或更多虚拟代理设备134a、134b。根据一个示例实施例,虚拟代理设备134a、134b中的每一个可以包括经由第一协议与其它智能设备进行通信的一个智能设备的仿真,其中所述第一协议可以包括专有协议。虚拟代理设备134a、134b中的每一个可以分别包括一个或更多服务视图(service view)引擎136a、136b、136c。服务视图引擎136a、136b、136c中的每一个可以分别包括中介接收器138a、138b、138c、解析器140a、140b、140c和中介转换器142a、142b、142c。
每个中介接收器138a、138b、138c可以被配置为经由与智能设备相关联的第一协议从智能设备接收第一消息。例如,中介接收器138a经由与设备类型118相关联的专有协议从智能设备108接收第一消息。例如,智能设备108可能位于车间,并经由与设备类型118相关联的专有协议请求对位于后端设备106的企业服务的访问。根据一个示例实施例,中介接收器138a可以被配置为经由与设备类型118相关联的专有协议与智能设备108进行通信,以致智能设备108不知道一个或更多不同的协议可能被企业服务代理设备130用来与除智能设备108之外的实体进行通信(例如,智能设备108可能不知道企业服务代理设备130可能不是类似自己的智能设备)。因此,智能设备108可以不必为请求对一个或更多企业服务的访问而执行大量处理活动,否则直接与后端设备106通信所述大量处理活动是必需的。
每个解析器140a、140b、140c可以被配置为确定第一消息包括对经由位于后端设备的企业服务进行处理的智能设备请求。例如,解析器140a可以解析从智能设备108接收的消息以确定该消息包括对经由位于后端设备106的企业服务进行处理的请求。例如,该请求可以按照与设备类型118相关联的协议进行格式化,并且可以包括对可经由不同协议(例如,经由如以上讨论过的web服务接口、BAPI、或RFC接口)在后端设备106处访问的企业服务的请求。
根据一个示例实施例,企业服务访问中介器102可以包括服务适配库144,该服务适配库可以被配置为存储至少一个服务适配描述146。根据一个示例实施例,服务适配描述146中的每一个可以包括描述与后端设备相关联的企业服务的信息。根据一个示例实施例,服务适配描述146中的每一个可以包括与在与第一协议相关联的消息和与企业服务中的一个或更多相关联的消息之间的转换相关联的信息。
每个中介转换器142a、142b、142c可以被配置为基于智能设备请求和与企业服务和第一协议相关联的服务适配描述,来确定企业服务请求和相关联的企业请求协议。例如,中介转换器142a可以基于由解析器140a确定的智能设备请求、以及基于存储在服务适配库144中的服务适配描述146,来确定企业服务请求和相关联的企业请求协议(例如,web服务协议)。根据一个示例实施例,每个中介转换器142a、142b、142c可以被配置为基于翻译(translate)智能设备请求以获得企业服务请求来确定企业服务请求,其中,基于包括在与企业服务和第一协议相关联的服务适配描述中的映射来翻译智能设备请求以获得企业服务请求。根据一个示例实施例,所述映射可以包括可扩展标记语言(XML)映射,经由从智能设备请求到企业服务请求的翻译,所述XML映射包括与智能设备请求相关联的第一项的指示和与企业服务请求相关联的第二项的指示。
根据一个示例实施例,每个中介转换器142a、142b、142c可以被配置为基于获得与企业服务请求相关联的至少一个参数来确定企业服务请求,其中,基于与企业服务和第一协议相关联的服务适配描述来获得与企业服务请求相关联的至少一个参数。例如,企业服务可以被配置为要求满足对企业服务的调用的一个或更多参数。例如,企业服务可以被配置为处理按照预定格式(例如,整数格式、浮点格式、字符格式、特殊字符格式、访问格式、安全约束)进行格式化的参数。根据一个示例实施例,服务适配描述146中的一个或更多可以包括与在传送到后端设备106(例如,经由上述接口122、124或126中的一个)之前被包括在企业服务请求中的一个或更多参数相关联的信息。根据一个示例实施例,每个中介转换器142a、142b、142c可以被配置为按照与服务适配器132相关联的协议将企业服务请求发送到服务适配器132。
根据一个示例实施例,服务适配器132可以被配置为经由相关联的企业请求协议将企业服务请求发送到后端设备106。根据一个示例实施例,服务适配器132可以被配置为基于与企业服务和第一协议相关联的服务适配描述,请求对访问企业服务的许可的验证。例如,服务适配器132可以被配置为经由安全策略实施者128请求对访问企业服务的许可的验证。
根据一个示例实施例,服务适配器132可以被配置为基于与智能设备108、110、112、114、116和服务适配描述146相关联的协议,生成虚拟代理设备134a、134b。根据一个示例实施例,服务适配器132可以被配置为生成服务视图引擎136a、136b、136c。根据一个示例实施例,服务适配器132可以被配置为基于服务适配描述146之一获得一个或更多协议转换规则,以及基于更多协议转换规则和一个服务适配描述146来编译虚拟代理设备134a和包括中介接收器138a、解析器140a和中介转换器142a的服务视图引擎136a。
根据一个示例实施例,服务适配器132可以被配置为经由企业请求协议从后端设备106接收响应消息。根据一个示例实施例,服务适配器132可以被配置为确定虚拟代理设备134a、134b,所述虚拟代理设备134a、134b用于处理响应消息,并将响应消息转发给适当的智能设备108、110、112、114、116。根据一个示例实施例,每个虚拟代理设备134a、134b可以被配置为确定服务视图引擎136a、136b、136c,以便处理转发响应消息给适当的智能设备108、110、112、114、116。根据一个示例实施例,每个服务视图引擎136a、136b、136c可以被配置为基于响应消息和服务适配描述来确定智能设备响应。例如,每个解析器140a、140b、140c可以被配置为解析响应消息以确定智能设备响应。根据一个示例实施例,每个服务视图引擎136a、136b、136c可以被配置为经由第一协议将包括智能设备响应的第二消息从企业服务代理设备发送到智能设备。
根据一个示例实施例,系统100可以包括企业服务描述库150,该企业服务描述库可以被配置为存储一个或更多企业服务描述152。根据一个示例实施例,企业服务描述152中的每一个可以包括与访问与后端设备106相关联的企业服务相关联的信息(例如,访问协议、参数、服务的描述)。
根据一个示例实施例,企业服务访问中介器102可以包括描述管理器148。根据一个示例实施例,系统100可以包括企业服务描述库150,该企业服务描述库可以被配置为存储一个或更多企业服务描述152。根据一个示例实施例,企业服务描述152中的每一个可以包括描述与后端设备106相关联的企业服务的信息。根据一个示例实施例,企业服务描述152中的每一个可以包括与访问与后端设备106相关联的企业服务相关联的信息(例如,访问协议、参数、服务的描述)。
根据一个示例实施例,描述管理器148可以被配置为基于企业服务描述152中的一个或更多生成一个或更多服务适配描述146。根据一个示例实施例,对于包括在企业服务描述中的信息和关于与智能设备108、110、112、114、116相关联的协议的信息之间的映射,用户可以提供输入到描述管理器148。根据一个示例实施例,这样的映射可以被包括在存储在服务适配库144中的服务适配描述146中。
根据一个示例实施例,服务适配描述146可以包括针对系统100中可用的每个硬件平台的映射信息。因此,对于与系统100相关联的每个可用硬件平台,可以为经由那个平台操作的设备所了解的服务规定映射,并且该映射可以将那个服务映射到与企业应用相关联的任何协议。
根据一个示例实施例,某些参数可以由企业服务代理设备130配置以访问后端企业服务,这是因为,例如,智能设备可能不具有提供访问后端企业服务系统的访问凭证(credential)的能力。根据一个示例实施例,企业服务代理设备130可以将来自设备或智能设备级的服务参数映射到企业级。因此,服务适配描述146可以提供从一个级别到另一个级别的映射的格式化(例如,翻译中每个字到另一个字的映射)。
根据一个示例实施例,每个虚拟代理设备134a、134b可以包括各自的服务宣告引擎154a、154b,所述服务宣告引擎可以被配置为将指示对于被中介的智能设备的访问至少一个企业服务的可用性的消息发送到智能设备108、110、112、114、116。例如,如果企业服务的可用性被新添加到虚拟代理设备134a,则服务宣告引擎154a可以发送宣告给智能设备108、110以通知它们新添加的企业服务可以由智能设备108、110经由发送到虚拟代理设备134a的消息来访问。根据一个示例实施例,所述宣告可以包括智能设备108、110用来生成经由虚拟代理设备134a对新添加的企业服务的请求的信息。
根据一个示例实施例,web服务可以包括被设计来支持网络上可互操作(interoperable)的机器对机器(machine-to-machine)交互的软件系统。例如,web服务可以包括Web应用编程接口(API),所述Web应用编程接口可以通过诸如因特网的网络访问,并在作为所请求的服务的主机的远程系统上运行。诸如设备108、110、112、114、116中的一个或更多的智能设备可以被配置为在它们自己中处理web服务,但是,当对于特定处理需求可能需要大量处理时,该处理会变得很繁重。可经由后端服务器作为主机的企业服务可以提供各种不同服务的可用性,并且可以经由可以包括标准化的协议的协议来访问;但是,智能设备可以被配置为经由专有协议进行通信,或者经由不同于用来访问特定企业服务的协议的协议进行通信。智能设备可能需要执行相当大数量的处理,以与后端服务器进行直接通信从而访问这样的企业服务。而且,对于外部实体对企业服务处理的请求,可能有由后端服务器强加的安全约束。因此,智能设备可能需要额外的处理,以便清除(clear)与后端服务器相关联的安全实施者。例如,后端服务器可以只提供对特定企业服务的有限的访问。
这里所讨论的示例的企业服务访问中介器102可以为智能设备提供对后端企业服务的访问,而不要求智能设备生成按照可能与企业服务相关联的特定协议格式化的对企业服务的请求。例如,智能设备108、110、112、114、116可以经由与智能设备与其它智能设备通信所使用的通信协议相关联的默认参数与虚拟代理设备134a、134b进行通信。因此,对于智能设备而言简化了对后端企业服务的协议的访问,这是因为不要求智能化设备自身进行转换以便访问企业服务。根据一个示例实施例,这样的访问可以以设备或智能设备容易理解的形式,提供将后端系统的功能性降低到设备级(例如,在车间、移动设备)的手段。
而且,这里所讨论的示例的企业服务访问中介器102可以提供一种通信手段,用于将结果信息或其它信息从后端设备106返回到智能设备108、110、112、114、116,从而减轻对于企业服务或后端设备106按照与智能设备相关联的协议格式化信息的需求。
图2是说明图1的系统的示例操作的流程图。在202,可以在企业服务代理设备处经由与智能设备相关联的第一协议从智能设备接收第一消息。例如,如以上所讨论的,可以在企业服务代理设备130处经由与智能设备相关联的第一协议从智能设备(例如,智能设备108、110、112、114、116之一)接收第一消息。例如,第一协议可以包括与智能设备相关联的专有协议。例如,中介接收器138a可以经由与设备类型118相关联的专有协议从智能设备108接收消息。根据一个示例实施例,可以在虚拟代理设备处经由与嵌入式设备相关联的专有协议从嵌入式设备接收第一消息。根据一个示例实施例,虚拟代理设备可以包括经由专有协议与其它嵌入式设备通信的另一个嵌入式设备的仿真。
在204,可以确定第一消息可以包括对经由位于后端设备的企业服务进行处理的智能设备请求。例如,如上面所讨论的,解析器140a可以解析从智能设备108接收的消息,以确定该消息包括对经由位于后端设备106的企业服务进行处理的请求。
根据一个示例实施例,确定第一消息包括智能设备请求可以包括在企业服务代理设备处解析第一消息,以获得对经由位于后端服务器的企业服务进行处理的智能设备请求。
在206,可以基于智能设备请求和与企业服务和第一协议相关联的服务适配描述来确定企业服务请求和相关联的企业请求协议。例如,如上面所讨论的,中介转换器142a可以基于由解析器140a确定的智能设备请求,以及可能存储在服务适配库144中的服务适配描述,来确定企业服务请求和相关联的企业请求协议(例如,web服务协议)。
根据一个示例实施例,确定企业服务请求可以包括基于包括在与企业服务和第一协议相关联的服务适配描述中的映射来翻译智能设备请求,以获得企业服务请求。
根据一个示例实施例,确定企业服务请求可以包括基于包括在与企业服务和第一协议相关联的服务适配描述中的可扩展标记语言(XML)映射来翻译智能设备请求,以获得企业服务请求,其中,经由从智能设备请求到企业服务请求的翻译,所述XML映射可以包括与智能设备请求相关联的第一项的指示和与企业服务请求相关联的第二项的指示。
根据一个示例实施例,确定企业服务请求可以包括基于与企业服务和第一协议相关联的服务适配描述,来获得与企业服务请求相关联的至少一个参数。
在208,企业服务请求可以经由相关联的企业请求协议被发送到后端设备。根据一个示例实施例,如上面所讨论的,服务适配器132可以被配置为经由相关联的企业请求协议将企业服务请求发送到后端设备106。根据一个示例实施例,经由相关联的企业请求协议将企业服务请求发送到后端设备可以包括基于与企业服务和第一协议相关联的服务适配描述,验证对访问企业服务的许可。根据一个示例实施例,如上面所讨论的,服务适配器132可以被配置为经由安全策略实施者128来验证对访问企业服务的许可。
根据一个示例实施例,发送企业服务可以包括基于相关联的企业请求协议将企业服务请求发送到后端设备接口。根据一个示例实施例,相关联的企业请求协议可以包括web服务接口、商业应用编程接口(BAPI)或远程功能调用(RFC)接口中的一个或更多。
根据一个示例实施例,发送企业服务请求可以包括请求基于与企业服务和第一协议相关联的服务适配描述,对访问企业服务的许可进行验证。例如,如上面所讨论的,服务适配器132可以经由安全策略实施者128请求对许可的验证。
根据一个示例实施例,该方法可以进一步包括经由企业请求协议从后端设备接收响应消息。根据一个示例实施例,该方法可以进一步包括基于响应消息和服务适配描述来确定智能设备响应。根据一个示例实施例,该方法可以进一步包括经由第一协议将包括智能设备响应的第二消息从企业服务代理设备发送到智能设备。
图3描述了根据一个示例实施例的、为智能设备中介企业服务访问的系统300。图块被标号以指示类似于上面相对图1所讨论的组件的系统组件。例如,企业后端106可以类似于上面所讨论的后端设备106来配置。如图3所示,示例企业后端106可以作为复杂web服务的主机。例如,复杂web服务的功能性是智能设备所希望的,但是可能需要智能设备进行相当大数量的处理来直接从企业后端106访问所述复杂web服务。另外,设备层308可以包括类似于上述智能设备108、110、112、114、116的设备310a、310b、310c、310d。如图3所示,设备层308可以包括具有受约束的(constrained)、嵌入式软件的设备。而且,逻辑虚拟设备134可以类似于上面所讨论的虚拟代理设备134a、134b来配置。
根据一个示例实施例,企业服务代理130可以经由web服务设备配置文件(Devices Profile for Web Services,DPWS)标准为车间设备(例如,设备310a、310b、310c、310d)提供对企业服务的访问。根据一个示例实施例,企业服务代理130可以不仅为实现DPWS的设备(DPWS-enabled device)而且为与异类(heterogeneous)硬件平台相关联的设备提供对企业服务的访问。
根据一个示例实施例,由于许多车间设备只具有与经由和该车间设备一样的协议进行通信的其它设备进行通信的能力,因此可以提供逻辑虚拟设备134以使这些设备能够使用企业服务。
因此,示例企业服务代理130可以被配置为处理众多例如在工业环境中可用的协议。所述协议也可以限制一组设备对某些服务的访问。因此,示例企业服务代理130可以被配置为提供:
·作为下游(downwards)的受约束的设备之一的交互
·作为上游(upwards)普通服务客户端的交互
·后端域和设备之间的中介,建立逻辑链路
·服务调用(invocation)参数的操纵
·减少参数计数
·数据的编组(marshalling)、去编组(unmarshalling)
·安全的实施:
·可以仅让企业服务的子集可用
·可以限制对服务的访问
·在设备级的安全概念和高级(例如,后端)服务的安全概念之间的中介
因此,如图3所示(类似上面所讨论的),企业服务代理130可以在设备层108和经由企业后端106可得到的企业服务之间提供逻辑/虚拟链路。
图4描述了根据一个示例实施例的、为智能设备中介企业服务访问的系统400。图块被标号以指示类似于上面针对图1所讨论的组件的系统组件。例如,企业软件系统108可以类似于上面所讨论的企业软件系统108来配置。
根据一个示例实施例,企业软件系统108可以位于后端设备106,并可以提供可以经由工业标准通信协议访问的服务,所述工业标准通信协议例如RFC 126、BAPI 124和web服务122。根据一个示例实施例,企业服务库150可以位于后端设备106,并可以包括与访问可用企业服务相关联的信息。
根据一个示例实施例,服务适配描述146可以被创建以提供由智能设备对企业服务的访问。根据一个示例实施例,服务适配描述146可以经由管理工具(例如,类似于描述管理器148的管理应用448)来创建,所述管理工具可以被配置为访问企业服务库150以检索(retrieve)服务信息。用这个工具生成的服务适配描述146可以包括在对低级设备生成企业服务的呈现(presentation)时使用的信息。根据一个示例实施例,所述信息可以包括:
·访问控制策略(policy)
·专有协议映射规则
·服务映射参数
·连接类型(例如,web服务、BAPI、RFC等)
·服务结束点
·参数减少映射
·省略参数的默认值或计算公式
·错误补偿策略(strategy)
·处理不成功调用(invocation)的策略
根据一个示例实施例,基于服务适配描述146提供的信息,服务适配器组件132可以分别在代理虚拟设备134a、134b内创建服务视图(service view)136a、136b、136c、136d。根据一个示例实施例,对于每种设备类型118、120,可以提供一个服务视图模板(例如,作为程序源代码),并且服务视图模板可以被包括在服务适配描述146中,由服务适配器132在生成服务视图136a、136b、136c、136d时使用。因此,可以经由企业服务代理设备130提供后端服务的代表(representation)。根据一个示例实施例,代理虚拟设备134a、134b可以被动态地生成和修改。
根据一个示例实施例,所生成的服务视图136a、136b、136c、136d可以被配置为执行在专有协议和服务适配器132所支持的协议之间的转换。
根据一个示例实施例,当设备请求访问某些企业服务时,该请求可以由一个或更多服务视图136a、136b、136c、136d解析,并转发给服务适配器132。根据一个示例实施例,服务适配器132然后可以请求验证访问规则(例如,经由安全策略实施设备128),并将该请求转发给适当的企业服务(例如,经由协议122、124或126)。
根据一个示例实施例,如果设备类型118、120中的一个或更多支持发现机制(discovery mechanism),则服务宣告154a、154b可以被提供给每个虚拟设备。根据一个示例实施例,服务宣告154a、154b可以在例如发现阶段(phase)期间,向车间设备宣告可用服务。
根据一个示例实施例,服务适配器132可以提取在服务适配描述146中规定的协议转换规则,并编译服务视图136a、136b、136c和虚拟设备134(如果还不存在的话)。根据一个示例实施例,服务视图可以基于连接后端协议和解析器类(class)的先前存在的stubs来生成。这些类可以在编译时间(compilation time)期间生成,并且可以生成如服务适配描述146中定义的映射规则。另外,基于服务适配描述146,还可以生成中介接收器138a、138b、138c以提供与智能设备的通信。
根据一个示例实施例,虚拟设备134可以被部署到诸如开放服务网关标准(Open Services Gateway initiative,OSGi)的平台,该平台提供对基于Java的服务的远程管理。可以根据应用的需要创建和去除基于OSGi技术的虚拟设备134。根据一个示例实施例,当它们以束(bundle)的形式生成时,服务视图136a、136b、136c还可以被部署到OSGi容器。
根据一个示例实施例,全部服务视图136a、136b、136c被部署到包括服务宣告154的OSGi束。这样的服务视图136a、136b、136c可以生成消息来通知智能设备108、110、112、114、116后端服务可以被它们所用。这些消息的格式可以根据智能设备108、110、112、114、116所用的低级协议而改变。例如,WS-Discovery是可以提供服务宣告特征的协议,并且可以由实现web服务设备配置文件(DPWS)的设备(DPWS-enabled device)使用。其它可以提供这样的宣告特征的示例协议包括通用即插即用(UPnP)和Bonjour。根据一个示例实施例,如果低级协议不支持服务的宣告,则这个服务可能不被部署到虚拟设备134。
图5a-5e描述了根据可扩展标记语言(XML)模式格式的示例服务适配描述。如先前讨论的,服务适配描述146可以被配置为在智能设备请求和企业服务请求之间进行中介。根据一个示例实施例,服务适配描述146可以以XML文件的形式进行形式化。图5a-5e说明了这样的文件的示例XML模式500。如图5a所示,该模式与serviceAdaptationDescription元素502相关联。如上所讨论的,例如,serviceAdaptationDescription元素502可以将后端企业服务(例如,web服务)的可用性提供给嵌入式设备。例如,每个设备可以有一个描述,该描述可以包括提供连接到一个或更多服务的规则。
如图5a所示,示例serviceAdaptationDescription元素502可以包括元素版本504、virtualDevices 506、以及conversionRules 508。与serviceAdaptationDescription元素502相关联的当前版本504可以包括用于值510和兼容性512的元素。根据一个示例实施例,如图5a所示,服务适配描述146可以与一个虚拟设备134相关联,该虚拟设备134可以与诸如其设备标识符514和其设备类型516的一组属性相关联。设备类型516可以与低级通信协议(例如,虚拟com端口、DPWS设备、代表状态传输(Representationalstate transfer,REST)web服务等)相关联,该低级通信协议与虚拟设备134相关联。
如图5a所示,示例元素serviceAdaptationDescription 502可以包括0..n个转换规则508,其中每个规则可以与底层服务(underlying service)的操作相关联。根据一个示例实施例,每个转换规则508可以与目标企业服务518、目标服务操作520、虚拟设备ID 522、0..n个参数映射规则524、访问策略526、以及错误补偿策略528相关联。
根据一个示例实施例,服务适配serviceAdaptationDescription 502的目标企业服务518可以包括服务ID 530,所述服务ID 530例如可以与存储在企业服务库中的服务相关联,例如可以与ERP系统相关联。例如,目标服务操作520可以包括可用来选择规定服务的特定操作的操作ID 532。
根据一个示例实施例,虚拟设备ID 522可以指示将作为适配版本的服务的主机的虚拟设备。
根据一个示例实施例,访问策略526可以指示设备对各个企业服务的潜在允许的使用,其可以例如包括认证534的等级以及加密536的等级。
根据一个示例实施例,错误补偿策略528可以包括在调用服务之后基于来自后端的错误消息540可以触发哪个低级活动538的一个或更多指示符。
根据一个示例实施例,对于各个后端服务的每个参数,会有相关联的一个参数映射规则524,该规则可以包括参数ID542和映射策略544。例如,映射策略544可以包括一个或更多默认值546和本地公式546,其中所述参数可以在呈现给设备的参数列表中被省略。例如,如果默认值546被指示,则所述参数可以在呈现给设备的参数列表中被省略,并且默认值被发送到后端设备106。例如,如果本地公式546被指示,则所述参数可以在呈现给设备的参数列表中被省略,并且可以被指示参数的值的计算的公式或方程所取代,所述参数的值的计算基于从设备发送的其它参数值(例如,2*p1+p2,其中p1和p2包括参数ID)。
根据一个示例实施例,远程公式550可以指示基于本地参数名称和远程服务二者(例如,基于对web服务的调用)的参数的值的计算。根据一个示例实施例,直接映射元素552可以指示设备级参数名称被映射到的目标参数名称554。
图6是与图5a-5e的服务适配描述元素502相关联的示例模式的框图600。如上面相对图5a所讨论的,示例serviceAdaptationDescription元素502可以包括元素版本504、virtualDevices 506、以及conversionRules 508,如下面进一步讨论的。
图7是与包括在图5a-5e的服务适配描述502中的转换规则元素508相关联的示例模式的框图700。如上面针对图5a-5e所讨论的,示例conversionRules 508可以包括元素目标企业服务518、目标服务操作520、虚拟设备ID 522、参数映射规则524、访问策略526以及错误补偿策略528,如下面进一步讨论的。
图8a-8b描述了根据XML格式的示例服务适配描述802。图8a-8b中所示示例基于上面所讨论的RFID货物接收情景,其中商业可能希望经由RFID跟踪货物。例如,当带有RFID标签的货物进入库房时,RFID标签可以被手持终端读取,并且标签信息然后被发送到适配处理器,该适配处理器可以匹配标签ID和接收信息。如上面所讨论的,接收的细节可以基于这个信息获得,该信息被发送到后端设备106进行处理。
例如,企业服务可以将与从RFID门(gate)发送的货物接收相关联的数据与在后端(例如,ERP)设备106中接收的装运(shipment)通知进行比较,以便确保货物正确的递送。例如,企业服务可以被配置为接受接收货物的电子产品代码(EPC)、与读取货物标签的RFID读取器相关联的标识符、装运号、时戳,作为输入参数。
如图8a-8b所示,示例XML文件指示用于企业服务GoodsReceipt 806的特定操作compareEPCwithShipment 804的转换规则,该企业服务GoodsReceipt806与虚拟DPWS设备相关联,该虚拟DPWS设备与设备ID 10.24.98.103(808)相关联。各个示例参数映射规则与上面所讨论的四个参数的每一个相关联。例如,参数映射规则810指示接收货物的EPC和compareEPCwithShipment操作804的EPC_enterprise参数之间的直接映射。相同直接映射被指示为由ReaderID和ReaderID_enterprise参数之间的参数映射规则812建立。对于时戳,参数映射规则814指示默认值(例如,当前日期)可以被传送。为了获得输入参数装运号,参数映射规则816指示remoteFormula的调用,因为该信息对设备来讲可能不能在本地得到。
基于货物接收示例,以下讨论集中在用于提供从智能设备对企业服务的调用的示例系统100的各种组件的交互。上面所讨论的关于企业服务GoodsReceipt 806及其操作compareEPCwithShipment 804的信息可以首先被存储在企业服务描述库150中,作为企业服务描述152的一部分。这个描述还可以包括与调用该操作相关联的任何参数的一个或更多指示。上面所讨论的服务适配描述802可以基于存储在企业服务描述库150中的compareEPCwithShipment 804操作的描述来生成。
根据一个示例应用情景,虚拟DPWS设备可以封装企业操作compareEPCwithShipment 804。因此,服务适配器132可以例如基于操作compareEPCwithShipment 804生成服务视图136a,作为设备类型DPWS的虚拟设备134a的一部分。服务视图136a可以包括解析器140a、中介转换器142a、以及中介接收器138a。由于DPWS也支持发现机制(即,WS-Discovery),服务宣告引擎154a也可以被生成。
如果RFID读取器希望调用后端操作compareEPCwithShipment 804、则RFID读取器可以首先基于服务宣告154a发现该操作,然后在虚拟设备134a上调用该服务,类似于调用任何其它设备级服务。与虚拟设备134a相关联的中介接收器138a可以经由DPWS-特定协议接收compareEPCwithShipment 804操作的调用。与虚拟设备134a相关联的解析器140a然后解析compareEPCwithShipment 804,以验证其指代有效企业服务。中介转换器142a然后可以基于服务适配描述及其转换规则,将设备级服务调用映射到与企业服务GoodsReceipt 806相关联的企业级操作compareEPCwithShipment 804。
根据一个示例实施例,车间可以包括在自动化领域操作的设备的基础。根据一个示例实施例,嵌入式设备可以包括智能设备和/或智能物件。
这里描述的示例技术可以在各种背景(setting)下实施。例如,该技术可以用在自动化领域或能量分布领域。
例如,在自动化领域,机械臂(robotic arm)配备有一个或更多智能设备。机械臂可以经由智能设备被控制和/或监控,所述智能设备经由后端服务器访问企业服务。温度传感器也可以监控机械臂附近的环境。期望企业服务检测不可接受的高温,并控制停止该机械臂。
例如,在能量分配领域,可以经由在各个家庭中操作的智能设备而在后端服务器监控电力的使用。如果后端服务器确定所述使用升高到可以预料将要发生断电的程度,则后端服务器可以控制关闭各种家用电器以避免断电。作为另一个示例,后端服务器可以确定可以在一定时间激活或去激活各种家用电器(例如,以便在一天的特定时段期间获得最佳比率(optimal rate)、以便最优化房主度假时的能量使用等)。
作为另一个示例,熔融沉积造型(FDM)是一种例如在制造业中可以用来执行快速成型(RP)的技术。例如,汽车制造商可以将FDM扩展到其它领域和诸如直接数字制造的功能,其中机器在制造的产品的类型中可以具有很大的带宽。这些产品可以在形状、大小、材料和生产技术(例如,加热、打磨、钻孔等)方面不同,而这些都可以在一台多用途机器上执行。这样的多用途生产机器可能不具有与他们执行用于生产的技术所需的信息相关联的标准。例如,输入会根据正在被生产的产品的类型而改变。例如,web服务可以被部署在这些机器上,以获得来自不同来源的产品细节。这样的web服务可以使用中间件,如上面所讨论的,它们可以组织在设计平台和执行环境之间的服务。
作为另一个示例,在车间操作的自动化机器可以包括各种电子器件,所述电子器件控制机器的机电组件上的生产的处理和执行。这些电子器件可能是受约束的资源,因此可能不能为整组操作提供可能需要相当多资源(例如,计算资源、存储器等)的某些特征,诸如诊断算法(diagnostic algorithms)。例如,对于要在同一机器上生产的另一个产品,生成顺序可能改变,这可能使得期望同时改变这些诊断算法。通过使用这里所讨论的示例技术,诊断例程可以被远程存储,并且所述机器可以周期性地运行所述诊断。因此,诊断算法可以在后端机器(例如,后端设备106)上更新。例如,两个类似的机器可能需要不同的算法(例如,两个机械臂),或者两个不同的机械可能需要相同的算法(例如,传送带控制器和叉车可能需要算法来确定温度和马达速度)。例如,web服务可以帮助保持用于协调哪个算法运行在哪个机械上的原子性(atomicity)。这里所讨论的示例中间件体系结构可以提供用于诊断例程的web服务和车间机器的协调。而且,这里所讨论的示例中间件体系结构还可以被用来整合企业资源计划(ERP)系统,以便下订单或警告人员有关潜在缺陷的备件(defective spare part),并且还可以增强预测维护。
这里所描述的各种技术的实施方式可以在数字电子电路中实施,或在计算机硬件、固件、软件、或它们的组合中实施。实施方式可以设施为计算机程序产品,即,有形地体现在信息载体上的计算机程序,例如在机器可读存储设备或传播的信号中,用于由数据处理装置运行或控制数据处理装置的操作,数据处理装置例如可编程处理器、计算机、或多台计算机。计算机程序,诸如上述计算机程序,可以用任何形式的编程语言编写,包括编译或解释语言,并且能够以任何形式来部署,包括作为独立程序或作为模块、组件、子例程、或者其他适于用在计算环境中的单元。计算机程序可以被部署为在一台计算机或多台计算机上执行,所述多台计算机可以在一个地点或分布在多个地点并通过通信网络相互连接。
方法步骤可以由运行计算机程序的一个或更多可编程处理器执行,以便通过对输入数据进行操作和生成输出来执行功能。方法步骤还可以由特殊用途逻辑电路执行,并且装置可以被设施为特殊用途逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
作为示例,适合运行计算机程序的处理器包括通用和专用微处理器二者,以及任何种类的数字计算机的任何一个或更多处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的元素可以包括至少一个运行指令的处理器和一个或更多存储指令和数据的存储器。通常,计算机还可以包括用于存储数据的一个或更多海量存储设备,或者被可操作地耦合到所述海量存储设备以便从其接收数据或向其传输数据或它们两者,所述海量存储设备如磁盘、磁光盘、或光盘。适于体现计算机程序指令和数据的信息载体包括所有形式的非易失性存储器,作为示例,包括半导体存储设备,如EPROM、EEPROM,和闪存设备;磁盘,如内部硬盘或可移动盘;磁光盘;以及CD-ROM和DCD-ROM盘。处理器和存储器可以被特殊用途逻辑电路补充或合并在特殊用途逻辑电路中。
为了提供与用户的交互,实施方式可以实施在具有显示设备以及键盘和指示设备的计算机上,所述显示设备如阴极射线管(CRT)或液晶显示器(LCD)监视器,用于显示信息给用户,所述键盘和指示设备如鼠标或跟踪球,通过所述键盘和指示设备,用户可以提供输入给计算机。其他种类的设备也可以用来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感官反馈,例如,视觉反馈、听觉反馈、或触觉反馈;并且来自用户的输入可以以任何形式接收,包括声音、语音或触觉输入。
实施方式可以在计算系统中实施,所述计算系统包括后端组件,例如,作为数据服务器,或者包括中间件组件,例如,应用服务器,或者包括前端组件,例如,具有图形用户界面或Web浏览器的客户端计算机,通过所述图形用户界面或网络浏览器用户能够与实施方式交互,或者包括这样的后端组件、中间件组件或前端组件的任何组合。组件可以通过任何形式或介质的数字数据通信例如通信网络来互连。通信网络的例子包括局域网(LAN)和广域网(WAN),如因特网。
虽然已经如这里所描述的说明了所描述的实施方式的某些特征,但是现在本领域技术人员会想到许多修改、替换、改变和等同物。因此,应当理解所附权利要求旨在涵盖落在实施例的真实精神范围内的全部这样的修改和改变。
Claims (20)
1.一种用于为智能设备中介企业服务访问的系统,包括:
企业服务访问中介器,包括:
企业服务代理设备,其包括服务适配器、用于第一类型的智能设备的第一虚拟代理设备以及用于第二类型的智能设备的第二虚拟代理设备,
其中所述服务适配器被配置为基于企业服务描述编译用于第一类型的智能设备的第一虚拟代理设备以及用于第二类型的智能设备的第二虚拟代理设备,第一虚拟代理设备和第二虚拟代理设备中的每一个包括一个或更多个服务视图引擎,每个服务视图引擎经由不同接口支持智能设备和位于后端设备的至少一个企业服务之间的通信交换,所述至少一个服务视图引擎包括:
中介接收器,被配置为经由与该第一类型的智能设备相关联的第一协议从该第一类型的智能设备接收第一消息;
解析器,被配置为确定第一消息包括对经由所述位于后端设备的至少一个企业服务进行处理的智能设备请求;以及
中介转换器,被配置为基于智能设备请求和与企业服务和第一协议相关联的服务适配描述来确定企业服务请求和相关联的企业请求协议;以及
其中所述服务适配器还被配置为经由相关联的企业请求协议将企业服务请求发送到后端设备。
2.如权利要求1所述的系统,其中:
所述企业服务访问中介器包括服务适配库,该服务适配库被配置为存储服务适配描述,并且
所述服务适配器被配置为基于服务适配描述来获得一个或更多协议转换规则,以及被配置为基于所述更多协议转换规则和所述服务适配描述来编译所述第一和第二虚拟代理设备以及所述服务视图引擎。
3.如权利要求1所述的系统,还包括:
企业服务描述库,被配置为存储企业服务描述,包括描述与后端设备相关联的企业服务的信息,其中,所述后端设备包括一个或更多后端服务器,
其中,所述企业服务访问中介器包括描述管理器,该描述管理器被配置为基于所述企业服务描述来生成服务适配描述,
其中,所述服务适配描述包括与在与第一协议相关联的消息和与企业服务中的一个或更多相关联的消息之间的转换相关联的信息。
4.如权利要求1所述的系统,其中,所述第一协议包括与所述第一类型的智能设备相关联的专有协议。
5.如权利要求1所述的系统,其中,所述虚拟代理设备包括:
服务宣告引擎,被配置为:当企业服务被新添加到第一虚拟代理设备和第二虚拟代理设备时,将指示对于所中介的第一类型或第二类型的智能设备的访问来说该企业服务的可用性的可用性消息发送到该智能设备。
6.如权利要求1所述的系统,其中:
所述中介转换器被配置为基于翻译智能设备请求以获得企业服务请求来确定企业服务请求,其中,基于包括在与企业服务和第一协议相关联的服务适配描述中的映射来翻译智能设备请求以获得企业服务请求。
7.如权利要求6所述的系统,其中,所述映射包括:
可扩展标记语言XML映射,所述XML映射包括与智能设备请求相关联的第一项的指示和经由从智能设备请求到企业服务请求的翻译与企业服务请求相关联的第二项的指示。
8.如权利要求1所述的系统,其中:
所述中介转换器被配置为基于获得与企业服务请求相关联的至少一个参数来确定企业服务请求,其中,基于与企业服务和第一协议相关联的服务适配描述来获得与企业服务请求相关联的至少一个参数。
9.如权利要求1所述的系统,其中:
所述智能设备包括以下各项中的一个或更多:嵌入式设备、射频识别(RFID)读取器、带有RFID标签的物件、智能物件设备、传感器网络中的设备、传感器微点、嵌入信息设备的产品、车间设备、个人数字助理(PDA)、个人计算机、便携计算机、无线电话、功率调节设备、监控设备、生产机器、智能功率表、无线传感器节点、可编程逻辑控制器、电话、交通工具、机器人、移动电话、或产品控制设备。
10.一种用于为智能设备中介企业服务访问的方法,包括:
由服务适配器基于企业服务描述编译用于第一类型的智能设备的第一虚拟代理设备以及用于第二类型的智能设备的第二虚拟代理设备,第一虚拟代理设备和第二虚拟代理设备中的每一个包括一个或更多个服务视图引擎,每个服务视图引擎经由不同接口支持智能设备和位于后端设备的至少一个企业服务之间的通信交换,
由至少一个服务视图引擎经由与该第一类型的智能设备相关联的第一协议从该第一类型的智能设备接收第一消息;
确定第一消息包括对经由位于所述后端设备的所述至少一个企业服务进行处理的智能设备请求;
基于智能设备请求和与企业服务和第一协议相关联的服务适配描述来确定企业服务请求和相关联的企业请求协议;以及
经由相关联的企业请求协议将企业服务请求发送到后端设备。
11.如权利要求10所述的方法,其中:
第一协议包括与该第一类型的智能设备相关联的专有协议。
12.如权利要求10所述的方法,其中:
确定第一消息包括智能设备请求包括:由所述至少一个服务视图引擎解析第一消息以获得对经由位于所述后端设备的所述至少一个企业服务进行处理的智能设备请求,其中,所述后端设备包括一个或更多后端服务器。
13.如权利要求10所述的方法,其中:
确定企业服务请求包括基于包括在与企业服务和第一协议相关联的服务适配描述中的映射来翻译智能设备请求以获得企业服务请求。
14.如权利要求10所述的方法,其中:
确定企业服务请求包括基于包括在与企业服务和第一协议相关联的服务适配描述中的可扩展标记语言XML映射来翻译智能设备请求以获得企业服务请求,其中,所述XML映射包括与智能设备请求相关联的第一项的指示和经由从智能设备请求到企业服务请求的翻译与企业服务请求相关联的第二项的指示。
15.如权利要求10所述的方法,其中:
确定企业服务请求包括基于与企业服务和第一协议相关联的服务适配描述获得与企业服务请求相关联的至少一个参数。
16.如权利要求10所述的方法,其中:
发送企业服务请求到后端设备包括基于相关联的企业请求协议将企业服务请求发送到后端设备接口。
17.如权利要求10所述的方法,其中:
相关联的企业请求协议包括web服务接口、商业应用编程接口(BAPI)、或远程功能调用(RFC)接口中的一个或更多。
18.如权利要求10所述的方法,其中:
智能设备包括以下各项中的一个或更多:嵌入式设备、射频识别(RFID)读取器、带有RFID标签的物件、智能物件设备、传感器网络中的设备、传感器微点、嵌入信息设备的产品、车间设备、个人数字助理(PDA)、个人计算机、便携计算机、无线电话、功率调节设备、监控设备、生产机器、智能功率表、无线传感器节点、可编程逻辑控制器、电话、交通工具、机器人、移动电话或产品控制设备。
19.如权利要求10所述的方法,还包括:
经由企业请求协议从后端设备接收响应消息;
基于响应消息和服务适配描述来确定智能设备响应;以及
经由第一协议将包括智能设备响应的第二消息从企业服务代理设备发送到智能设备。
20.如权利要求10所述的方法,其中:
经由相关联的企业请求协议将企业服务请求发送到后端设备包括基于与企业服务和第一协议相关联的服务适配描述验证对访问企业服务的许可。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/183,976 | 2008-07-31 | ||
US12/183,976 US8560713B2 (en) | 2008-07-31 | 2008-07-31 | Method and system for mediating enterprise service access for smart devices |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101640700A CN101640700A (zh) | 2010-02-03 |
CN101640700B true CN101640700B (zh) | 2014-06-18 |
Family
ID=41609447
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910162279.2A Active CN101640700B (zh) | 2008-07-31 | 2009-07-31 | 为智能设备中介企业服务访问的方法和系统 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8560713B2 (zh) |
CN (1) | CN101640700B (zh) |
Families Citing this family (76)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2766815A1 (en) * | 2009-06-29 | 2011-01-06 | Genesis Industries, Llc | Method and systems for monitoring machine and operator productivity and profitability |
US10826751B2 (en) * | 2009-12-28 | 2020-11-03 | Telefonaktiebolaget Lm Ericsson (Publ) | Management of functional interconnections between application modules on resource nodes in a social web |
CN101808326B (zh) * | 2010-02-10 | 2013-02-20 | 南京航空航天大学 | 无线传感网络的网络中转节点和等延时及吞吐量提升方法 |
CN101976062B (zh) * | 2010-08-12 | 2012-08-22 | 华南理工大学 | 基于lsoa构架的开放式控制方法 |
JP5663105B2 (ja) * | 2011-03-11 | 2015-02-04 | エンパイア テクノロジー ディベロップメント エルエルシー | 携帯デバイスを用いた無線ノードの監視 |
US8533857B2 (en) | 2011-04-12 | 2013-09-10 | Teletech Holdings, Inc. | Methods for providing cross-vendor support services |
US9178994B2 (en) | 2011-04-12 | 2015-11-03 | Teletech Holdings, Inc. | Methods for providing self-support services using information from a viral source |
US8990428B2 (en) * | 2011-06-30 | 2015-03-24 | Infosys Limited | System and method for facilitating communication between different protocol stacks via virtual communication devices |
US8478652B2 (en) | 2011-07-18 | 2013-07-02 | Teletech Holdings, Inc. | Platform for providing life-cycle product support services |
US8572707B2 (en) | 2011-08-18 | 2013-10-29 | Teletech Holdings, Inc. | Multiple authentication mechanisms for accessing service center supporting a variety of products |
CN102307369B (zh) * | 2011-09-13 | 2013-11-27 | 北京科技大学 | 支持无线传感网并行仿真和实物模拟的装置及方法 |
US9173090B2 (en) | 2011-09-15 | 2015-10-27 | Teletech Holdings, Inc. | Method for activating services associated with a product via a service center supporting a variety of products |
US9336687B2 (en) | 2011-10-11 | 2016-05-10 | Teletech Holdings, Inc. | Method for providing learning courses via a service center supporting a variety of products |
US9576046B2 (en) | 2011-11-16 | 2017-02-21 | Ptc Inc. | Methods for integrating semantic search, query, and analysis across heterogeneous data types and devices thereof |
US9098312B2 (en) | 2011-11-16 | 2015-08-04 | Ptc Inc. | Methods for dynamically generating an application interface for a modeled entity and devices thereof |
US8909641B2 (en) | 2011-11-16 | 2014-12-09 | Ptc Inc. | Method for analyzing time series activity streams and devices thereof |
US8874636B2 (en) | 2012-01-03 | 2014-10-28 | Teletech Holdings, Inc. | Method for providing support services using consumer selected specialist and specialist ratings |
US8942369B2 (en) | 2012-02-28 | 2015-01-27 | Teletech Holdings, Inc. | Method for providing support services using multi-channel navigator and route sequences |
US8909358B2 (en) * | 2012-06-01 | 2014-12-09 | Sap Ag | Method and system for complex smart grid infrastructure assessment |
US9245287B2 (en) | 2012-07-18 | 2016-01-26 | Teletech Holdings, Inc. | Method for providing support with associates anywhere and notifications |
US9042540B2 (en) | 2012-10-30 | 2015-05-26 | Teletech Holdings, Inc. | Method for providing support using answer engine and dialog rules |
US9680726B2 (en) | 2013-02-25 | 2017-06-13 | Qualcomm Incorporated | Adaptive and extensible universal schema for heterogeneous internet of things (IOT) devices |
US10158618B2 (en) | 2013-03-06 | 2018-12-18 | Nuesoft Technologies, Inc. | System and method for securely accessing data through web applications |
US9002982B2 (en) | 2013-03-11 | 2015-04-07 | Amazon Technologies, Inc. | Automated desktop placement |
US10142406B2 (en) | 2013-03-11 | 2018-11-27 | Amazon Technologies, Inc. | Automated data center selection |
US9148350B1 (en) | 2013-03-11 | 2015-09-29 | Amazon Technologies, Inc. | Automated data synchronization |
US10313345B2 (en) | 2013-03-11 | 2019-06-04 | Amazon Technologies, Inc. | Application marketplace for virtual desktops |
WO2014145084A1 (en) | 2013-03-15 | 2014-09-18 | Ptc Inc. | Methods for managing applications using semantic modeling and tagging and devices thereof |
EP2994833A1 (en) * | 2013-05-06 | 2016-03-16 | Convida Wireless, LLC | Internet of things (iot) adaptation services |
CN103336492B (zh) * | 2013-06-04 | 2016-02-10 | 国家电网公司 | 一种混合工业计算机网络控制处理系统 |
US10623243B2 (en) | 2013-06-26 | 2020-04-14 | Amazon Technologies, Inc. | Management of computing sessions |
US10686646B1 (en) | 2013-06-26 | 2020-06-16 | Amazon Technologies, Inc. | Management of computing sessions |
EP2871544B1 (en) * | 2013-11-08 | 2022-09-14 | Rockwell Automation Technologies, Inc. | Interface for data exchange between industrial controllers and simulation applications for simulating a machine |
WO2015112905A1 (en) * | 2014-01-24 | 2015-07-30 | Eagle Downhole Solutions, Llc | Wellbore stimulation tool, assembly and method |
US9467533B2 (en) | 2014-03-21 | 2016-10-11 | Ptc Inc. | System and method for developing real-time web-service objects |
US9350791B2 (en) | 2014-03-21 | 2016-05-24 | Ptc Inc. | System and method of injecting states into message routing in a distributed computing environment |
US9462085B2 (en) | 2014-03-21 | 2016-10-04 | Ptc Inc. | Chunk-based communication of binary dynamic rest messages |
US10025942B2 (en) | 2014-03-21 | 2018-07-17 | Ptc Inc. | System and method of establishing permission for multi-tenancy storage using organization matrices |
US9961058B2 (en) | 2014-03-21 | 2018-05-01 | Ptc Inc. | System and method of message routing via connection servers in a distributed computing environment |
WO2015143416A1 (en) | 2014-03-21 | 2015-09-24 | Ptc Inc. | Systems and methods for developing and using real-time data applications |
US9560170B2 (en) | 2014-03-21 | 2017-01-31 | Ptc Inc. | System and method of abstracting communication protocol using self-describing messages |
US9762637B2 (en) | 2014-03-21 | 2017-09-12 | Ptc Inc. | System and method of using binary dynamic rest messages |
US10313410B2 (en) | 2014-03-21 | 2019-06-04 | Ptc Inc. | Systems and methods using binary dynamic rest messages |
US9350812B2 (en) | 2014-03-21 | 2016-05-24 | Ptc Inc. | System and method of message routing using name-based identifier in a distributed computing environment |
US10488850B2 (en) | 2014-06-13 | 2019-11-26 | Rockwell Automation Technologies, Inc. | Systems and methods for incorporating proxy components into an industrial automation system |
US9683438B2 (en) | 2014-09-18 | 2017-06-20 | Baker Hughes Incorporation | Communication between downhole tools and a surface processor using a network |
US9860119B2 (en) * | 2014-09-24 | 2018-01-02 | International Business Machines Corporation | Dynamic management of restful endpoints |
US9146764B1 (en) | 2014-09-30 | 2015-09-29 | Amazon Technologies, Inc. | Processing event messages for user requests to execute program code |
US9678773B1 (en) | 2014-09-30 | 2017-06-13 | Amazon Technologies, Inc. | Low latency computational capacity provisioning |
US9600312B2 (en) | 2014-09-30 | 2017-03-21 | Amazon Technologies, Inc. | Threading as a service |
FR3031206B1 (fr) * | 2014-12-31 | 2018-01-19 | Bull Sas | Boitier d'interconnexion d'equipements utilsateurs |
US9733967B2 (en) | 2015-02-04 | 2017-08-15 | Amazon Technologies, Inc. | Security protocols for low latency execution of program code |
US9588790B1 (en) | 2015-02-04 | 2017-03-07 | Amazon Technologies, Inc. | Stateful virtual compute system |
US9930103B2 (en) * | 2015-04-08 | 2018-03-27 | Amazon Technologies, Inc. | Endpoint management system providing an application programming interface proxy service |
CN108702381B (zh) * | 2016-03-01 | 2020-08-07 | 华为技术有限公司 | 一种消息传输方法及核心网接口设备 |
CN105812472B (zh) * | 2016-03-28 | 2019-11-12 | 中国科学院计算机网络信息中心 | 一种基于uri的物联网标识及服务方法 |
US10571530B2 (en) * | 2016-05-31 | 2020-02-25 | Lockheed Martin Corporation | Buoy array of magnetometers |
US10102040B2 (en) | 2016-06-29 | 2018-10-16 | Amazon Technologies, Inc | Adjusting variable limit on concurrent code executions |
CN108809900B (zh) * | 2017-05-02 | 2021-09-07 | 武汉斗鱼网络科技有限公司 | 一种统一资源访问的框架及方法 |
US10491465B2 (en) * | 2017-05-12 | 2019-11-26 | Dell Products L.P. | System and method for dynamic and extensible management of device nodes |
CN107679831B (zh) * | 2017-10-09 | 2021-01-08 | 金蝶软件(中国)有限公司 | 一种调用erp功能的方法及相关装置 |
CN108769017B (zh) * | 2018-05-29 | 2022-01-11 | 杭州字符串科技有限公司 | 一种数据通信方法及装置 |
US10853115B2 (en) | 2018-06-25 | 2020-12-01 | Amazon Technologies, Inc. | Execution of auxiliary functions in an on-demand network code execution system |
US11099870B1 (en) | 2018-07-25 | 2021-08-24 | Amazon Technologies, Inc. | Reducing execution times in an on-demand network code execution system using saved machine states |
US11943093B1 (en) | 2018-11-20 | 2024-03-26 | Amazon Technologies, Inc. | Network connection recovery after virtual machine transition in an on-demand network code execution system |
DE102018132940A1 (de) | 2018-12-19 | 2020-06-25 | Tdk-Micronas Gmbh | Vorrichtung und Verfahren zur Prüfung und Kalibrierung eines Bauteils |
GB2580420B (en) | 2019-01-11 | 2022-02-16 | Arm Ip Ltd | Electronic message adaptation |
GB2580419B (en) * | 2019-01-11 | 2021-07-07 | Arm Ip Ltd | Electronic message control |
GB2580421B (en) | 2019-01-11 | 2021-09-15 | Arm Ip Ltd | Electronic message translation management |
US11861386B1 (en) | 2019-03-22 | 2024-01-02 | Amazon Technologies, Inc. | Application gateways in an on-demand network code execution system |
US11119809B1 (en) | 2019-06-20 | 2021-09-14 | Amazon Technologies, Inc. | Virtualization-based transaction handling in an on-demand network code execution system |
CN112558488B (zh) * | 2019-09-10 | 2022-02-15 | 珠海格力电器股份有限公司 | 一种控制智能设备的方法及装置 |
US11714682B1 (en) | 2020-03-03 | 2023-08-01 | Amazon Technologies, Inc. | Reclaiming computing resources in an on-demand code execution system |
US11550713B1 (en) | 2020-11-25 | 2023-01-10 | Amazon Technologies, Inc. | Garbage collection in distributed systems using life cycled storage roots |
US11593270B1 (en) | 2020-11-25 | 2023-02-28 | Amazon Technologies, Inc. | Fast distributed caching using erasure coded object parts |
US11388210B1 (en) | 2021-06-30 | 2022-07-12 | Amazon Technologies, Inc. | Streaming analytics using a serverless compute system |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1762139A (zh) * | 2003-03-24 | 2006-04-19 | 诺基亚公司 | Imc中的请求重定向处理 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6839766B1 (en) * | 2000-01-14 | 2005-01-04 | Cisco Technology, Inc. | Method and apparatus for communicating cops protocol policies to non-cops-enabled network devices |
US7243356B1 (en) * | 2000-05-09 | 2007-07-10 | Sun Microsystems, Inc. | Remote method invocation with secure messaging in a distributed computing environment |
US6970869B1 (en) * | 2000-05-09 | 2005-11-29 | Sun Microsystems, Inc. | Method and apparatus to discover services and negotiate capabilities |
US7577834B1 (en) * | 2000-05-09 | 2009-08-18 | Sun Microsystems, Inc. | Message authentication using message gates in a distributed computing environment |
US7395333B1 (en) * | 2000-05-09 | 2008-07-01 | Sun Microsystems, Inc. | Method and apparatus to obtain negotiated service advertisement |
US6868447B1 (en) * | 2000-05-09 | 2005-03-15 | Sun Microsystems, Inc. | Mechanism and apparatus for returning results of services in a distributed computing environment |
US6757262B1 (en) * | 2000-09-15 | 2004-06-29 | Motorola, Inc. | Service framework supporting remote service discovery and connection |
US7191453B2 (en) * | 2000-11-30 | 2007-03-13 | Intel Corporation | Discovery and integration of Jini services in non-Java clients |
US20030131052A1 (en) * | 2002-01-10 | 2003-07-10 | International Business Machines Corporatioin | Method and system for HTTP time-on-page monitoring without client-side installation |
JP4401679B2 (ja) * | 2003-05-12 | 2010-01-20 | キヤノン株式会社 | 制御装置、制御プログラム、制御方法 |
US20050152344A1 (en) * | 2003-11-17 | 2005-07-14 | Leo Chiu | System and methods for dynamic integration of a voice application with one or more Web services |
US7995506B2 (en) * | 2004-03-23 | 2011-08-09 | Flash Networks Ltd. | System and method for integrating information services through cellular network |
JP4154364B2 (ja) * | 2004-04-22 | 2008-09-24 | キヤノン株式会社 | 通知方法 |
US7571208B2 (en) * | 2005-11-30 | 2009-08-04 | Microsoft Corporation | Creating proxies from service description metadata at runtime |
US8522341B2 (en) * | 2006-03-31 | 2013-08-27 | Sap Ag | Active intervention in service-to-device mapping for smart items |
US7987471B2 (en) * | 2007-01-26 | 2011-07-26 | Microsoft Corporation | Mobile device management proxy system |
US8365189B2 (en) * | 2007-02-28 | 2013-01-29 | International Business Machines Corporation | Method and apparatus for a service control layer |
US7870305B2 (en) * | 2007-03-09 | 2011-01-11 | Microsoft Corporation | Proxy association for devices |
US8260839B2 (en) * | 2007-07-16 | 2012-09-04 | Sap Ag | Messenger based system and method to access a service from a backend system |
US8892454B2 (en) * | 2007-09-27 | 2014-11-18 | Sap Se | Configuration of web services |
US20090113077A1 (en) * | 2007-10-26 | 2009-04-30 | Torbjorn Dahlen | Service discovery associated with real time composition of services |
US7895226B2 (en) * | 2007-11-30 | 2011-02-22 | Sap Ag | System and method for translating and executing update requests |
US7987266B2 (en) * | 2008-07-29 | 2011-07-26 | International Business Machines Corporation | Failover in proxy server networks |
-
2008
- 2008-07-31 US US12/183,976 patent/US8560713B2/en active Active
-
2009
- 2009-07-31 CN CN200910162279.2A patent/CN101640700B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1762139A (zh) * | 2003-03-24 | 2006-04-19 | 诺基亚公司 | Imc中的请求重定向处理 |
Also Published As
Publication number | Publication date |
---|---|
US8560713B2 (en) | 2013-10-15 |
US20100030881A1 (en) | 2010-02-04 |
CN101640700A (zh) | 2010-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101640700B (zh) | 为智能设备中介企业服务访问的方法和系统 | |
Pivoto et al. | Cyber-physical systems architectures for industrial internet of things applications in Industry 4.0: A literature review | |
US20220150307A1 (en) | Method and system for sensing information, imputing meaning to the information, and determining actions based on that meaning, in a distributed computing environment | |
Chen et al. | Ubiquitous manufacturing: Current practices, challenges, and opportunities | |
Gama et al. | Combining heterogeneous service technologies for building an Internet of Things middleware | |
Chaqfeh et al. | Challenges in middleware solutions for the internet of things | |
Uckelmann et al. | Architecting the internet of things | |
Guinard et al. | Interacting with the soa-based internet of things: Discovery, query, selection, and on-demand provisioning of web services | |
CN101854338B (zh) | 订户设备及其订阅管理方法、实时通信方法和系统 | |
US8812684B1 (en) | Messaging configuration system | |
Jun et al. | System architecture for closed-loop PLM | |
CN102346685A (zh) | 集成适配器管理系统和方法 | |
EP3745675A1 (en) | Service layer resource propagation across domains | |
EP1909222B1 (en) | Message engine searching and classification | |
US11940778B2 (en) | Method of commissioning a field device in an industrial system network | |
Angulo et al. | A service-oriented architecture and its ICT-infrastructure to support eco-efficiency performance monitoring in manufacturing enterprises | |
Al Sunny et al. | Mtcomm: A semantic ontology based internet scale communication method of manufacturing services in a cyber-physical manufacturing cloud | |
CN105827671A (zh) | 分布式使用、集中管理的系统平台以及门户服务器 | |
Redeker et al. | A digital twin platform for Industrie 4.0 | |
Gosewehr et al. | Assessment of industrial middleware technologies for the PERFoRM project | |
CN1333342C (zh) | 交换基础设施系统和方法 | |
Guinard et al. | Restifying real-world systems: A practical case study in rfid | |
Jin et al. | IoT device management architecture based on proxy | |
Shah et al. | IoT gateway for smart devices | |
CN104881760B (zh) | Erp系统间的数据通讯方法、装置以及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |