存储用于管理系统中的通信的指令的计算机可读介质的制作方法

文档序号:6424000阅读:110来源:国知局
专利名称:存储用于管理系统中的通信的指令的计算机可读介质的制作方法
技术领域
本发明涉及一种方法,一个用户单元和一个存储用于管理一个系统中的通信的指令的计算机可读介质,该系统包括至少一个能够从一个表面读取信息的用户单元,以及多个设计为与用户单元通信的服务器。
背景技术
信息常通过笔和纸写下和通信。但是这种基于纸的信息是难以有效地管理和通信的。
计算机在越来越广泛的范围内被用于管理和通信信息。信息通常由键盘输入,并存储在计算机的内部或外部存储器中,例如硬盘中。但是通过键盘输入信息是一个相对慢的过程,并且该过程中有相当大的发生错误的危险。在计算机屏幕上读取大量文本也不是特别方便。图形信息,例如图画或图像,通常通过单独的读图器输入,例如扫描仪或类似的设备,其程序是耗时、繁重的,并且给出的效果常常不能令人满意。但是,一旦信息在计算机里,则易于与他人通信,例如以通过互联网连接的电子邮件或SMS(短信息服务)信息的方式,或者以通过传真调制解调器的传真方式。
本申请人已在国际申请WO 01/16691中提出对此问题的一个弥补方法,该申请在此处被结合进来作为参考,其中申请人设想了使用一种具有一个带位置编码的书写表面的产品。通过这种对表面上的多个位置进行编码的位置编码,可以对写在书写表面上的信息进行电子记录。信息是由一种数字笔写入的,这种笔具有一个传感器,该传感器检测位置编码,并计算对应于写入信息的位置。该产品还具有一个或多个激活图标,当这些图标被数字笔检测到时,会使得笔启动相应的预定的操作,从而利用了由笔记录的信息。
更具体地,位置编码的产品具有一个嵌入的功能,即产品上的不同位置,例如激活图标内的位置和写入表面内的位置,被用于不同的功能。另外,位置编码能够对大量位置的坐标进行编码,能编码的位置数目比单个产品所必需的位置数目多得多。从而,位置编码能够被看作形成一个虚拟表面,它由位置编码能编码的所有位置定义,虚拟表面上的不同位置用于不同的功能和/或操作。
上述概念可用于多个不同的用途。笔和位置编码产品的结合可用于计算机、PDA、移动电话或类似设备的输入设备。例如,写在位置编码的记事本上的文本和草图可通过笔传输到计算机。另外,通过笔和位置编码产品的结合可直接从产品经由笔(通过产品上用于全球通信的位置编码)进行全球通信。例如,由笔注册的信息可被转化为传真消息、电子邮件或SMS消息,然后从笔发送到接收者。另外,笔和位置编码产品的结合可被用于电子商务中。例如,数字笔可用于通过广告中用于这种服务的位置编码从杂志中的位置编码广告中订购产品。
通过一个设计为包括数字或相应设备的系统,除了笔和多个位置编码产品外,还至少包括一个查找服务器,其上运行一个称为纸查找服务PLS的服务,以及多个应用程序服务器,作为系统中的操作者或服务处理程序SH。查找服务器用一个数据库来管理位置编码定义的虚拟表面以及与此虚拟表面有关的信息,即虚拟表面上的每个位置的功能和与每个这样的位置相关的操作者。应用程序服务器是一个代表数字笔实现服务的服务器,例如存储或传递数字信息,或启动信息或项目传输到接收者。
在上述的这样一个系统中,要预知数字笔如何与单个或多个查找服务器以及多个应用程序服务器通信是非常困难的。系统为希望设计一个服务或应用程序的操作者提供了很多种可能,例如,在某个特定的服务中要涉及到哪一个或哪几个进一步的服务或应用程序服务器,使用一个特定服务时数字笔和不同服务之间的相互作用,在使用一个服务时数字笔执行什么操作等。此外,查找服务器的操作者将从能够控制通信的数据以及数字笔和不同操作者之间的通信本身中获益,尤其是在启动服务时。另外,系统中可以有多个查找服务器,具有不同的职能,从而需要一个机制来控制数字笔与哪个查找服务器通信。
这样,需要解决的一个问题是如何以简单有效的方式协调和控制如上所述的系统中的通信。

