规模可变的网络服务架构的制作方法

文档序号:6411845阅读:229来源:国知局
专利名称:规模可变的网络服务架构的制作方法
技术领域
本发明涉及网络架构,网络架构规模和网络服务请求的发送。
当前的网络服务,包括因特网服务,通常需要用户直接调用服务。一旦服务被调用,该被调用的服务负责实施该请求。例如,在因特网上,个人通过使用他或她的PC(Personal Computer,个人电脑)提交请求来调用服务。该被调用的服务实施该请求。
作为一个具体的例子,个人可以使用著名的网站Amazon.com来订购Elmore Leonard的新书“Tishimingo Blues”。用户点击Amazon网站上与书名对应的一系列图标,然后通过输入一系列送货和支付信息来付帐,从而提交该订购。一旦被提交到Amazon,订购被Amazon处理,书被运送给该人。
在有些情况中,网络服务节点可以创建并维护数据库以自动将结果返回访问该节点的人。例如,许多网站基于个人优先的购买或查询创建了偏爱信息。软件“cookies”被存储在个人的PC上,并在个人访问网站时被自动发送到网站。Cookies标识了连到该服务节点的终端(通过代理(surrogate),个人),该人的偏爱信息被网络节点从数据库中取出,并基于该偏爱信息为个人创建采购建议。然而,该交付的偏爱信息例行地由网站实体自己根据它自己的商业目的生成和提供。例如,它们并非响应用来调用该网站的设备来被形成或预先提供,也不为用户调用的服务而定制。
这种安排有许多缺陷。一个主要的缺陷是由用户调用并进而选择服务节点来为他或她的请求服务。然而,这要求用户知道如何构造请求,浏览网络并找到服务节点。然而,用户找到的服务节点可能不是最优的供应者。例如,住在欧洲的用户可能请求位于怀俄明州的网站为其提供服务,从而导致额外的运送花费和延迟,而本地有另一个替代选择可以为该请求提供更快更便宜的服务。
用户直接请求网络服务节点,和由该服务节点请求的服务的另一个缺陷是服务节点会被用户请求所湮没。这会导致对请求的服务的延迟。当另一个服务节点本可能立即为过量的用户提供等价服务时,这种情况就更成为缺陷。
由用户直接访问网络服务节点的另一个缺陷是,该用户必须知道他或她需要该服务并生成和手工的输入请求以主动地访问该服务节点。例如,如果用户要把一件来自Gap的丝绸衬衫在错误的水温下放入洗衣机中,但并未意识到这一点,这与即使Gap网站也许包含它的产品的洗涤说明也没有什么不同。甚至对于那些可以自动向访问该服务网站的用户提供偏爱信息的服务节点的情况,用户必须首先访问该网站,即便如此,由该网站返回的偏爱信息由网站生成,也许对用户当前的需要毫无用处。
本地网络具有某些类似的特色和缺点。例如一个工作设施可以在每个入口处都有连接到设施服务器的读卡器。当工人在其中的一个读卡器刷他或她的卡时(从而在系统中识别他或她自己),数据库被访问以确认该人现在是否被雇佣。如果是,服务器响应读卡器,返回信号以打开门锁。同样的,该人通过提供ID给读卡器直接调用服务,并且被调用的服务提供结果(门的开锁命令)。
继续这个本地网络的例子,在服务请求中除个人ID外可能有超过一个参数被提交到服务器。例如,设施可以有一些安全房间,对其的访问被严格限制给某些员工。当个人在特定的读卡器前刷ID卡的时候,该人的ID和读卡器的位置(两个参数)被用于在数据库里搜寻,以确定该人是否被允许访问与该读卡器对应的房间。如果是,服务器发送开锁命令,如果否,门仍保持锁住。
服务请求中还可以考虑更多的参数。例如,服务器也可以考虑用其他参数来判断是否允许该人访问房间。例如,如果服务器反映该人在正常营业时间工作,而他在凌晨一点在安全房间的读卡器上刷ID卡,那么门仍然保持锁住。
即使在所描述的本地网络环境中,用户必须知道服务并且主动调用服务。所依赖的数据库只是针对特定的功能,比如为一个入口开锁,并且不适应其他设备。如果多个用户同时调用服务,网络服务器也可能被湮没。即使有多个服务器能够容纳额外的服务请求,请求的发送可能不会按最有效的方式来调用。
因此,本发明的目的之一是提供网络架构,来提供传感器读取或系统参数的自动生成和传送,包括那些用来组成请求的基本部分的用户输入。本发明的目的还包括提供网络架构,用以自动接收这些参数,将这些参数处理为相应的动作请求,并发送这些动作请求到适当的网络节点来为该动作服务。本发明的目的还包括,在适当的时候,请求被发送以调用多个服务或服务提供者为该请求服务。
本发明的目的还包括,本发明的网络架构是规模可变的,以避免当通过多个用户输入的参数来生成多个动作请求时所产生的延迟。因而,网络架构允许在网络中交替地改变发送到能够为该请求服务的供选择的服务节点,也是本发明的目的。本发明的目的还包括,网络架构是可扩展的,以包括新的或复制的服务节点,并且本发明的网络架构可以映射到许多不同的网络拓扑结构,从本地网络到大规模网络,例如因特网。
因此,本发明提供在网络上生成和处理请求的系统和方法。组成请求的基础的一个或多个参数被在用户端生成。参数包括标签标识(TagID,标签ID)和对象标识(Object ID,对象ID)。标签ID可以是与用户/人相关联的标识或者也可以是和产品相关联的标识。标签ID可以包含在物理个体中,例如产品中嵌入的磁条或个人的ID卡上的磁条。标签ID也可以是非物理标识,例如与个人或产品关联的序列号,产品ID,用户ID,等等。对象ID可以是任何设备,系统或被调用的服务的标识。
标签ID,对象ID和任何其他参数被从用户节点传送到存有动作表,搜寻表,数据库,或者类似模块的网络节点(鉴于描述的特性,将在下文中使用“动作表”)。传送的参数被用于在动作表中搜寻相应的操作或动作(在下文中被引用为“动作”)。
动作表中与参数相对应的动作也可以在存有动作表的节点上被全部或部分的执行。作为另一种选择,该动作也可以指定网络中的一个服务节点为其服务,该动作被发送到该指定的服务节点,该动作在那里被执行,并且结果被生成和处理。
本发明还包含用来为网络中的用户提供定制服务的系统。该系统包含至少一个源设备,该源设备提供用户和与用户相关联的产品两者之一的标识(标签ID),和定制服务的标识(对象ID)。并且它包含了与动作表相关联的处理器。处理器从至少一个源设备接收标签ID和对象ID,并至少使用收到的标签ID和对象ID在动作表中搜寻相应的动作。系统中的服务节点接收动作并至少实施动作的部分执行,从而生成包含定制服务的结果。
本发明还包含在网络上提供定制服务的方法(见

图1a)。该方法包含生成用户和与用户相关联的产品两者之一的标识(标签ID)和该服务的标识(对象ID)的步骤。标签ID和对象ID被传送到分离的处理节点。在处理节点上至少基于接收到的标签ID和对象ID确定动作。该被确定的动作被执行,并且基于被确定的动作生成结果,生成的结果包含定制的服务。
本发明还包含搜寻和发送服务,用以通过网络将定制的服务提供给最终用户。服务包括接收用户和与用户相关联的产品两者之一的标识(标签ID)和该服务的标识(对象ID)。标签ID和对象ID被处理,并且和接收到的标签ID和对象ID相关的动作被确定。基于被确定的动作,动作的执行和结果的生成被初始化,生成的结果包含定制的服务。
图1是本发明的网络的首选实施例;图1a是包含在本发明中的方法的实施例;图2是本发明的网络的示范实施例;图3是本发明的网络的另一个示范实施例;图4也是本发明的网络的又一个示范实施例。
参考图1,它显示了包括本发明的网络10。在用户端,设备或者系统22被显示为网络的用户节点,并且通常代表用户端到网络的入口点。该设备或系统22,或者像下面进一步描述的那样,通过设备或系统22被调用的服务,由“对象ID”标识。另一个标识参数在用户端被生成,即“标签ID”,它标识了用户、用户代理人、或者利用设备或系统22的对象,或其他调用了由对象ID标识的服务的对象。标签ID可以由与设备或系统22相关联的输入22(i)输入,或者它可以由设备或系统22内部生成。标签ID和对象ID是被从设备或系统22传送进网络的参数。图1中标注为“其他”的附加参数也可以被传送进网络。例如,像在下面进一步描述的那样,其他参数可能包括例如位于或靠近输入22(i)的相关传感数据。
当需要的时候,输入22(i)——它可以是读取器、传感器、触摸板、键盘、等等——提供在相关联的设备或系统22上的标签ID的输入。例如,输入22(i)可以是读取衬衫标签上条码(标签ID)的条码扫描仪。作为另一个例子,输入22(i)可以是读取员工标识(标签ID)磁条的磁传感器。作为另一个例子,输入22(i)可以是一个用于读取包含RF标签的员工标识(标签ID)的RF标识读取器。例如,这样的RF标签可以包含无线转发器(transponder),用来在非易失性存储器上存储ID数据,并通过调制由RF标识读取器生成的RF谐振频率来传送ID数据。可以有与这种读取器相关联的组件,用以提供进一步对标签ID的处理和/或格式化。例如,如果输入22(i)是磁传感器,那么可以有A/D转换器和微处理器来接收磁数据并把标签ID重新格式化为与网络兼容的形式。尽管在图1中只显示了一个设备或系统22,人们应该理解,可能存在许多设备(由设备/系统22N,和可选输入22N(i)代表)来实施本质相同的功能接收和/或生成并且传送标签ID,对象ID和其他参数(如果有的话)到网络10中。这些设备或系统22可以相象和/或不同。
标签ID,对象ID和任何其它来自读取器20的参数被传送到网络10中的动作表节点30。动作表节点30可能是存有动作表的服务器。动作表中包含许多动作,其中每一个是一个或多个参数的功能。这样,对于特定的标签ID,对象ID和任何其它由服务器从读取器20接收的参数,服务器使用参数作为索引在动作表中搜寻相应动作。
从动作表中取得的与标签ID,对象ID和任何其他从读取器20接收到的参数对应的动作通常也指定服务节点来为该动作服务。参考图1,它显示了在网络10中的多个服务节点1,…,N,…,M,它们与动作表节点30相链接。图1显示出服务节点N被指定来实施从动作表取得的动作。相应的,包含该动作的格式正确的控制命令被从动作表节点30的服务器传送到服务节点N,例如,也包含在一个服务器(或多个服务器)中。一旦被服务节点N接收,该动作被执行并且相应的结果被生成,初始化,处理和/或由服务节点N输出。
例1图2显示本发明在本地工作环境中的实现,例如大型的工厂联合体(plant complex)。办公室服务器130,它可能是PC,支持动作表并且也提供服务或结果。各自配属有读取器122(i)-126(i)的三台咖啡机122-126位于联合体各处。每个咖啡机122-126与办公室服务器130接驳,例如通过有线或无线连接。例如,读取器122(i)-126(i)是读取工厂员工标识卡上的RF标签的RF标识读取器,或读取工厂员工标识卡上的磁条的磁卡读取器,它给出员工标识号。该员工标识号就是标签ID。
读取器122(i)-126(i)可以被集成到咖啡机122-126,或配属到,或再不然,关联到咖啡机122-126上。在咖啡机上与处理相关联的电子仪器可以存在于咖啡机中,它的读取器中,或两者皆有。为了方便起见,在描述中每个咖啡机122-126和它各自的读取器122(i)-126(i)将被视为一个综合的设备。
服务器130上的动作表存储了每个员工的偏爱信息,它反映员工在咖啡机122-126上冲制咖啡的喜好。该偏爱信息是可以通过使用员工标识号(标签ID)和咖啡机122-126的对象ID从动作表中取得的。例如,这样,当员工A在咖啡机124的读取器124(i)刷他或她的标识卡时,咖啡机124内部的电子仪器读取员工标识号并且把它连同咖啡机124的对象ID一起传送到服务器130。(作为另一种选择,咖啡机的对象ID可以在咖啡机被单独地有线连接到服务器130处被服务器130内部识别)。服务器130使用对象ID和标签ID搜询服务器130上的动作表并取得员工A的咖啡偏爱信息(例如,脱咖啡因咖啡,加牛奶和糖)。信号被返回到咖啡机124以指出咖啡该被如何冲制。内部电子处理仪器处理接收到的命令,且咖啡机124为员工A输出其喜爱的咖啡。
咖啡偏爱信息(动作)可以作为附加参数的功能,例如一天里的时间、日期、温度、等等。在服务器130上这些参数可以从外部的传感器,内部的时钟和日历,等等处接收到。例如,如果是夏天,员工A相应的偏爱可以是冰咖啡。因此,动作表中对一个员工可以有多个条目。
某些附加信号处理步骤可以被包含在信号生成和处理中。例如,咖啡机122-126的内部电子处理仪器可能包含A/D转换器,用来把RF、磁、光、或者其他员工标识卡上的代码转换成数字信号,并传送到服务器130上。作为另一种选择,服务器130可以进行A/D转换。可能需要附加的信号处理,来把员工标识号变换为可以被服务器使用来访问动作表中对应偏爱信息的格式。服务器130返回给咖啡机的反映员工A偏爱信息的信号也可以被重新格式化以便正确的控制咖啡机的混合硬件。
服务器130发送控制信号到员工刷他或她的ID卡所在的咖啡机。尽管他们每个都是咖啡机,但最好每个咖啡机122-126有一个唯一的对象ID,以便服务器130可以识别提交参数的那台特定的咖啡机,为特定的咖啡机生产正确的控制信号,并发送控制信号结果到正确的咖啡机。这可能会要求在动作表中为每个员工标签ID和每个咖啡机对象ID创建单独的咖啡偏爱信息条目。作为另一种选择,员工咖啡偏爱信息的单个动作表条目可以使用员工标签ID和咖啡机122-126的任何一个的对象ID来访问。
图2的例子中,至少部分服务节点和动作表节点一起存在于办公室服务器130上。那就是说,从动作表取得的动作的执行和结果的生成,也就是基于取自动作表的员工咖啡偏爱信息的咖啡机控制信号,是由服务器130生成和输出的。结果的另一部分,也就是正确的咖啡冲制方法,由咖啡机执行。
在大型的工厂联合体中,大量员工在特定的时间可能聚集在有限数量的咖啡机上。例如,早晨的15分钟咖啡休息时间。如果每个排队的员工必须手工输入他或她的咖啡选择,那么只有有限数量的员工可以喝到咖啡(导致员工的不满)或者咖啡休息时间被非正式的延长(导致工厂失去效率)。因而,本实施例的网络可以使咖啡机被最大限度的使用以满足最大数量的员工。
网络和动作表可以控制工厂联合体中的其他设备,或者系统或被扩展以把它们作为被添加的新设备或系统包含进来。例如,也在图2上显示出的糖果机128,129,连同与它们相关联的读取器128(i),129(i)。动作表130也包含将每个员工的员工ID(标签ID)和每个糖果机的对象ID与糖果偏爱选择相关联的数据。动作表130因而具有与员工咖啡偏爱信息相关联的条目(通过员工的标签ID和咖啡机的对象ID被引用),和与员工糖果偏爱信息相关联的条目(通过员工的标签ID和与糖果机关联的对象ID被引用)。
与动作表130关联的软件基于收到的参数确认查询动作表中的哪个条目。当一个员工,例如员工A,在糖果机128的读取器128(i)刷他或她的卡时,服务器130收到员工A的标识号(标签ID)和糖果机128的对象ID。服务器130使用这两个参数(标签ID和对象ID)来查询动作表。员工A的糖果偏爱信息被从动作表中取得,且相应的命令信号被从服务器130返回到糖果机128来指示要被分发的偏爱的糖果。
工厂设施的网络和动作表130可以被进一步扩展以包含其他设备或系统。例如,当新的轮班工人到来,并且员工在与各自的工作站相关联的读取器上刷他或她的卡时,工作站上的设置可以被自动重新调整。员工ID(标签ID)和工作站标识(对象ID)被发送到服务器130,在那里该员工与这个工作站相关的设置被获取并返回到工作站用以自动重新调整设置。
例2图3显示了本发明在因特网环境中的实现。在这个例子中是在家庭中,动作表被存储在本地环境中的服务器或PC230上。家中的设备,血压监视器222有相关的输入222(i),例如触摸板。个人A在触摸板222(i)上输入ID码(标签ID),然后绑在血压监视器222上,它读取他或她血压的读数。由标签ID,血压监视器标识(对象ID)和血压读数组成的参数由血压监视器222的内部电子处理仪器传送到服务器230。服务器230使用标签ID和对象ID参数来从动作表中取得相应的动作,例如,个人A的医生使用的医疗监视服务的服务器250的网址,和把个人A的血压读数和标签ID传送到医疗监视服务器250来处理的指示。
服务器230使用取得的网址,通过因特网240,来与医疗监视服务的服务器250链接。个人A的标识和血压读数被从家庭服务器230连同对处理的指示(动作)一起传送到医疗监视服务的服务器250。一般而言,由医疗监视服务服务器实施的处理会包括为个人A编辑血压读数,连同该读数的日期和时间。编辑过的读数然后会被个人A的医生从服务器250上取得并加以分析。
然而,如果医疗监视服务收到反常的读数(例如不寻常的高),相应的补充指示(动作)会被从与服务器250关联的存储器中取得。该补充指示可以包括发送个人A的标识,网址和血压读数到专门的心脏监视服务服务器252以及由专门的心脏监视服务服务器252进行附加处理的指令。该补充指示也可以包括读取个人A预先存储在服务器250的存储器上的附加相关信息(例如个人A的年龄,性别,体重,正常血压,医师,等等),并将附加信息连同个人A的标识,网址和血压读数一起传送到专门的心脏监视服务服务器252。
当信息被接收以后,由专门的监视服务服务器252实施的处理可以是对血压的扩展分析,并考虑了取得的关于个人A的附加相关信息。扩展分析的发现的问题总结被返回到血压监视器222的网址并被显示,例如,在其上的液晶显示器上(未在图3示出)。例如,如果扩展分析指出了危险的血压等级,警报会被返回并指示个人A立即寻求医疗援助。服务器252也可以在与服务器252关联的存储器中寻找个人A的医师的电话号码,并且向该医师的办公室发起关于个人A的状况一系列的相应电话警报。
因而,由服务器230传送的动作会导致一系列服务器上的一系列的服务管道线或服务链。另外,上面例子中的动作表可以被认为是分布在一些网络节点之间,即本地服务器230和医疗监视服务服务器250。因而本地服务器230包括了可被视为是“主要的”动作表,它包含了医疗监视服务的服务器250的网址,和为了进行处理而传送血压读数和个人A的标签ID到医疗监视服务器250理的指示。对医疗监视服务器250的情况,可被视为在相关联的存储器中的“次要动作表”包括了当检测到不正常的血压状况时,用于发送个人A的标识、网络地址、血压读数和其他相关的信息到专门的心脏监视服务服务器252来处理的补充指示。
作为另一种选择,血压读数参数(连同标签ID和对象ID参数一起)可以被动作表服务器230用来在动作表中搜寻相应的动作。如果血压读数在正常范围内,取得的动作将会是发送血压读数参数和标签ID到医疗监视服务服务器250的指示以被加到A优先阅读的编辑好的数据中,如同上面描述的那样。如果血压读数非常高,由动作表服务器230取得的动作可能会指示把血压读数和其他相关信息,连同关于处理的指示依照上文描述的方式被直接发送到专门的心脏监视服务服务器252。对于极高的读数,无须进一步的分析,从本地服务器230的动作表取得的动作可以是请求本地救护队的服务。这样,从动作表取得的动作将可能调用多个服务或结果,取决于接收到的参数。
通过把动作的服务分离到连入因特网的服务节点,这个示范实施例大大的扩展了通过从动作表取得的动作可以导致的结果的数量和类型。那些可能被存储在动作表中的动作,和当那些动作被参数调用时可以取得的相应结果,可以是由通过连接到因特网的可访问的服务器来提供的任意结果,而不是局限于那些可以通过本地设备,系统或软件处理而取得的结果,如在例1中那样。,例3图3的系统也可以被扩展。为包括用于其他家中或本地环境里的设备或系统的其他读取器。和其他附加的设备和/或系统一起,服务器230上的动作表被相应地扩展,以便包括与标签ID,对象ID和任何其它从其它设备和/或外部传感器接收到的参数相应的动作。
另外,本发明的动作表可以容纳与上文给出的例子中直接关联个人标识的标签ID,或关联本地设备或系统的对象ID不同的或更抽象的参数。例如,在图3中,PC224包括了能让用户进入支持本发明的网络的入口结点,PC224有与其他参数一同被传送到网络的内部标识,从而组成标签ID。(PC的标签ID可以作为用户或家庭的标签ID被查看,但是它与上面描述的情景不同,因为它通常不需要由PC的用户手工输入标签ID)在一个特殊的例子中,PC的桌面上有“纸张”的图标,许多家庭都会点击它,比如当他或她想要为家庭办公室再订购标准数量的纸张时。通过点击纸张图标,PC224把标签ID和与纸张订单相关的参数传送到服务器230。前面的例子中的对象ID是直接与本地设备相关联的,例如自动售货机或血压监视器(从而可以可被看作“设备ID”,或者可以叫做,“输入ID”或“读取器ID”)。然而,同样可以注意的是,在这些前面的例子中的对象ID也可以被看作是标识了用户要求的服务的,这在前面的例子中正好是由本地设备提供的。在这个例子中,纸张订单参数与和PC关联的个人或家庭所要求的远程提供的服务相关联。从而,纸张参数被归类为对象ID(作为另一种选择也可以被视为“服务ID”)。服务器230使用该标签ID和对象ID参数来从动作表中取得相应的动作。取得的动作可以是,例如,用以从特定的官方供应网站订购特定数量和类型的纸张而发送的指示,它与家庭办公室的标准纸张订单相对应。该订单被服务器230格式化并通过因特网240发送到官方供应服务器254。
例4图4显示了在因特网环境中实现本发明的另一个示范实施例。在这个例子中,动作表被保存在集成到因特网中的独立服务器330。虚线左边是多个设备332a-f,它们接入因特网并提交诸如标签ID和对象ID等与本发明一致的参数。设备可以按地点编组,例如家、办公室、游乐园、大学、工厂,等等,如同显示在组302a中的设备322a、322b,和显示在组302b中的设备322c、322d、322e所表现的那样。其他设备可以是可移动的并且不必限制地点,例如笔记本电脑、PDA、手机,等等,如设备322f所表现的那样。
如图所示,动作表存在于服务器330上,它构成因特网330中的独立节点。同样显示出的是附加的因特网节点350a,350b,350c,…,350n,…,它们是本发明的服务节点。该附加的节点350a,350b,350c,…,350n,…理论上可以是任何连接到因特网的服务器,并可以生成结果或不然则执行功能。这样,如同图4中的服务服务器350n所表现的那样,潜在地有大量服务节点与符和本发明的动作表服务器330交互。
在上面的实施例中,参数在设备上生成并传送到动作表。例如,标签ID,对象ID和其他可选的参数可以由设备332a上的用户发起生成。设备322a通过因特网340与动作表服务器330链接,并把参数传送到服务器330。然后该处理像先前描述的实施例那样继续进行,也就是,提交的参数,包括标签ID,对象ID和任何其他参数,被用于在动作表中搜寻相应的动作。服务器330发起该取得的动作。例如,基于该取得的动作,动作表服务器330可以通过因特网340链接服务服务器350b(如动作表服务器330和服务服务器350b之间的虚线所表现的那样),基于取得的动作把命令提交到服务器350b,服务器350b执行该动作并生成与该动作相应的结果。
生成的结果可以被从服务服务器350b通过因特网340传送回设备322a。作为另一种选择,服务服务器350b的结果可以调用其他服务服务器的服务或因特网之外的服务,生成与取得的动作相对应的进一步的结果。作为另一种选择,支持动作表的服务器330可以将结果直接通过因特网传送回设备322a。一般来说,先前实施例的例子可以被容易的修改成在连接到因特网的独立服务器330上包含动作表。如将在下面进一步描述的那样,该实施例是为了提供更经济的规模和动作表服务,它可能被扩展成不确定数量的用户、设备和服务。现在给出这个实施例的一些详细的例子。
在一个上面例1中给出的那个工厂中包含自动售货机的实施例变体中,咖啡机制造商可以为它的客户提供服务,在这个例子中,是为工厂设施所有者提供服务。在图4中,咖啡机可以被视为在位置302b上的设备322c-e,位置302b即工厂。像上面所描述的那样,每个咖啡机322c-e有员工ID卡读取器(但没有单独在图4中画出),从而允许每个员工在机器上得到咖啡时提交标签ID。每个咖啡机也保存标识该咖啡机的对象ID。例如,当员工A的标签ID在咖啡机322c被读取时,与因特网340连接的内置微处理器就会与动作表服务器330链接,并把标签ID和咖啡机322c的对象ID传送给动作表服务器330。
在一种情况下,咖啡机制造商可以自己维护动作表服务器330。员工的标签ID列表以及他们相应的咖啡偏爱信息被提交给该制造商并且周期地更新。制造商使用这个数据来在动作表上创建咖啡偏爱信息条目,每条偏爱信息由标签ID和工厂302b的每个咖啡机322c、322d、322e的对象ID来引用。这样,当员工A的标签ID和咖啡机322c的对象ID通过因特网340被提交到动作表服务器330,员工A的咖啡偏爱信息被从动作表中取得。在这种情况下,动作表330为咖啡机322c生成一个对应于员工A的咖啡偏爱信息的命令,并通过因特网340把该命令返回到咖啡机322c的源因特网地址。咖啡机322c接收到命令并依据员工A的偏爱信息分配咖啡。咖啡机制造商可以提供类似的服务给其他办公室、工厂,等等。例如,图4中的位置302a可以是拥有两台咖啡机322a和322b的办公室,他们都能通过因特网340访问咖啡机制造者的动作表服务器330。
在另一个变体中,动作表330是独立的服务提供者。那也就是说,它不是由咖啡机制造商维护的,而是为制造商或工厂所有者提供收费服务。在那种情况中,动作表可以为许多独立的客户端和/或消费者提供许多类型的服务或动作的动作搜寻服务。这样,动作表服务器330自己消耗资源,基于取得的偏爱信息直接处理,并向咖啡机322c返回分配的命令也许就不是令人满意的了。因此,服务器330可以主要作为一个路由器,在它上面,由服务器330从动作表取得的动作可以包含简单命令,并被发送到另一个服务服务器执行,在那里调用服务并满足用户的需要。
例如,从动作表取得的对应于员工A的标签ID和咖啡机322c的对象ID的动作,可以是定制的包含员工A的数据的咖啡机制造商网站(例如服务服务器350a)上的网络地址。详细的说,定制的网络地址可以包含对应员工A的咖啡偏爱信息的咖啡机322c的控制命令。另外,由于对象ID是唯一标识具体源咖啡机322c的标识的标记,则该对象ID更具有具体设备标识的性质(或者可以说,由具体设备提供的服务的标识)。在这种情况下,从动作表接收到的定制的网络地址是为员工A在具体的源咖啡机322c上的偏爱信息而定制的。因而,该在服务服务器350a上定制的网络地址也可以包含咖啡机322c的源网络地址。
在对应于员工A的标签ID和咖啡机的322c对象ID的定制网络地址被从动作表取得以后,动作表服务器330处理该地址并链接服务器350a上的员工A的定制网络地址。在服务服务器350a,对该定制网络地址的调用发起了处理过程,并在咖啡机322c处给员工A提供咖啡服务。这样,服务服务器350a链接到能从定制的网络地址中找到的咖啡机322c的网络地址。同样从定制的网络地址找到的针对员工A偏爱信息的控制命令,由服务器350a传送给咖啡机322c。从而依据员工A的偏爱信息在咖啡机322c上分配咖啡。
在上面刚刚描述的例子中,对象ID唯一的标识了源设备。从而,在动作表或服务节点上,源设备网络地址与对象ID相互关联。在上面刚刚描述的实施例的一个变体中,对象ID并不唯一的标识该具体的源设备。取而代之的是,对象ID可以是一类设备或系统的标识,或可以说是,由一类设备或系统提供的服务的标识。在那种情况下,具体源设备的网络地址可能需要被传送到服务服务器,以便结果能被返回到该具体的源设备。因为图4中动作表是独立因特网节点(330)的一部分,当设备322a-322f链接动作表服务器330来传送参数时,动作表服务器330会自动接收到具体源设备322a-322f的网络地址。从而,动作表服务器330自然地知道源设备的网络地址,并从而也可以传送具体源设备的源网络地址给服务节点(连同从动作表中取得的动作一起)。这允许服务节点通过因特网把结果返回给源设备。
例如,在上面的咖啡机的例子中,如果咖啡机322c-e的制作和样式相同,那么他们每一个都响应同样的分配命令并且因而可以都有相同的对象ID。一个动作被保存在动作表服务器330上的动作表里,并与员工A(标签ID)和相应的所有三台咖啡机的对象ID相对应。为标签ID和对象ID(适用所有三台相同的咖啡机322c-e)存储的动作可以是咖啡制造商的服务器350a上的定制网络地址。该咖啡机制造商的服务器350a上的网络地址是为员工A在对象ID标识的咖啡机类别上的偏爱信息而定制的,例如咖啡机322c-e。
当员工A在一个特定的咖啡机(例如咖啡机322c)上刷他或她的ID卡时,动作表服务器330接收员工A的标签ID和与咖啡机类别对应的对象ID。另外,动作表服务器330通过现有的因特网协议,知道具体源设备322c的网络地址。使用标签ID和对象ID,动作表服务器330在咖啡机制造商的服务器350a上调用从动作表中取得的定制网络地址,并且也把该具体源咖啡机322c的网络地址传送给咖啡机制造商的服务器350a。就如前面所指出的,在咖啡机制造商的服务器350a上,该定制网络地址的调用发起了处理过程并导致了咖啡服务被提供给员工A。和对象ID对应的咖啡机类别上,针对员工A偏爱信息的控制命令,包含了源咖啡机322c,可以在定制网络地址上找到。咖啡机制造商的服务器350a使用从动作表服务器330取得的咖啡机322c的网络地址,把该控制命令发送回具体的咖啡机322c。
上面提供的例子也表明,服务不是一定要在个人调用服务的设备上被提供。例如,在咖啡自动售货机的例子里,员工可以在办公室的一处发起服务,而咖啡被办公室另一处的咖啡机分配。例如,员工A在他或她的办公室中的PC桌面上可以有“咖啡”图标。当该图标被点击时,咖啡被分配在办公室中最近的咖啡自动售货机上,例如咖啡机322c。这样,员工A可以点击该图标并且走过走廊到达咖啡机322c,在那里将准备好他或她的那杯咖啡。
在特殊的情况下,PC将员工A的标签ID和咖啡机322c的对象ID预先保存在存储器里。当桌面的“咖啡”图标被点击,PC把员工A的标签ID、对象ID、以及如果必要的话,具体的咖啡机322c的网络地址传送给动作表服务器330。由动作表服务器330和咖啡机制造商的服务器350a执行的处理以前面描述的方式之一进行,导致咖啡根据员工A在咖啡机322c上的偏爱信息被分配。
如上面所说明的那样,动作表服务器330可以是商业服务,它主要在动作表中存储适应于针对某个具体的人的,多种不同的设备,系统或服务由对象ID标识的动作。动作表服务器330支持的各种各样的服务可以彼此不同并且分别支付费用。通过输入由标签ID、对象ID和任何其他相关参数引用的新的动作,动作表也可以扩展以并入新的服务。
例如,除自动咖啡分配服务外,动作表服务器330可以另外提供的另一个服务是用于洗衣机的衣服报警服务。这样,除了上面描述的由接收咖啡偏爱服务的个人的标签ID,和用于提供该服务的咖啡机的对象ID来引用的咖啡偏爱信息条目之外,动作表进一步包括与在线衣服报警服务相关的标签ID和与服务相关的对象ID相对应的动作条目,这将在下面进一步描述。
在衣服报警服务的例子中,设备322b是家庭302a中的洗衣机。例如,洗衣机包括一个磁读取器,用来读取被放入洗衣机的衣服上的磁条。磁条可以被制造商嵌入衣服成品并用该制造商和衣服成品的标识来编码,这将在下面进一步描述。与洗衣机322b中的微处理器相关联的存储器存储所有的包含标签ID的衣服标识。为了描述方便,下面假定一个代表了蓝色Gap棉T恤的衣服标识可被读取和存储。一旦所有的衣服都被加入,用户在机器上输入需要的设置(例如“热水洗,冷水漂洗,定期轮换”)并按开始按钮。
当按下开始按钮时,因为在洗衣机322b的存储器中存储衣服标识,洗衣机并不立即开始,而首先调用衣服报警服务。洗衣机322b的微处理器连接到因特网340并与动作表服务器330链接。洗衣机322b把许多参数传送给动作表服务器330,即衣服标识(标签ID)和洗衣机的设备标识(对象ID),以及洗衣机设定(另外的参数)。动作表服务器330使用收到的标签ID和对象ID,从动作表中取出与蓝Gap棉T恤的洗涤指导相关的对应的动作。
例如,该动作可以包括在Gap服务器(例如服务器350c)上与蓝棉T恤的洗涤指导相关的定制的网络地址。接收到的动作可以指示动作表服务器330链接到服务器350c上的定制Gap网络地址,并且把洗衣机的设置连同洗衣机322b的源地址一起发送到那里。通过链接到定制的Gap网络地址并发送输入的洗衣机设置作为输入,Gap服务器被调用,以依据它的蓝棉T恤的Gap洗涤指导评价洗衣机设置是否适当。如果洗衣机设置不适合这件T恤,Gap服务器350c把一个警报结果返回到洗衣机322b。如果设置是适当的,继续进行的信号被发送到洗衣机322b,以便洗衣机322b可以启动它的洗涤循环。正如前面提到的,Gap服务器350c可以直接把该结果返回到洗衣机322b,因为动作表服务器330把洗衣机322b的网络地址和其他洗衣机设置参数一起发送到了Gap服务器350c。
可以再一次的看出,这个实施例中的动作表服务器330主要担当了搜寻表,把动作命令发送到因特网上的服务服务器350a,350b,…,350n,…的路由器。通过把执行从动作表服务器取得的动作分离出来,并把取得的动作放在因特网上单独的服务服务器上执行,动作表服务器可以承受更多的点击,因为处理受限于取回相应的命令和发送到服务服务器。另外,可以提供服务的活动的数量和种类可以引人注目地扩展,理论上包括所有连接到因特网上,并提供服务和结果的服务器。因为动作表包含统一的格式(那就是动作由标签ID,对象ID和可能的其他参数引用),动作表可被容易地扩展,以包括已存在服务的新条目,也包括新服务的新条目。例如,所有在这里给出的图4有关的具体例子,和许多其他例子,都可以被动作表服务器330的动作表支持。另外,如果活动和点击的数量增长,另外的动作表服务器可以被引进来增加处理速度。作为另一种选择,每个动作表服务器可以有单独的数据库,在其上存储某组服务的条目。
作为当前实施例多功能性的最后一个例子,使用了先前纸张订单例子的一个变体。在这个例子里,设备322f是包含处理和显示功能(例如PDA功能)的手机。手机322f包含用户可以选择Domino的比萨饼图标。当他或她想要在最近的Domino比萨饼店下标准的订单时,通过选择该图标,手机处理器通过因特网340把手机标识号(标签ID)和Domino比萨标识(对象ID)传送到动作表服务器330。需要注意的是在这个例子中,手机所传送的必须通过无线网关访问因特网。
动作表服务器330接收来自手机332f的手机标识号(标签ID)和Domino比萨标识(对象ID)参数,并使用它们来从动作表中取得相应的动作命令。例如,从动作表中取得的动作的第一个部分包括在手机服务供应商的服务器(例如服务器550d)上的一个特殊的网络地址。它是为手机322f根据标签ID定制的动作表服务器330链接到该定制的网络地址,并且,通过这个动作,在手机服务供应商服务器350d上调用的处理过程包括(1)测定手机322f的大概位置,众所周知这是通过为手机322f服务的基站;和(2)把手机322f的大概位置从手机供应商服务器350d传送到动作表服务器330。
在动作表服务器330接收到手机322f的位置之后,从动作表取得的动作的第二个部分被发起。从动作表取得的动作的第二个成分也包括在Domino服务器(例如服务器350e)上与手机322f标签ID相对应的特定网络地址。该在Domino的服务器350e上的特定网络地址包括手机所有者的标准订单。动作表服务器330链接在Domino的服务器350e上的具体网络地址并把手机位置传送给Domino的服务器350e。通过链接Domino的网络地址,在Domino的服务器350e上调用的服务包括确定离手机位置最近的Domino的比萨饼店,并把该标准订单连同手机号码一起提交给被确定的最近的Domino的比萨饼店。接收的Domino的比萨饼店制作适当的比萨饼并呼叫该手机以找出交付比萨饼的地址。
这样,这个例子再一次显示了在获得最后的结果之前,从动作表取得的动作被连续的服务器所执行(它返回到动作表服务器节点)。在这个例子里,简单的按下用户手机的图标就自动导致了来自最接近用户的服务中心(Domino的比萨饼店)的标准服务(比萨饼订单)的交付。
上面例子里的在动作表中与标签ID,对象ID和任何其他参数相对应的条目的编译和预存储,可以通过无数技术上众所周知的标准方法和编程技术中的任何一个来实施。被选择来建造动作表的具体方法或技术很可能将与动作表服务器扮演的角色相符合,例如它是否在为工厂或其他本地环境的一个或多个服务而服务的本地服务器上,或在由独立的商业实体为许多不同的终端服务和用户提供的独立的服务和路由节点上。在后一个例子里,动作表服务器可以提供因特网“帐号”,用户通过它可以访问并调整它们的动作表条目以改编他们的偏爱信息。
尽管本发明说明性的实施例已经参考附图在这里进行了描述,需要理解的是本发明并不局限于那几个明确的实施例,需要确切指明的是,本发明的范围是由附加的权利要求的范围所定义的。
权利要求
1.一种在网络上提供定制服务的系统,该系统包括a)至少一个源设备(22,22N,122-126,222,224,322a-f),提供用户和与用户相关联的产品两者之一的标识(标签ID),和定制服务的标识(对象ID);b)有相关联的动作表的处理器(30,130,230,330),该处理器(30,130,230,330)从至少一个源设备接收标签ID和对象ID,该处理器(30,130,230,330)至少用接收到的标签ID和对象ID在动作表中搜寻相应的动作;c)服务节点(服务节点1-N,250-254,350a-n)以接收该动作并至少实施部分动作的执行,从而生成包含定制服务的结果。
2.权利要求1中的系统,其中,至少一个源设备(22,22N,122-126,222)有接收标签ID作为输入的相关输入(22(i),22N(i),122(i)-126(i),227(i))。
3.权利要求1中的系统,其中,接收动作并实施至少部分动作的执行的服务节点对应至少一个源设备(122-126),源设备(122-126)生成包含定制服务的结果。
4.权利要求3中的系统,其中,单独的服务器包括处理器和服务节点。
5.权利要求1中的系统,其中,至少部分由对象ID标识的定制服务由源设备(22,22N,122-126,222,224,322a-f)提供。
6.权利要求5中的系统,其中,由服务节点(服务节点1-N,250-254,350a-n)至少实施部分动作的执行,来生成包含基于接收到的动作生成控制命令,并把该控制命令传送给源设备(22,22N,222,224,322a-f)的结果,控制命令被提供给与提供的定制服务相对应的源设备。
7.权利要求1中的系统,其中,处理器(30,130,230,330) 接收除标签ID和对象ID以外至少一个参数,处理器(30,130,230,330)使用该接收到的至少一个参数连同标签ID和对象ID一起在动作表中搜寻相应的动作。
8.权利要求1中的系统,其中,接收动作并至少实施部分动作执行的服务节点包含在与包含处理器(30,230,330)和相关联的动作表的网络节点分离的网络节点上(服务节点1-N,250,252,254,350a-n)的服务服务器。
9.权利要求1中的系统,其中,至少部分由对象ID标识的定制服务由外部服务供应者提供。
10.权利要求9中的系统,其中,由服务节点(服务节点1-N,250,252,254,350a-n)至少实施部分动作的执行,来生成包含基于接收到的动作生成控制命令,并把该命令传送给外部服务供应者的结果,由外部服务供应者提供与该定制服务相对应的命令。
11.权利要求1中的系统,其中,系统提供多个定制服务,每个服务由对象ID标识,每个这样的定制服务提供给多个标签ID,动作表具有为每个这样的定制服务的对应于每个对象ID和标签ID的组合的至少一个动作。
12.权利要求11中的系统,其中,系统包含多个服务节点(服务节点1-N,250,252,254,350a-n),在动作表中搜寻到的特定动作确定接收该动作的服务节点。
13.权利要求1中的系统,其中,由服务节点(服务节点1-M,250-254,350a-n)实施的至少部分动作的执行,包括生成辅助动作和把该辅助动作传送到第二服务节点(服务节点1-M,250-254,350a-n),第二服务节点使用辅助的动作来生成包含定制服务的附加的结果。
14.权利要求1中的系统,其中,至少部分由对象ID标识的定制服务由与源设备(22,22N,122-126,222,224,322a-f)分离的服务设备提供。
15.权利要求14中的系统,其中,由服务节点(服务节点1-N,250-254,350a-n)实施至少部分动作的执行来产生结果,该结果包括基于接收到的动作生成控制命令,和将控制命令传送到服务设备,提供给服务设备的控制命令对应于提供的定制服务。
16.一种用于在网络中提供定制服务的方法,该方法包含的步骤有a)生成用户和与用户相关联的产品两者之一的标识(标签ID),和服务的标识(对象ID);b)把标签ID和对象ID传送到独立的处理节点(30,130,230,330);c)至少基于接收到的标签ID和对象ID在处理节点(30,130,230,330)的动作;d)执行确定的动作并基于该确定的动作生成结果,生成的结果包含定制服务。
17.权利要求16中的方法,其中,生成标签ID和对象ID的步骤发生在用户附近的源设备(22,22N,122-126,222,224,322a-f)上。
18.权利要求16中的方法,其中,生成标签ID和对象ID的步骤包含至少一个附加参数的生成。
19.权利要求16中的方法,其中,确定在处理节点(30,130,230,330)上的动作的步骤是基于除接收到的标签ID和对象ID外的至少一个附加参数。
20.权利要求16中的方法,其中,基于确定的动作执行动作和生成结果的步骤发生处理节点(30,130,230,330)之外。
21.权利要求20中的方法,其中,至少部分动作的执行和结果的生成发生在服务节点(服务节点1-N,250-254,350a-n)。
22.一种通过网络把定制服务提供给终端用户的搜寻和路由服务,该服务包括接收用户和与用户相关联的产品两者之一的标识(标签ID)和服务的标识(对象ID),处理标签ID和对象ID并确定与接收到的标签ID和对象ID对应的动作,并初始化动作的执行和基于被确定的动作结果的产生,生成的结果包括定制服务。
23.权利要求22中的服务,其中,该服务被网络上独立的动作表节点(30,130,230,330)支持。
24.权利要求23中的服务,其中,动作的执行和结果的生成通过根据该动作的命令信号从动作表节点(30,130,230,330)到网络中的至少一个服务节点(服务节点1-N,250-254,350a-n)的传送来初始化的。
全文摘要
在网络上提供定制服务的系统和方法。该系统包括至少一个提供用户和与用户相关联的产品两者之一的标识(标签ID),和定制服务的标识(对象ID)的源设备。它进一步包括支持动作表的处理器。该处理器从至少一个源设备接收标签ID和对象ID,且至少使用接收的标签ID和对象ID来在动作表中查找对应的动作。系统中的服务节点接收该动作并且实施至少部分动作的执行,从而产生包含定制服务的结果。
文档编号G06F9/50GK1662883SQ03814434
公开日2005年8月31日 申请日期2003年6月16日 优先权日2002年6月20日
发明者Y·阿萨发蒂, A·亚斯辛 申请人:皇家飞利浦电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1