用于通知应用能力的装置的制作方法

文档序号:6656025阅读:158来源:国知局
专利名称:用于通知应用能力的装置的制作方法
技术领域
本发明涉及通过对象交换协议通知应用能力,并且更确切地涉及通知被添加或者被修改的应用的能力。
背景技术
对象交换通常指的是诸如文件、图片、日历条目(vCal)和业务名片(vCard)的对象的交换。用于设备之间对象交换的一个众所周知的规范是由IrDATM(红外数据协会)规定的OBEX(对象交换)。尽管OBEX是为红外通信而规定的,然而它非常适合在诸如TCP/IP和蓝牙的许多其它的传送服务上使用。当应用于红外介质时,OBEX也被称为IrOBEX。OBEX对于ad-hoc(特设)无线链路尤其最佳。在诸如移动电话和PDA(个人数字助理)设备的许多移动设备中利用了OBEX。例如,OBEX可以用于服务安排设备之间数据项的同步的SyncML层功能。
IrDATM(红外数据协会)于1999年3月18日规定的“IrDA对象交换协议IrOBEX(IrDA Object Exchange Protocol IrOBEX)”,版本1.2,描述了OBEX协议和应用框架。OBEX协议是客户-服务器会话级协议,其为设备之间的会话指定了结构。OBEX协议还含有用于表示对象的模型。OBEX应用框架是建立在OBEX协议的基础上的。OBEX应用框架是为创建可互操作的设备的目的而设计的一套协定和服务。
OBEX能力服务是OBEX应用框架服务之一,并且其被设计以提供一种利用OBEX访问服务信息的通用方法。能力服务可以列出所支持的对象的类型以及关于特定类型的域或格式的细节。通过读取OBEX服务器的能力对象,OBEX客户机可以确定发送对象的最佳格式。OBEX客户机还可以确定究竟发送对象是否有意义。
能力服务基于两个OBEX对象,能力对象和对象配置文件(objectprofile)对象。能力对象含有关于设备的通用信息,包括所支持的服务和应用。对象配置文件对象含有设备支持的OBEX对象特有的信息。
能力对象包括三个主要部分通用信息、所支持的对象以及服务/应用信息。通用部分含有关于设备的通用信息。在这部分中包括诸如序列号和制造商的信息。所支持的对象部分被分成了两个子部分。第一部分,收件箱,列出了由用于OBEX事务处理的设备的收件箱所认可的对象。这就使得连接的设备在它启动传输之前就能够确定接受者是否会接受它想要发送的对象。所支持的对象部分提供了关于在设备中使用的但未在收件箱中允许的其它对象的信息。服务信息部分是为需要传送静态配置信息的应用使用而设计的。此处记录了诸如应用版本和所支持的选项的信息。
在设备的制造阶段期间存储能力对象。此后,能力对象不能够被改变。然而,当前设备中的许多能够将应用随后安装到以后的设备中。因此,关于制造之后的设备中的一些应用的信息有可能在能力对象中不可用。因而起到OBEX客户机作用的另外的设备在其接收能力对象的时候,并不能获得关于其它设备的能力的有效信息。

发明内容
现在提供一种用于通知应用能力的改进的解决方案。该改进是通过一种以独立权利要求中所声明的内容为特征的方法、数据处理设备和计算机程序产品来实现的。本发明的一些实施例在从属权利要求中进行了陈述。
根据本发明,将待存储的应用的特性(property)定义为特性信息作为对数据处理设备中该应用的添加或修改的响应。将所述特性信息存储到所述数据处理设备中用于动态特性信息的存储器。当需要为请求实体获取所述特性信息的时候,从所述存储器检索所述特性信息。然后可以通过对象交换协议将所述特性信息传送至所述请求实体。
提及应用特性应当被概括地理解为指的是特定应用、一组应用或由应用所提供的服务的任何特性。例如,应用特性可以是OBEX能力对象中所指定的应用的能力。
本发明的装置提供了这样的优点,即可以通过对象交换协议将新的或者已修改的应用的细节通知给其它的设备。这实现了一种容易的更新方法,其利用传输特性信息的设备的当前特性使一个或多个其它的设备保持最新。可以安排该更新以便用户不必对设备进行任何的改变,但是当添加、修改或删除应用时却可以自动地对特性和其它的步骤进行确定。根据本发明的一个方面,所述其它的设备然后可以根据接收到的(动态)特性信息来改变它们的功能性。例如,它们可以选择软件的已更新的版本而不是较早使用的先前的版本,作为对接收到的指示支持该新版本的特性信息的响应。
根据本发明的实施例,将所述特性信息存储到预定的目录或文件,并且将响应于请求的实体配置以从所述预定的目录或文件检索所述特性信息。因而,不必要从多个位置(例如从所述设备中所有应用的文件夹)搜索所述特性信息,而是可以从单独的目录或文件快速地检索所有的(动态)特性信息。
根据本发明的实施例,将所述特性信息确定为对正在安装或已经安装的新的应用的响应。因而,所述特性信息总是最新的,其还包括最近添加的应用。