发明内容
本发明的一个目的是提供一个方案,用于控制一个能够从一个表面读取信息的用户单元和运行支持用户单元的服务的服务器之间的通信。
另一个目的是提供一个由用户单元使用的通信协议,一个查找服务器通过该通信协议能够控制与用户单元有关的通信。尤其地,一个目的是使得一个查找服务器可独家控制一个与数字笔通信的应用程序服务器能够访问哪些信息,该信息是由数字笔存储或读取的。
根据本发明,具有独立的权利要求1中定义的特征的一种方法、具有独立的权利要求23中定义的特征的一个用户单元以及具有独立的权利要求24中定义的特征一个计算机可读介质解决了此问题,并实现了这些目的。
本发明可用于这样一个系统中,该系统包括至少一个能够从一个表面读取信息并将至少一部分信息与一个服务器通信的用户单元,一个存储与从表面读取的信息有关的信息管理规则的查找服务器以及至少一个应用程序服务器。根据本发明,一个用户单元从查找服务器接收一个或多个具有控制数据的指令。然后用户单元能够根据这些控制数据判定哪些特定的信息数据能够被一个应用程序服务器所访问,即被允许与一个应用程序服务器通信。然后,当从一个应用程序服务器接收指令以用特定的信息数据响应时,用户单元根据控制数据判定这些特定的信息数据是否被允许通信。如果允许,则特定信息数据在一条消息中被传输到一个接收应用程序服务器。
要理解不同的应用程序服务器将提供具有不同用途的服务。根据服务的类型,服务可能是便宜的或是昂贵的(对于使用服务的用户单元或提供服务的操作者来说)。例如,一个便宜的服务可以是一个只是使得用户单元能够定制某种类型的进一步信息的服务,而一个昂贵的服务可以是一个股票经纪服务。
使用本发明,系统中的一个查找服务器将使用其专用指令控制哪些信息将从用户单元通信到一个运行一个特定服务的应用程序服务器。这也意味着查找服务器将判定哪些由用户单元存储或读取的信息能够被一个应用程序服务器访问,哪些信息不能。查找服务器的操作者与应用程序服务器实现的一个服务的操作者达成一个协议,在该协议中查找服务的操作者保证服务的某些细节。例如,对于一个股票经纪服务,可保证只有此服务的操作者具有对一个与服务有关并由用户单元存储的帐号的访问权限。另一方面,对于一个只用于定制信息的较便宜的服务,实现此信息定制服务的应用程序服务器应该只能访问尽可能少的用户单元信息,例如用户单元存储的名称和街道地址属性。
另外,本发明使得一个查找服务器能够控制用户单元涉及的通信的安全级别。通过对某些服务或用户单元定制提供较高的安全度,这些服务或定制可以以较高的价格提供,增加操作者的收入。
来自查找服务器的特定指令的控制数据可对应于定义用户单元存储的一个或多个属性的一个或多个参数,或定义一个页地址的参数,即用户单元能够从中读取信息的表面的一个限定的区域的地址。在第一种情况下,这意味着用户单元能够传送对应于用户单元存储的一个属性参数值的特定信息数据。在后一种情况下,这意味着用户单元能够传送对应于用户单元从特定页读取的位置的特定信息数据。
根据本发明的用户单元能够响应查找服务器专用的一套特定的指令。这些专用指令根据其将要详细说明的定义和使用具有不同的用途,并且包括控制哪些由用户单元存储或读取的信息数据应该能够被一个应用程序服务器所访问的指令。
用户单元通常能够从一个以特定信息数据响应的指令中提取一个标识一个特定接收应用程序服务器的地址。当特定信息数据的接收应用程序服务器是与接收以该特定信息数据响应的指令的应用程序服务器不同的服务器时,需要此地址。
有利地,用户单元被设计为从从接收应用程序服务器中接收到的一条后续指令中提取结果数据,其中接收应用程序服务器是用户单元向其发送带有特定信息数据的消息的应用程序服务器。这些结果数据被用户单元存储,并在之后作为由应用程序服务器执行的一个操作的结果指示传输给查找服务器,从而通信以这样一种方式被控制,使得通过它能够跟踪用户单元涉及的活动的结果。系统中的操作者,例如查找服务器的操作者以这种方式将具有对用户单元定制者和/或一个操作者(例如一个应用程序服务器实现的一个功能的操作者)所执行的操作以及整个系统中使用的服务的记帐进行管理的基础。
具有用户单元接收的指令的消息以及具有从用户单元发送的信息数据(作为其结果)的任何消息定义了一个用户单元来回。在用户单元传输从一个表面读出的数据的通信会话中涉及一个或多个这样的来回。
当启动一个通信会话时,用户单元执行一套预先存储的启动指令。这些指令通常引起一条消息传输到存储与不同表面区域有关的信息管理规则的查找服务器。此外查找服务器还负责用户单元的通信行为的初始控制。有利地,用户单元能够响应来自查找服务器的一条指令将新的指令与其启动程序关联起来,这条指令是被预定义为启动这样一个操作的。另外,如果用户单元已检测到一个定义发送操作的特定表面区域的信息,则与此区域有关的预存储指令被执行。
本领域技术熟练者将意识到本发明的用户单元可为任何类型的能够从一个表面读取信息并且至少能将一部分信息在一个通信网络上通信的手持设备。
本发明的其他特征和优点将从以下参考附图的对于示例性的实施方式的说明中显示出来。


现在将参考附图更详细地说明本发明的示例性的实施方式,附图中图1显示一个包括用户单元和运行支持服务的服务器的系统中的元件和它们的基本的相互作用;图2是实现一个用户单元的一支数字笔的内部的示意图;图3显示用户与一个远程网络服务器或一个本地服务器通信时使用的协议栈;图4显示了根据一个示例性实施方式的一个用户单元的操作的流程图;以及图5显示了说明根据本发明的另一个实施方式的一个通信会话中用户单元的操作及其与支持服务的通信的图。
具体实施例方式
图1中显示了一个包括用户单元和支持服务的系统的内部结构。此内部结构及其部分操作以前已经在本申请人的国际专利申请PCT/SE00/02640、PCT/SE00/02641以及PCT/SE0002659中进行了说明,这些专利申请在此处均被结合进来作为参考。
图1的系统包括多个用户单元100、多个具有位置编码120的产品110,多个网络连接单元130,以及多个运行支持服务的服务器140、150、160。服务器包括至少一个远程查找服务器140,一个本地查找服务器150以及多个应用程序服务器160。为便于说明,图1仅包括一支实现一个用户单元的数字笔100,一个具有一个位置编码120和一个激活图标125的产品110,一个实现一个网络连接单元的移动电台130,一个运行一个远程纸查找服务(远程PLS)的远程查找服务器140,一个运行一个本地纸查找服务(本地PLS)的本地查找服务器150以及一个运行一个应用程序服务(AS)的应用程序服务器160。
产品110具有一个编码图案,该编码图案由数字笔110解码为产品110的表面上的位置。编码图案编码比产品110的表面大得多的整个表面上的位置。根据检测到的位置,数字笔判定表面上的一个或多个绝对坐标。
整个表面被有利地分成多个段,每个段被分成多个架,每个架被分成多本书,而每本书被分成多页。一个绝对坐标将被数字笔判定为位于某一特定页。页可由1.2.3.4(段.架.书.页)格式标识,其中1.2.3.4表示段1中的架2上的书3的第4页。此符号定义了一个页地址。
当用户在产品110的表面上移动数字笔100时,通过检测表面上的位置并判定相应的绝对坐标来记录信息。这些绝对坐标或坐标所属的页地址通过移动电台130通信到本地PLS服务器150、运程PLS服务器140或应用程序服务器160。如果本地PLS服务器150具有蓝牙收发器,则数字笔100可直接与本地PLS服务器150通信。远程PLS在一个存储器或一个连接的数据库(未显示)中存储关于整个表面上所有坐标的细节。这也包括存储关于整个表面被分割成的页的细节。类似地,本地PLS服务器150存储关于一个或多个限定的表面区域的坐标和页的细节,这些表面区域由一个或有限个用户使用,并且这些表面区域是整个表面的一部分。远程/本地PLS服务器包含根据与一个特定的坐标或一个特定的页地址关联的管理规则处理接收到的信息的软件,接收到的信息至少包括坐标内容或页地址内容。
对于用户来说系统是易于使用的,因为用户不必亲自定义记录的信息如何被管理。当用户启动一个传输信息的通信对话时,对此信息的管理是根据用户记录的坐标和/或由数字笔100记录的信息所在的页地址来控制的。
当数字笔100的用户希望启动信息传输时,则“点击”激活图标125。在此情况下,激活图标的至少一个位置的记录将被用户单元100识别为一个发送区域的坐标,此发送区域与一个特定的发送指令相关联。缺省情况下,此发送指令包括一个预定的PLS服务器(远程PLS服务器140或本地PLS 150)的地址。也可存在两个发送区域,一个与远程PLS服务器相关联,一个与本地PLS服务器相关联。
由产品110的表面组成其一小部分的整个表面的位置编码图案可通过多种方式构造,但它具有一般的特征,即如果一个特定的最小尺寸的图案的任何部分被记录,则其在整个位置编码图案中的位置可被明确地判定。另外,如上所述整个位置编码图案被分割成页。
有利地,位置编码图案具有2000年5月26日提出申请的发表的国际专利申请WO 00/73983或2000年10月2日提出申请的国际专利申请WO 01/26032中所示的类型,这两个申请均属于本申请人。在这些图案中,每个位置由多个记号或符号编码,每个符号用于几个位置的编码。位置编码图案是由少量类型的符号构造的。
WO 00/73983中显示了一个例子,其中一个较大的点表示一个“1”,而一个较小的点表示一个“0”。
WO 01/26032中显示了当前最首选的图案,其中一个点或记号相对于一个光栅点的四个不同的位移编码了四个不同的值。此图案由标称间隔0.3mm的小点构造而成。图案中任何包含6×6个这样的点的部分定义一对绝对坐标。因此每对绝对坐标由位置编码图案的一个1.8mm×1.8mm的子集所定义。通过判定由用于读出图案的用户单元中的传感器检测到的6×6个点的位置,可通过插值以0.03mm的分辨率计算虚拟表面上的一个绝对位置。
此位置编码图案能够编码大量绝对位置。由于每个位置由6×6个点编码,每个点可具有四个值之一,因此可编码436个位置,这对于上述点之间的标称距离来说对应着一个4.6百万平方米的表面。
正如已提到的那样,整个表面宜分割为段、架、书和一本书的页。不同的不重叠的段用于不同类型的信息管理。通过页-书-架-段的定义可将整本书或整个架的一部分用于某个特定类型的信息管理的一个特定的部分。例如,特定的页可用于为一个运输公司收集的电子信息,其他页用于一个配送公司管理电子图片明信片,还有一些页用于将产品信息配送给某个特定产品的购买者,还有一些页用于记录始终转发给互联网上一个预定服务器的手写信息,而还有一些页用于发送图形电子邮件、SMS、传真等。
应用程序服务是在其中通过系统中的一个或多个预定的应用程序服务器控制信息管理的应用程序。如上文所指出的,一个公司或类似的团体可被分配整个表面上的一页或多页,或者最好是整个架,此后公司对整个表面上被分配的部分具有销售的权利。应用程序服务也可出现在一个本地服务器中,例如,与包括本地PLS相同的服务器,并且不同的本地应用程序可被分配给不同的页。在管理整个表面上的所有页的远程PLS服务器140中表明哪个公司对整个表面的哪部分具有权利。远程PLS服务器140将响应从数字笔100接收的包括至少一个坐标或一个页地址的信息,判定相应的表面区域分配给哪个团体(例如公司),以及如何处理信息。类似地,本地PLS服务器150将响应接收到的包括至少一个坐标或一个页地址的信息判定相应的表面区域分配给哪个本地应用程序,例如,日历、电子邮件或传真应用程序,以及如何处理信息。
图2显示了用户单元2的一个例子。用户单元包括一个外壳11,其形式大致像一支笔。外壳较短的一侧具有一个开口12,并将被手持为与一个具有位置编码图案的基底相接触或保持一个短距离。
用户单元(以下称为数字笔)实质上包括一个光学部分,一个电子电路部分和一个能量供给。
光学部分形成一个数字照相机,并包括至少一个发红外光的二极管13,用于照亮要成像的表面,以及一个光敏区域传感器14,例如一个CCD或CMOS传感器中,用于记录一幅二维图像。用户单元还可包括一个透镜系统(未显示)。红外光被位置编码图案中的符号(最好是点)吸收,以这种方式使之能够被传感器14所见。有利地,传感器每秒至少记录100幅图像。
笔的能量供应是从一个安装在外壳中的一个单元的隔断中的电池15获取的。但是笔也可连接到一个外部能量源。
电子电路部分包括一个信号处理器16,用于根据由传感器14读取的图像判定一个位置,更具体地包括一个具有一个微处理器的处理器单元,它被编程为记录来自传感器的图像,标识图像中的符号,并根据位置编码图案的成像的子集实时判定表面上的位置的绝对坐标。
从而位置判定由信号处理器16实现,因此信号处理器16必须具有使之能够定位和解码一幅图像中的符号并使之能够从这样获取的编码中判定位置的软件。本领域技术熟练者将能够从上述专利申请WO 01/26032中的说明中设计这样的软件。
信号处理器16还被编程为分析存储的坐标对,并将这些坐标对转化为一个坐标链,此坐标链形成对于用户单元2如何在具有位置编码图案的表面上移动的说明。
信号处理器16不需要将所有记录的信息转发到同一个服务器。信号处理器16可被编程为分析记录的坐标,只转发由一个特定的坐标区域中的坐标所代表的信息。信号处理器16也可具有对发送到一个服务器的信息进行加密的软件。
数字笔包括可由位置编码图案编码的整个表面的位置编码图案的定义。从而,信号处理器可从一个判定的位置得出该位置属于整个表面的哪个区域。通常这样一个区域表示一个特定的页或一页上的一个特定的激活图标。
数字笔被设计为将位置编码的表面的由用户用数字笔生成的信息发送到一个本地或远程查找服务,或发送到一个应用程序服务。在根据图1的系统中,信息被无线地发送到实现网线连接单元的无线电台130,该无线电台又将信息发送到本地PLS服务器150,远程PLS服务器140或应用程序服务器160。网络连接单元也可为一台计算机或某种其他的适当的单元,这种单元具有到一个网络的接口,该网络可能是互联网、本地公司网络或一个电话网络。网络连接单元130也可组成笔100的一个集成的部分。所有记录的数据可被存储在一个缓冲存储20中,等待发送到接收服务器140、150、160。因此,笔100可以以单机图案工作,即笔100在有机会时发送信息,例如当它与网络连接单元130连接时,于是它从缓冲存储器20取出记录的信息。
除了发送由分析表面上的笔划生成的位置的绝对坐标以及页地址数据外,数字笔还能够将笔属性数据发送到一个服务器。这些属性以可由处理器16读写的可寻址值或字符串的形式存储在存储器20中。以下是一个示例性的,非完整的笔属性数据列表,其他属性可以很容易地想象出来。
PEN_ID -笔的唯一标识;PEN_SOFTWARE_VERSION -笔的软件的版本;TRANSACTION_DATA -上次处理的标识和状态;PEN_MANUFAXTURER_ID -笔制造商标识;LOCAL_URL-本地服务器的URL(统一资源定址器);PLS_URL -运行纸查找服务的远程服务器的URL;LAST_PROPERTY_UPDATE -上次约定的笔属性更新的标识;PEN_OWNER_NAME -不言自明的;PEN_OWNER_ADDRESS-不言自明的;PEN_OWNER_INVOICE_ADDRESS-不言自明的;PEN_OWNER_EMAIL -不言自明的;PEN_OWNER_HOME_PHONE -不言自明的;PEN_OWNER_CELL_PHONE -不言自明的;PEN_OWNER_BUSINESS_PHONE -不言自明的;PEN_OWNER_PAGER -不言自明的;PEN_OWNER_HOME_FAX -不言自明的;PEN_OWNER_BUSINESS_FAX -不言自明的;TXT_SYSTEM_ERROR -具有特定消息的字符串,在此情况下是发送请求过程中的错误。存在多个带有到用户的消息的字符串。
用户单元及与其相关的网络连接单元通常位于相当接近彼此的位置。用户单元和网络连接单元之间的通信,例如图1中的数字笔100和无线电台130之间的通信,可通过电线,红外幅射或无线电波实现,例如根据蓝牙技术,或某些其他用于短距离传递信息的技术。为了此用途图2中的数字笔具有一个收发器19,用于与外部单元进行无线通信,它宜为一个蓝牙收发器。
图3中显示了示例性的用于用户单元100(例如一支数字笔)和不同服务器上的支持服务之间的通信的协议栈。左侧显示了用于一支数字笔(PEN)和一个纸查找服务(PLS)之间或一支笔和一个提供服务的应用程序服务(应用程序服务处理程序)之间的在互联网上的通信的示例性协议栈。右侧显示了用于一支数字笔和一个本地服务器之间的通信的示例性协议栈。本地服务器可以是一个运行一个本地应用程序路由器服务LARS的本地个人电脑(运行为一个本地PLS)。另外本地服务器可运行一个本地应用程序服务。
数字笔和任何本地或远程服务器之间的通信是基于一套预定的指令的,这套指令共同定义了一个笔协议,PP。PP在一个安全笔协议SPP上实现,而安全笔协议SPP又在众所周知的HTTP协议上实现。在互联网的情况下,HTTP层是在TCP/IP、PPP以及蓝牙的RFCOMM框架上实现的,而在本地情况下,是直接在蓝牙的RFCOMM轮廓上实现的。这样,笔协议PP是实现属于本发明的通信方案的协议。安全笔协议SPP是本发明的申请人的私有协议,而笔API(应用程序编程接口)在PP上添加了一个抽象层,操作者在设计支持数字笔的服务时可使用此抽象层。SPP和笔API均不在本发明的范围内,将不再对其进行进一步说明。栈的其他部分是本领域技术熟练者已熟知的通信协议层。
指令由数字笔在一个从服务器发送出的HTTP响应(响应先前由笔发送的HTTP请求的)中接收。
一个HTTP响应中的一条接收到的消息由三个部分组成一个协议版本数据部分,说明响应的其余部分遵守什么版本的笔协议,一个带有关于响应的元数据的响应报头部分,以及一个包含多条具有参数的指令的指令数据部分。指令数据部分通过其预定的标识标识指令。每个指令标识伴有一个或多个由其各自的参数标识所标识的参数。每个参数标识伴有参数值,这些值可为布尔值、整数、字符串、字节流或者任何前面提到的类型的值的数组。
任何从数字笔发送的用户单元消息是在一个HTTP请求中发送的。用户单元消息被发送到一个特定的服务器,它包括四部分一个协议版本数据部分,说明请求的其余部分遵守什么版本的笔协议,一个带有关于请求的元数据的请求报头部分,一个具有记录的笔划数据的页数据部分,以及一个具有一个或多个笔属性的属性数据部分。属性数据部分通过其预定标识标识属性。每个属性标识伴有属性值,这些值可以是前述响应中的参数值类型中的任何一种类型。请求报头部分包括一个页地址和一个pidget(paper widget纸窗口小部件)标识。页地址是启动请求的一个发送区域或其他任何激活图标所在的页的页标识。页地址的固定比特位置依次代表一段,一架,一本书和一页。如前所述,一个页地址可表示为“段.架.书.页”。纸窗口小部件标识是所讨论的页上的发送区域(或激活图标)的标识。这种标识是必要的,因为多个激活图标可能位于同一页上。在同一发送会话期间,即同一处理期间,由特定页上的特定发送区域启动的来自数字笔的请求将包括页的页地址和发送区域的纸窗口小部件。
包括在笔协议中的每条指令的定义存储在数字笔100的存储器20中。当数字笔要执行关于一个特定指令的操作时,处理器16将在存储器20中查找相应的定义,此定义将控制处理器16的操作,从而控制数字笔100的操作。数字笔的一般操作,以及根据笔协议指令的特定操作是由由存储器20存储的计算机可执行元件控制的。从而存储器20实现了一个根据本发明的计算机可读介质,它存储了用于引起数字笔100操作的元件。但是,这种计算机可读介质也可在数字笔外部,用于供数字笔访问,或用于在以后的阶段中被发送和下载到笔100的存储器20中。
以下是笔协议PP包括的指令的非完整列表。此列表分成远程PLS服务器专用指令和公共指令。后者表示任何服务器,远程或本地PLS服务器以及任何应用程序服务器可通过这些指令控制数字笔的操作。
远程PLS服务器专用指令-grantPageDataAccess(pageAddress)参数pageAddress定义了在同一会话中能由addPageData指令访问的页。
-grantPropertyAccess(property identities)一个或多个属性标识参数定义了在同一会话中在一个addPropertyData指令中可访问哪个笔属性。
-internetInitialApplicationRequest(url)向提供的url发布一个请求。该指令意味着使用了下面的SPP协议。此指令也可包括一个定义所使用的SPP协议的最小版本的参数,以及一个定义所使用的SPP协议的最大版本的参数。另外,该指令可包括定义所使用的笔协议的最小和最大版本的两个参数。
-internetLookupRequest向PLS_URL属性定义的url发布一个请求。该指令意味着使用了下面的SPP协议。
-regVerticalApp(pageAddress,instructionscript)将由参数pageaddress定义的一页或多页与由instructionscript参数定义的一组指令关联起来。然后这些指令将在检测特定表面区域(例如一个发送区域)的位置时执行。
-setProperty(propertyID,value)为一个特定属性指定一个特定值。该值可为布尔值、整数、字符串、字节流或前述任一类型的值的数组。
-startTransaction(transID)此指令启动一个应用程序处理。参数标识处理,并且宜等于由远程PLS服务器计算的从1970年开始的以毫秒为单位的当前GMT(格林威治平均时间)。
-localLookupRequest
向LOCAL_URL属性定义的url发布一个请求。
公共指令-abortTransactionVerbose中止一个应用程序处理。
-addPageData(pageAddress)参数pageAddress指定了将要添加到一个请求的一个用户单元消息中的记录数据是来自哪页的。此指令要求发送指令的服务器具有读取相应的页数据的权利。这意味着服务器是远程PLS服务器,或者在会话早期已由远程PLS服务器调用了一个grantPageDataAccess指令,或者会话是一个本地会话并能由本地PLS服务器读取。
-addPropertyData(property identities)标识一个或多个笔属性的一个或多个参数。这些属性的值将被包括在(添加到)一个请求的一条用户单元消息中。此指令要求发送指令的服务器具有读取相应的属性的权利。这意味着服务器是远程PLS服务器或者在同一会话早期已由远程PLS服务器调用了一个grantPropertyAccess指令。
-commitTransactionVerbose提交一个处理,即,告诉笔服务已由服务器成功执行。
-internetApplicationRequest(url)向提供的url发布一个请求。该指令意味着使用了下面的SPP协议。
-localApplicationRequest(url)向提供的url发布一个请求。
参见图4,显示了根据一个示例性实施方式的一个用户单元的操作的流程图。注意下面说明的指令和参数只是例子。它们中的许多能被更改或由此处说明的且仍然处于图4的实施方式的范围内的其他适当的指令和/或参数所取代。
在步骤400中数字笔100在用户用数字笔在具有位置编码图案的表面120上制造笔划时,记录位置编码图案中位于区域传感器14的视野范围内的部分。处理器16将检测到的具有位置编码图案的表面上的位置转化为绝对坐标,并生成一个坐标链,说明在笔划期间数字笔如何在表面上移动。此坐标链也被称为笔划数据。根据这些坐标以及对坐标如何定义位置编码图案的整个表面的了解,处理器判定坐标所属的特定表面的相应的页地址。如果有任何坐标属于一个激活图标125,例如一个发送区域,则根据对什么坐标定义什么激活箱的认知判定相应的发送区域标识,即纸窗口小部件标识。
在步骤410中,数字笔100的处理器16执行一套预先存储的启动指令,这些指令具有多个预定存储的定义哪个数据发送到哪个服务器的参数。例如,如果处理器检测到某些记录的坐标属于一个定义一个互联网发送区域的激活图标125,则与此发送区域相关的预先存储的启动指令被执行。例如,启动指令可为-addPropertyData(PEN_ID,TRANSACTION_DATA,PEN_MANUFACTURER_ID,LAST_PROPERTY_UPDATE);-internetLookupRequest(PLS_URL).
第一个指令定义了要发送哪个属性数据。第二指令将指导数字笔将一个具有一个包括特定的属性数据的用户单元消息的HTTP请求发送到远程PLS服务器140。接收服务器由属性PLS_URL所存储的预定的URL地址所标识。
作为替换,如果检测到的坐标属于一个定义一个本地发送区域的激活图标125,则用户单元消息将被发送到本地PLS服务器150,且预先存储的启动指令看起来可以是-addPropertyData(PEN_ID);-localLookupRequest(LOCAL_URL).
如上文所指出的,定义什么属性数据发送到远程PLS服务器的启动指令宜包括属性TRANSACTION_DATA。此属性包括上一处理的标识以及上一处理的状态。此状态表示上一处理中涉及的一个应用程序服务器的一个活动的结果(例如,成功,失败,未决)。有利地,接收远程PLS服务器可根据接收到的处理数据记帐,例如,如果处理成功则对笔用户记帐,但如果状态显示处理由于某种原因失败则不记帐。这个在要发送的消息中包括上一处理的结果的操作如图4中的步骤420所示。另一个宜由启动指令发送的属性是LAST_PROERTY_UPDATE。此属性可由接收远程PLS服务器140用来判定它是否带有任何应该由笔作为一个更新的笔属性值存储的更新的信息。如果有,则服务器140在以后的阶段中将启动用指令setProperty存储一个或多个属性的新值,如下文所述。
将带有用户单元消息的HTTP请求发送到服务器如步骤430所示。如前所述,任何用户单元消息将包括检测到笔划的表面区域的页地址,以及如果任何激活图标笔划所“点击”,则将包括此激活图标的标识(纸窗口小部件标识)。通过执行HTTP请求的发送,数字笔启动一个发送会话。从而发送会话可由分别用internetLookupRequest指令或localLookupRequest指令将HTTP请求发送到一个远程或一个本地PLS服务器而由所述的笔所启动。当用internetLookupRequest指令发送HTTP请求时,这意味着笔协议PP将使用下面的安全笔协议SPP。SPP提供数字笔和远程PLS服务器之间的通信的加密。由于此加密,远程PLS服务器能够将一个预定的指令集中的指令(即远程PLS服务器专用指令)发送给数字笔,并且数字笔能够肯定此预定集中的指令是接收自特定的远程PLS服务器而不是任何其他服务器的。此加密可采用加密领域技术熟练者所熟知的技术。不管怎样,SPP协议的实现超出了本发明的范围。
任何由数字笔100接收的指令是在步骤440中在来自笔向其发送HTTP请求的服务器的一个HTTP响应中接收的。在HTTP响应中将接收到多种指令。响应通常将包括讨论过的限定指令集的指令。这种指令的典型例子包括用于更新存储在笔中的一个属性的指令,用于将一套启动指令与一个发送区域相关联的指令,以及启动特定应用程序处理的多个指令。
远程PLS服务器通过指令setProperty(propertyID,value)更新笔存储的一个或多个属性。例如,如果笔在其请求中发送具有值2的属性LAST_PROPERTY_UPDATE,则接收服务器将对照服务器存储的一个相应的属性更新值检查此值。如果两个值之间有差别,则服务器能够标识哪个属性需要被更新。例如,当笔在HTTP响应中接收到指令setProperty(PEN_OWNER_EMAIL,mr_X@company_Y.com)时,这意味着笔将存储其所有者的新电子邮件地址。此操作在步骤450中执行。如果不再接收到其他指令,则在步骤470中笔将终止会话,此后操作返回步骤400处理来自表面的新的记录的位置。
通过指令RegVerticalApp(pageAddress,instructionscript),一套的新的启动指令被关联到一个发送区域。例如,指令可涉及特定段/架/书上的所有页。这由页地址表示,例如,2.3.4.*表示第2段第3架第4本书的所有页。指令脚本包括坐标参数,并定义在笔检测到由页地址2.3.4.*定义的所有页上的坐标定义的一个发送区域的位置记录时执行哪个指令。应注意,新的指令可以以类似的方式关联到任何页上的任何激活箱。在步骤450中笔存储新的指令。如果不再接收到其他指令,则在步骤470中笔将终止会话,此后操作返回步骤400处理来自表面的新的记录的位置。
在步骤440中从远程PLS服务器接收到的指令的另一个典型的例子是启动一个应用程序处理并且通常涉及来自数字笔的笔划数据进一步发送。指令是由远程PLS服务器根据其存储的管理规则发送的,管理规则与通过来自笔的HTTP请求接收的页地址相关联。启动应用程序处理时接收到的指令的一个例子是(不包括参数)startTransaction;addPropertyData;addPageData;以及internetInitialApplicationRequest.
根据这些指令的定义的操作同样在步骤450中执行。
startTransaction(transID)指令启动新的处理。参数transID定义启动的处理,并且被笔作为此处理的TRANSACTION_DATA属性的一部分存储。有利地,处理标识是一个时间戳,例如从1970年开始的以毫秒为单位的当前GMT(格林威治平均时间)。有利地,笔可利用处理标识将其内部时钟与发送指令的远程PLS服务器的时钟同步。
addPropertyData(PEN_ID,PEN_OWNER_EMAIL)指令意味着标识的笔属性被笔包括在下一个要发送的用户单元消息中。由于此例中的指令是被远程PLS服务器调用的,因此之前不必有一个grantPropertyAccess指令。
addPageData(pageAddress)指令意味标识的页的笔划数据被笔包括在下一个要发送的用户单元消息中。这里指令是由远程PLS服务器调用的,因此之前不必有一个grantPageDataAccess指令。
internetInitialApplicationRequest(url)指令意味着笔在一个HTTP请求中将用户单元消息发送到由特定url标识的应用程序服务器,该应用程序服务器涉及当前处理。
在步骤450中执行上述指令,直到从笔发送HTTP请求,此后笔操作返回步骤430,在这里响应internetInitialApplicationRequest指令,用户单元消息被发送到标识的服务器。
例如,如果数字笔的用户在印在一个具有位置编码图案的表面上的一个广告上制造了某些笔划,然后通过“点击”广告的一个发送区域启动一个发送会话,则上述启动指令将产生对远程PLS服务器的一个HTTP请求,该请求中包括广告所印刷的表面的页地址以及被“点击”的发送区域的标识。根据与页有关的管理规则,来自远程PLS服务器HTTP响应包括用于控制笔发送一个HTTP请求到与页有关的操作者的指令,所述操作者通常是由广告商在一个应用程序服务器上运行的服务。在此例中,作为以上接收到的指令的结果,笔将向广告者发送其笔标识、其所有者电子邮件地址以及在广告上制造的笔划。这可能导致定制一个产品或定制产品的附加信息等。
在步骤430中由于从笔向应用程序服务器发送HTTP请求而导致的应用程序服务器的服务执行的操作可以是成功或由于某种原因出现故障。如果操作成功,则在步骤440中通过commitTransactionVerbose指令通信回复。则笔将在步骤460中在关于此处理的TRANSACTION_DATA属性中存储成功处理的指示。此后在步骤470中笔终止会话,并且操作返回步骤400。下次用户由于某种原因启动一个发送会话时,这个上次处理的TRANSACTION_DATA属性将被包括在对远程PLS服务器的HTTP请求中。
为进一步说明本发明的一个示例性实施方式,参考图5。图5显示一个数字笔500、一个远程PLS服务器510、一个应用程序服务器520以及另一个应用程序服务器530。一个操作者,即广告者“X”在具有URL“advertiser_x.com”的应用程序服务器520上运行一个应用程序服务,而另一应用程序服务由本地经销商“Y”在具有URL“local_dealer_y.com”的服务器530上运行。
回忆联系图4说明的例子,用户在一个广告上制造某些笔划,并“点击”了同一广告上的一个发送区域。图5中的步骤1显示了然后被发送到远程PLS服务器510并包括印有广告的表面上的页地址以及被“点击”的发送区域的标识的HTTP请求。步骤2显示HTTP响应从远程PLS服务器510发送回笔500,该响应中带有根据与所讨论的页有关的管理规则的指令。在此情况下指令为-startTransaction(transID);-grantPageDataAccess(1.2.3-4);-grantPropertyAccess(PEN_ID,PEN_OWNER_NAME,PEN_OWNER_INVOICE_ADDRESS);-addPropertyData(PEN_ID,PEN_OWNER_ADDRESS);以及-internetInitialApplicationRequest(advertiser__x.com).
与图4中的例子的一个不同之处在于发送一个grantPageDataAccess指令而不是addPageData指令。grantPageDataAccess指令将使用一个页地址参数定义页1.2.3.4(印有广告的表面的页)此后可由同一会话中的任何addPageData指令(即在应用程序处理期间)访问。grantPropertyAccess指令将以相同的方式定义应用程序处理期间服务器可访问的属性。指令将导致在步骤3中一个HTTP请求从笔500发送到使用URLadvertiser_x.com的应用程序服务器520,该请求的用户单元消息中有属性PEN_ID和PEN_OWNER_ADDRESS。
现假定此接收服务是广告商运行的中心服务,并且广告商希望将任何用户指示到一个本地经销商。例如,通过检测笔所有者的地址,服务确定与笔所有者相隔最近的广告的产品的本地经销商。在步骤4中advertiser_x.com的服务将通过以下指令把一个HTTP响应发送回笔500-addPageData(1.2.3.4);-addPropertyData(PEN_ID,PEN_OWNER_NAME,PEN_OWNER_INVOICE_ADDRESS);以及-internetApplicationRequest(local_dealer_y.com).
此指令导致在步骤5中一个HTTP请求从笔500发送到local_dealer_y.com运行的服务。请求包括一个用户单元消息,它具有来自页1.2.3.4的笔划数据以及属性数据PEN_ID、PEN_OWNER_NAME、PEN_OWNER_INVOICE_ADDRESS。如果产品的定购者可被服务,则在步骤6中本地经销商的服务以一个HTTP响应来响应请求,该HTTP响应是从应用程序服务器530到笔500的,并且包括一个commitTransactionVerbose指令,该指令包括一个要提交的参数集。如前所述此表示服务被成功执行的信息将在下一个由笔启动的发送会话中从笔500发送到远程PLS服务器510,如步骤7所示。根据此信息远程PLS服务器的操作者将对用户使用操作者提供的服务进行记帐。
此例说明同一个会话可包括多个来回,其中一个来回包括一个由笔发送到一个服务器的HTTP请求,以及一个随后由笔从同一服务器接收到的HTTP响应。
要理解可对现存的笔属性,现存的指令及其有关参数,以及指令的确切顺序进行许多不同的更改、修改或类似的操作。
因此,即使已参照本发明的特定示例性实施方式对其进行了说明,这些实施方式将不会限制如附录的权利要求书所定义的本发明的范围。
权利要求
1.一种管理一个系统中的通信的方法,该系统包括至少一个用户单元,该用户单元能够从一个表面读取信息并能将至少一部分信息传输到一个服务器,一个存储与从表面读取的信息有关的信息管理规则的查找服务器,以及至少一个应用程序服务器,该步骤包括以下步骤在用户单元处从查找服务器接收至少一个指令,该指令带有控制哪些信息允许被用户单元传输的控制数据;以及当从一个应用程序服务器接收到一个指令以特定信息数据响应时,在用户单元处根据来自查找服务器的指令判定所述特定信息数据是否允许被传输,并且如果允许被传输,则在一个用户单元消息中将特定信息数据发送到一个接收的应用程序服务器。
2.权利要求1中要求的方法,其中查找服务器是一个运行查找服务的远程网络服务器或一个本地服务器,其存储与从表面读取的信息有关的信息管理规则,其中应用程序服务器是任何运行被设计为响应来自一个用户单元的一条用户单元消息而执行一个服务操作的应用程序的服务器。
3.权利要求1或2中要求的方法,其中用户单元在接收到带有控制数据的指令时,根据由用户单元存储的一个指令集提供的一个定义执行与所述指令有关的操作。
4.权利要求1-3中任何一个要求的方法,其中判定步骤包括从从应用程序服务器接收到的指令中提取一个地址,该地址标识用户单元消息的接收应用程序服务器。
5.权利要求1-4中任何一个要求的方法,其中接收到的带有控制数据的指令被用户单元判定为被包括在一个由查找服务器专用的特定的指令集中。
6.权利要求1-5中任何一个要求的方法,其中控制数据对应于定义一个或多个由用户单元存储的属性的一个或多个参数。
7.权利要求1-6中任何一个要求的方法,其中所述特定信息数据包括至少一个由用户单元存储的属性参数。
8.权利要求1-7中任何一个要求的方法,其中控制数据对应于一个定义一个页地址的参数。
9.权利要求1-8中任何一个要求的方法,其中所述特定信息包括用户单元从一个表面上读取的位置的坐标。
10.权利要求1-9中任何一个要求的方法,其中从查找服务器接收一个带有控制数据的指令的步骤之前,有一个连同由用户单元执行一套预先存储的启动指令将一条用户单元消息从用户单元发送到查找服务器的步骤。
11.权利要求1-10中任何一个要求的方法,其中用户单元此外还执行以下步骤从向其发送用户单元消息的应用程序服务器接收一条带有结果数据的指令;从从应用程序服务器接收到的指令中提取结果数据;将结果数据作为由应用程序服务器执行的一个操作的结果的一个指示来存储;以及连同由用户单元执行一套预先存储的启动指令在一个随后的用户单元消息中将所述结果发送到查找服务器。
12.权利要求10或11中要求的方法,其中发送一个用户单元消息到一个服务器之后从同一个服务器接收至少一条指令定义了一个用户单元来回,其中用户单元启动的一个用于从用户单元发送数据的会话包括至少一个来回或多个后续的来回。
13.权利要求10-12中任何一个要求的方法,其中预先存储的启动指令包括一个标识查找服务器的地址参数,以及一套定义哪些用户单元属性将被包括在连同预先存储的启动指令的执行被发送到查找服务器的用户单元消息中的用户单元属性参数。
14.权利要求10-13中任何一个要求的方法,其中用户单元被设计为在执行预先存储的启动指令后从查找服务器再接收一条指令,该指令带有一个通过一个标识符标识一个特定会话的启动的属性参数;并以时间戳的形式存储该标识符。
15.权利要求14要求的方法,其中用户单元将其内部时钟与所述标识符同步。
16.权利要求13中要求的方法,其中用户单元属性参数集包括一个上次执行的属性更新参数,其中用户单元被设计为在执行预先存储的启动指令后从查找服务器再接收一条指令,带有一个属性的更新后的值;以及存储该属性的更新后的值。
17.权利要求10-13中任何一个要求的方法,其中用户单元被设计为要执行预先存储的启动指令后从查找服务器进一步接收指令,根据这些指令所述预先存储的启动指令集被更改或一个新的启动指令集被定义。
18.权利要求10-13中任何一个要求的方法,其中预先存储的启动指令是在用户单元启动一个用于发送从一个表面读取的信息的会话时由用户单元执行的,该会话在用户单元检测到从表面的一个特定发送区域读取信息时被启动。
19.权利要求18中要求的方法,其中所述发送区域被预定为与定义一个远程查找服务器的一个地址参数相关联,其中接收一条带有控制数据的指令的步骤包括接收一条带有基于由远程查找服务器存储的信息管理规则的控制数据的指令。
20.权利要求18中要求的方法,其中所述发送区域被预定为与定义一个本地查找服务器的一个地址参数相关联,其中接收一条带有控制数据的指令的步骤包括接收一条带有基于由本地查找服务器存储的信息管理规则的控制数据的指令。
21.权利要求1-20中任何一个要求的方法,其中任何从用户单元发送的用户单元消息包括一个用户单元的唯一标识。
22.权利要求1-21中任何一个要求的方法,其中从一个表面读取的信息包括一个被位置编码的表面的至少一个位置。
23.一种被设计为管理与一个系统的通信的用户单元,该用户单元能够从一个表面读取信息并能将至少一部分信息传输到系统中的一个服务器,系统包括一个存储与从表面读取的信息有关的信息管理规则的查找服务器以及至少一个应用程序服务器,用户单元进一步被设计为从查找服务器接收至少一条带有控制哪些信息允许被用户单元传输的控制数据的指令;以及当从应用程序服务器接收到一条指令以特定信息数据响应时,根据从查找服务器接收到的指令判定所述特定信息数据是否允许被传输,如果允许,则在一条用户单元消息中将特定信息数据发送到一个接收的应用程序服务器。
24.一种存储计算机可执行元件的计算机可读介质,在用户单元包括的微处理器上运行计算机可执行元件时,引起一个能够从一个表面读取信息并且能够将至少一部分信息传输到一个服务器的用户单元执行权利要求1-20中任何一个所陈述的步骤。
全文摘要
本发明涉及管理一个系统中的通信,该系统包括至少一个用户单元100,该用户单元能够从一个表面120读取信息,并能将至少一部分信息与一个服务器140、150、160通信,一个存储与从表面读取的信息有关的信息管理规则的查找服务器140、150以及至少一个应用程序服务器160。用户单元100从查找服务器140、150接收一条带有控制数据的指令,并根据这些控制数据判定特定的信息数据是否能响应一条来自一个应用程序服务器的关于这些特定的信息数据的指令被用户单元通信到一个接收应用程序服务器。
文档编号G06F15/16GK1522400SQ02813294
公开日2004年8月18日 申请日期2002年7月4日 优先权日2001年7月5日
发明者比约恩·弗兰森, 欧拉·桑德斯特伦, 桑德斯特伦, 比约恩 弗兰森 申请人:阿诺托股份公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1