现在将借助于优选实施例并且参照附图对本发明进行更为详细地描述,其中图1是描述了一些对象交换情况的框图;图2是描述了包括OBEX功能性的设备的框图;图3a和图3b是根据本发明的实施例的一种方法的流程图;图4是根据本发明的实施例的一种方法的流程图;图5是描述了能力对象通过OBEX能力交换协议传输的信令图。
具体实施例方式
下面借助于至少部分地根据OBEX标准的对象交换来描述本发明的一些实施例。然而,本发明可以应用于采用任何对象交换技术的系统。
图1描述了一种联网系统,其中可以在服务器S和终端TE的存储器之间、终端TE之间或者服务器S之间交换对象。在对象交换期间,请求方是客户机设备并且响应方是服务器。实现OBEX功能的数据处理设备TE、S可以是网络服务器、PC(个人计算机)、移动电话、膝上型计算机或PDA设备。
图1示出了一些关于可能的对象交换情况的例子,其中的第一个具有连接到局域网LAN的终端TE和服务器S。连接到网络LAN的终端TE包括用于与网络LAN中的设备通信的功能性,例如网卡和控制数据传输的软件。局域网LAN可以是任何类型的局域网,并且TE也可以通过通常使用防火墙FW的因特网而被连接至服务器S。终端TE还可以通过接入点AP被无线连接至局域网LAN。在第二个例子中,终端TE通过移动网络MNW与服务器S进行通信。连接至网络MNW的终端TE包括用于与网络MNW无线通信的移动通信功能性。在移动网络MNW和服务器S之间还可以存在其它的网络,例如局域网LAN。移动网络MNW和终端TE可以支持某种无线网络,例如支持GSM服务的网络、支持GPRS(通用分组无线业务)服务的网络、第三代移动网络(例如根据3GPP(第三代合作伙伴项目)网络规范的一种网络)、无线局域网WLAN或专用网。除了图1的例子之外,其它的对象交换情况当然也是可能的。
图2描述了既能够起到OBEX客户机作用也能够起到OBEX服务器作用的数据处理设备200。例如,数据处理设备200可以是如图1中所描述的终端TE或服务器S。然而,应当注意到一些数据处理设备200可以仅包括OBEX客户机216或OBEX服务器214的功能性。设备200包括存储器(MEM)202、用户接口(UI)210、用于安排I/O数据传输的I/O装置212,以及包括一个或多个处理器的处理单元PU 208。存储器202具有用于存储控制处理单元208的应用和其它必要的信息的非易失性部分以及用于在处理临时数据中使用的易失性部分。可以将存储在数据处理设备200中的应用220的特性信息,尤其是用于一个或多个能力对象的特性信息存储在存储器202中。在一个实施例中,在设备200的制造期间将实质上静态的特性信息存储到诸如ROM(只读存储器)或闪速存储器的静态存储器部分,并且将随后添加的关于应用的特性信息存储到诸如RAM(随机访问存储器)的存储器的非静态部分。然而,应当注意到还可以使用其它种类的装置。例如,可以将所有的特性信息存储到可擦存储器,例如EEPROM(电可擦可编程只读存储器)。
可以通过执行存储在处理单元208的存储器MEM中的计算机程序代码来实现OBEX客户机216和服务器214功能性。这还供能力服务(CS)218用于服务来自于OBEX客户机(216)的OBEX能力对象请求以及检索存储在存储器202中的特性信息。在处理单元208中执行的计算机程序代码可以使数据处理设备200实现至少部分本发明的功能,结合附图3a/b、图4和图5对其中的一些实施例进行了更为详细地描述。可以将计算机程序存储在任何的存储介质上,例如PC硬盘或CD-ROM,从中可以将其加载到设备200的存储器202中。举例来说,还可以通过使用TCP/IP协议栈经由网络来加载计算机程序。还有可能使用硬件解决方案或者软件和硬件解决方案的组合来实现本发明的方法。
图3a是描述了关于存储特性信息的方法步骤的流程图。该方法可以应用于包括OBEX服务器214功能性的数据处理设备(200)。在步骤300中添加、修改或删除数据处理设备200中的应用(220)。在步骤302中定义特性信息。可以通过收集关于应用的预定特性的信息来确定特性信息。在另一实施例中该步骤涉及预定信息的选择,例如应用安装包中的文件,由此该确定不需要设备200中任何特殊的应用特性搜索装置。在一个实施例中,以OBEX规范中所描述的、为OBEX能力对象确定了一些基本元素的格式定义了用于OBEX能力对象的特性信息。取决于应用特性,还可以在能力对象中使用其它的元素。该信息确定了应用的特性,稍后更为详细地给出例子。可以通过应用本身或者通过OBEX能力服务218实体来完成这个步骤。在步骤304中将特性信息存储到用于动态特性信息的预定存储器。在一个实施例中,应用或者用于该应用的安装或修改应用被配置以定义必要的特性信息并且将其作为XML文件存储到存储器204、206的预定文件夹。因而该应用还可以向其它的设备发布其将要通知的信息。
图3b描述了接收能力对象请求(步骤310)时的功能。基于能力对象请求,数据处理设备200(在本实施例中的能力服务218)从存储器204、206检索312特性信息。通常数据处理设备200包括已在制造阶段存储的静态特性信息并且在本实施例中还有依照图3a优选地存储的动态特性信息。如将要描述的,不同的特性信息可以驻留于不同的存储位置,或者可以利用单独的文件。在步骤312中数据处理设备200可以基于一个或多个预定的存储位置设置来检索特性信息,其可以在制造阶段和/或当已存储了新的动态特性信息时就已经被存储。因而可以在接收到对OBEX能力对象的请求之后在运行时从预定的目录或文件收集这些特性。该步骤可能涉及将特性信息收集到单独的文件中并且可能还有数据格式的一些修改以便符合用于特性信息传输的格式。在本实施例中,OBEX服务器214,并且更确切的说是能力服务218编写或检索是OBEX能力对象的XML文件。在步骤314,将检索到的和可能已编写的特性信息通过对象交换协议传送至请求实体,在本实施例中是通过OBEX协议。接收设备然后可以在与这样的设备通信时,即从该设备接收特性信息,使用该特性信息来调适其功能性。
在一个实施例中,数据处理设备200被配置以将动态特性信息存储到预定的文件或目录。应用(其已被添加或已被修改)或者,在另一实施例中的能力服务CS 218,可以将特性信息添加到该目录或文件或者存储替换文件。能力服务218还被配置以检查该文件或目录作为对接收到的OBEX能力请求的响应,并且可以选择文件或目录的内容作为将要传输给请求方,即OBEX客户机(216)的特性信息。该目录或文件在一个实施例中可以与用于存储静态特性信息的目录或文件相同。在另一实施例中至少保留两个数据存储器来存储特性信息。例如,将可动态修改的特性信息存储在存储器206中,而在制造期间将静态特性信息存储在存储器204中。在一个进一步的实施例中,在数据处理设备200中并未预先确定存储位置和/或文件名称,而是在所讨论的特性信息的存储步骤期间确定存储位置和/或文件名称。例如,在步骤302中,能力服务218为新的特性信息确定存储位置,并且在步骤304中或之后将参考(reference)存储到在另一地方的存储位置和/或文件。可以为控制能力服务218的机能的设置保留该位置。
在一个实施例中,通过访问控制机制来保护在其中可以存储动态特性信息的目录和/或文件。例如,仅允许某些实体访问特性信息。可以指定更多的访问条件,例如是否允许修改文件夹或文件。在一个实施例中,还允许第三方访问至少某个允许其存储新的应用信息的目录或文件夹。可以通过应用自身(或者通过其安装/修改程序)来修改和/或添加现有应用的特性,而不是将这样的单独的功能性安排到起到OBEX服务器214作用的设备中。
根据实施例,应用特性是SyncML应用特性。可以在用于动态特性的存储器中存储的特定的XML元素中确定这些SyncML特性。然后可以将这些SyncML特性作为OBEX能力对象发送到起到OBEX客户机(216)作用的设备,在一种情况中也作为SyncML服务器。下面给出了针对SyncML特性的这种XML元素的例子。
<Service>
<Name>SyncML</Name>
<UUID>SYNCML-SYNC</UUID>
<Version>1.1<Nersion>
<Object>
<Type>application/vnd.syncml+wbxml</Type>
</Object>
</Service>
UUID是用于SyncML服务记录的标识符。
根据另一实施例,应用特性是文件转换服务特性,对于该特性可以利用上述特征并且可以指定单独的<Service>元素。这种应用特性可以指示设备支持转换的文件类型。通过本动态特性添加/交换方法,可以更新该转换特性信息并且可以在安装新的转换器时将改变通知给其它的设备。
图4针对接收特性信息的设备描述了功能,在本实施例中是针对接收能力对象的OBEX客户机(216)。在步骤400中,设备接收能力对象作为对早先发送的请求的响应。在步骤402中确定和/或存储特性信息以备后用。在步骤404中可以立即或者随后应需要使用特性信息。如果因为需要通过OBEX客户机(216)设备使用某种应用而已经做出了请求,则至少可以立即使用一些特性,例如在建立到该应用的连接时,并且不必存储特性信息。由于特性可以指示应用的能力、对选择正确的协议版本有用的信息或者用于访问该应用或某种API(应用程序接口)的设置,举例来说,取决于该应用以及相应的特性,特性可以以多种方式影响OBEX服务器设备的机能。
能力对象可以包括由于如已描述的应用的添加、删除或修改而由OBEX服务器214设备存储/检索的动态特性信息。由于该新的特性信息,起到OBEX服务器作用的设备依照该新的特性信息改变其功能中的至少一个。例如,如果设备注意到所指示的默认连接方法设置已被改变成一种新的,则该设备改变其连接建立控制,以便根据新的连接方法通过提供连接的模块建立到OBEX客户机设备的连接。
在一种情况下,在请求/接收设备中利用特性信息,用于控制PIM(个人信息管理器,Personal Information Manager)应用的功能性。例如,通过诸如PC的另一设备用于处理移动终端中的个人信息的诸如诺基亚数据套件(Nokia Datasuite)的PIM应用,可以基于移动终端中应用的特性信息来改变其功能性。可以利用以上过程并且举例来说在移动终端和PC之间的本地蓝牙连接来获得该特性信息。PIM应用可以获得关于移动终端中可用的应用及其特性的信息。
例如,已将SyncML应用安装到起到OBEX服务器(214)作用的移动终端,由此已添加了新的特性信息,以便将SyncML特性信息包括到从设备返回的OBEX能力对象中。当起到OBEX客户机(216)作用的设备接收到这样的能力对象,它改变其关于SyncML服务的功能性。可以通知PIM应用移动终端现在支持SyncML。另外,现在可以获得关于如何安排与移动终端同步的信息。设备/PIM应用可以存储该信息,有可能改变其功能性以便其向用户显示关于新近支持的SyncML服务的某种指示。此外,它还可以改变其功能性,以便当用户想要经由PIM应用访问移动终端中的接触信息时,设备使用这些特性。在本例中,用户可以修改接触信息,其中,使用SyncML服务,该接触信息然后被同步至移动终端。
在另一实施例中,基于所接收到的特性信息对SyncML应用进行改变。例如,以新版本1.2更新OBEX服务器(214)设备中的SyncML应用。因而设备(例如在设备中运行的更新软件)通过包括<Version>1.1</Version>的新的.xml文件来替换原始的.xml文件(表示版本1.1)。随后,当从OBEX客户机(216)设备接收到OBEX能力请求的时候,能力服务218发送包括这一已改变的特性信息的能力对象。当OBEX客户机(216)设备接收到该信息的时候,它可以在安排与OBEX服务器设备进行SyncML同步会话时改变其功能性,以便使用SyncML协议的版本1.2。如果有必要,则在一个进一步的实施例中,可以在接收OBEX能力对象之后安排OBEX客户机设备下载SyncML协议的新版本。
在涉及SyncML应用协议的一个进一步的实施例中,元素<Type>或某种其它的元素可以指示内容类型(通常表示为MIME(多功能因特网邮件扩展,multi-purpose Internet mail extension)类型),其可以通过SyncML应用而被同步。随后可以向SyncML应用安装不同内容类型的插件。因而第三方开发者可以在随后为将要同步的新的内容类型添加支持。在这种情况下,插件、SyncML应用或者设备中诸如能力服务218的某种其它的实体,可以将关于新的内容类型的信息存储到特性信息。这可以通过向特性文件或文件夹添加新的内容类型信息或者通过由包括新的内容类型的文件替换现有的特性文件来进行。当起到OBEX客户机(216)作用的设备接收到关于新的内容类型的信息时,例如通过使用上述OBEX能力对象交换过程,设备就可以改变其SyncML应用功能性。这可以通过安排SyncML应用在下一个同步会话中同步新的内容类型的任何数据单元来进行。如以上例子描述的,有可能以多种方式描述和更新涉及应用及其服务的特性。
图5描述了通过OBEX协议传输能力对象。在OBEX客户机(216)和OBEX服务器(214)之间建立OBEX连接作为对来自于OBEX客户机的消息501(OBEX连接请求)的响应。可以通过不包括目标信息的消息501来连接能力服务218。OBEX服务器通过响应消息502(OBEX连接响应)来响应该消息。
起到OBEX客户机作用的设备需要知道起到OBEX服务器作用的设备的应用特性,并且因而通过消息503(以MIME类型“x-obex/capability”的OBEX GET请求)来请求OBEX能力对象。OBEX服务器,优选地是能力服务218,然后检索被安排将要包括在能力对象中的所有的特性信息并且形成对OBEX客户机的响应消息。然后将包括OBEX能力对象的该消息504从OBEX服务器传送到OBEX客户机。
然后可以在OBEX客户机和OBEX服务器之间实现其它的过程。当没有待传输的剩余信息时,可以利用消息505(OBEX断开请求)和506(OBEX断开响应)释放OBEX连接。至于有关OBEX协议特征的更多细节,请参考由IrDATM于1999年3月18日规定的“IrDA Object ExchangeProtocol IrOBEX”的第三章,版本1.2,其作为参考而编入本文。
对本领域的技术人员来说,显然随着技术的进步,可以以多种不同的方式实现本发明的基本思想。因此,本发明及其实施例并不限于上述例子,而是可以在权利要求的范围内变化。
权利要求
1.一种用于通过对象交换协议通知应用特性的方法,其中关于实质上静态的特性的信息已被存储于数据处理设备中,所述方法包括将待存储的应用的一个或多个特性定义为特性信息,作为对所述数据处理设备中所述应用的添加或修改的响应,将所述特性信息存储到所述数据处理设备中用于动态特性信息的存储器,从所述存储器检索所述特性信息作为对为请求实体获取特性信息的需要的响应,以及通过所述对象交换协议将所述特性信息传送至所述请求实体。
2.根据权利要求1所述的方法,其中,将动态特性信息存储到预定的目录或文件,以及响应于来自所述请求实体的请求的实体被配置以从所述预定的目录或文件检索所述特性信息。
3.根据权利要求1所述的方法,其中,将所述特性信息确定为对正在安装或已经安装的新的应用的响应。
4.根据权利要求1所述的方法,其中,基于所述特性信息来改变包括所述请求实体的设备的至少一个功能。
5.一种数据处理设备,其包括存储器,所述存储器用于存储特性信息,定义装置,所述定义装置用于将待存储的应用的一个或多个特性定义为特性信息,作为对所述数据处理设备中所述应用的添加或修改的响应,存储装置,所述存储装置用于将所述特性信息存储到所述数据处理设备中用于动态特性信息的存储器,检索装置,所述检索装置用于从所述存储器检索所述特性信息作为对为请求实体获取特性信息的需要的响应,以及数据传输装置,所述数据传输装置用于通过对象交换协议将所述特性信息传送至所述请求实体。
6.根据权利要求5所述的数据处理设备,其中,所述数据处理设备被配置以将所述特性信息存储到预定的目录或文件,以及所述数据处理设备中响应于对特性的请求的实体被预配置以从所述预定的目录或文件检索所述特性信息。
7.根据权利要求6所述的数据处理设备,其中,所述数据处理设备被配置以将所述特性信息存储到与实质上静态的特性信息相同的目录或文件。
8.根据权利要求5所述的数据处理设备,其中,已经安装了或正在安装所述应用,并且所述应用被配置以确定和存储所述特性信息。
9.根据权利要求5所述的数据处理设备,其中,已经修改了或正在修改所述应用,并且所述应用被配置以确定和存储所述特性信息。
10.根据权利要求5所述的数据处理设备,其中,所述数据处理设备被配置以更改所述特性信息作为对正在移除的现有应用的响应,由此而删除与所述应用有关的现有的特性信息或者存储指示删除了所述应用的信息。
11.根据权利要求5所述的数据处理设备,其中,所述数据处理设备被配置以结合所述特性信息的存储来存储对已存储的特性信息的参考,以及所述数据处理设备被配置以基于所述参考检索所述特性信息。
12.根据权利要求5所述的数据处理设备,其中,所述对象交换协议是OBEX并且所述数据处理设备包括用于实现OBEX能力服务的装置,由此,所述OBEX能力服务被配置以检索所述特性信息作为对OBEX能力信息请求的响应,以及所述OBEX能力服务被配置以利用包括所述特性信息的OBEX能力对象来答复。
13.一种数据处理设备,其包括通信装置,所述通信装置用于通过对象交换协议与第二设备通信,请求装置,所述请求装置用于通过所述对象交换协议从所述第二设备请求特性信息,接收装置,所述接收装置用于从所述第二设备接收特性信息,包括存储于所述第二设备中的特性信息的所述特性信息与应用的添加、修改和删除有关,其中所述数据处理设备被配置以基于所述特性信息来改变至少一个功能。
14.根据权利要求要求13所述的数据处理设备,其中,个人信息管理器应用的功能性被配置以基于所接收到的特性信息在所述数据处理设备中被改变。
15.根据权利要求要求13所述的数据处理设备,其中,所述数据处理设备被配置以起到对象交换客户机的作用,并且从在能力对象中起到对象交换服务器作用的所述第二设备接收所述特性信息。
16.一种包括程序代码的计算机程序,所述程序代码在数据处理设备的处理器中执行时用于控制所述数据处理设备,其中所述计算机程序包括用于控制所述数据处理设备以将待存储的应用的一个或多个特性定义为特性信息,作为对所述数据处理设备中所述应用的添加或修改的响应的程序代码部分,用于控制所述数据处理设备以将所述特性信息存储到所述数据处理设备中用于动态特性信息的存储器的程序代码部分,用于控制所述数据处理设备以从所述存储器检索所述特性信息,作为对为请求实体获取特性信息的需要的响应的程序代码部分,以及用于控制所述数据处理设备以通过对象交换协议将所述特性信息传送至所述请求实体的程序代码部分。
17.一种包括程序代码的计算机程序,所述程序代码在数据处理设备的处理器中执行时用于控制所述数据处理设备,其中所述计算机程序包括用于控制所述数据处理设备以通过对象交换协议从第二设备请求特性信息的程序代码部分,用于控制所述数据处理设备以从所述第二设备接收特性信息的程序代码部分,包括存储于所述第二设备中的特性信息的所述特性信息与应用的添加、修改或删除有关,以及用于控制所述数据处理设备以基于所述特性信息来改变至少一个功能的程序代码部分。
全文摘要
本发明涉及一种用于通过对象交换协议通知应用特性的方法。将待存储的应用的特性确定为特性信息作为对数据处理设备中该应用的添加或修改的响应。将所述特性信息存储到所述数据处理设备中用于动态特性信息的预定的存储器。当出于对象交换的目的需要为请求实体获取特性信息的时候,从所述预定的存储器检索所述特性信息。可以通过所述对象交换协议将所述特性信息传送至所述请求实体。
文档编号G06F9/00GK1969574SQ200580019311
公开日2007年5月23日 申请日期2005年6月1日 优先权日2004年6月14日
发明者J-P·里撒宁 申请人:诺基亚公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1