专利名称:用于配置电子设备的方法
技术领域:
本发明的实施方式涉及配置电子设备。
具体实施方式
涉及在例如销售点配置移动蜂窝电话的标准过程。
背景技术:
当前的趋势是电子设备的功能越来越多。这使得电子设备难以配置。
设备的用户需要花费大量时间和精力来配置设备的设置,以便它正确地工作和/或以他们希望的方式工作。由于所需的时间和精力非常大,所以新设备可能显得对用户少了吸引力。
对移动蜂窝用户尤其如此。移动电话通常被设计成可配置为在不同运营商控制的多个不同蜂窝无线电话网络的任意一个网络中使用。然而,每个运营商可能需要不同设置以使电话正确操作或者以运营商希望的方式操作。运营商(服务提供商)可能希望用必要的设置来定制移动电话。另外,移动电话是个人设备,并且用户可能希望用他们喜欢的铃声、因特网书签、屏幕保护程序等来配置该设备。
因此,希望为电子设备特别是移动蜂窝电话提供某些形式的自动设置过程。
希望该设置过程是这样的它可以用于多于一个电子设备,而无需针对该设备进行具体修改。例如,希望该设置过程可以用来初始配置全部或大部分移动蜂窝电话该。
发明人考虑通过使用SyncML消息向目标设备传送数据并且在该目标设备处在传送的数据上执行可执行程序是否可以实现自动设置。
SyncMLTM设备管理(DM)是一个公开的、通用的行业标准。它使得诸如服务提供商和公司信息管理部门之类的第三方能够创建并管理移动设备中存储的管理树。SyncML设备管理树和描述(SyncML Device Management Tree and Description),v1.1.1,2003年2月10日,(www.syncml.org)描述了管理树的创建和维护。管理树具有利用分支连接的节点。可以由URI来唯一地寻址每个节点。节点可以是内部节点,内部节点可以有多个孩子(非独立)节点,但是不能存储任何值,或者节点可以是叶节点,叶节点不能有孩子(非独立)节点,但是可以存储值。值可以是串、文件、数值等。因此,SyncML DM提供用于向移动设备实时提供数据的机制。
SyncML表示协议(SyncML Representation Protocol),v1.1,2002年2月15日,(www.syncml.org)详细说明包括数据管理(DM)协议在内的所有SyncML协议可以使用的通用扩展标记语言(XML)句法和语义。这些命令包括Add,Copy,Delete,Exec,Get,Replace。Exec允许命令的发起方请求接收方调用指定的可执行程序。
SyncML设备管理树和描述(SyncML Device Management Treeand Description),v1.1.1,2003年2月10日,(www.syncml.org)描述了如何使用Add来创建管理树。SyncML DM并没有详细说明通过使用SyncML DM如何在特定数据上执行可执行程序。exec命令包含item元素,item元素包含target元素,target元素包含LocURI元素。LocURI元素仅仅详细说明该设备中的可执行程序的位置。因此,exec命令不允许指定可执行程序要使用的数据。
此外,exec命令需要识别目标设备中的适合的可执行程序。因此,必须有目标设备处的可执行程序的身份的先验知识,该知识是在exec命令的LocURI元素中指定的。这是复杂的、不方便的,并且阻止单一SyncML消息或分组用于多个移动设备。
希望创建适合于在多个目标设备上执行共用过程的SyncML代码,该代码用于每台设备而不需要具体修改。
希望通过使用其它设备可重用的SyncML代码,命令在特定数据上执行可执行程序。
发明内容
根据本发明的一个实施方式,提供一种用于自动配置电子设备的方法,该方法包括在电子设备处接收标识第一数据的命令;自动确定所标识的第一数据的属性;由所确定的属性自动识别可执行程序;以及使用所识别的可执行程序在所标识的第一数据上进行操作。
根据本发明的另一实施方式,提供一种用于配置移动蜂窝电话的方法,该方法包括向移动蜂窝电话传送包括命令的代码,其中该命令标识分层结节状数据结构的第一叶节点;确定所标识的第一叶节点的属性;由所确定的属性识别可执行程序;以及使用所识别的可执行程序在所标识的第一叶节点处存储的数据上进行操作。
根据本发明的另一实施方式,提供一种用于配置多个移动蜂窝电话的方法,该方法包括向移动蜂窝电话传送可重用代码,其中该代码包括用于在电子设备处创建分层结节状数据结构的命令,该数据结构具有叶节点和内部节点,该数据结构包括在第一叶节点处存储的第一数据;以及标识该第一叶节点的第一命令;确定所标识的第一叶节点的属性;由所确定的属性识别可执行程序;以及使用所识别的可执行程序在第一叶节点中处存储的第一数据上进行操作。
根据本发明的另一实施方式,提供一种安排用于进行自动配置的移动蜂窝电话,包括用于存储第一数据的装置;用于接收标识该第一数据的命令的装置;用于确定所标识的第一数据的属性的装置;用于由所确定的属性识别可执行程序的装置;以及使用所识别的可执行程序在所标识的第一数据上进行操作的装置。
根据本发明的另一实施方式,提供一种可以在设置不同移动蜂窝电话时重用的数据结构,包括标识第一数据并且指定在该第一数据上执行未标识的可执行程序的代码。
根据本发明的另一实施方式,提供一种用于在设置不同电子设备中重用的数据结构,包括用于在电子设备处创建分层结节状数据结构的命令,该数据结构具有叶节点和内部节点,该数据结构包括在第一叶节点处存储的第一数据;以及标识第一叶节点的第一命令,该命令指定在第一节点处存储的第一数据上执行未标识的可执行程序。
本发明的实施方式无需指定可执行程序的身份就能执行驻留在目标设备上的可执行程序。因为驻留的可执行程序的身份随设备的不同而改变,所以允许重用SyncML代码,以便在多个目标设备上执行通用过程。
本发明的实施方式可以在指定的数据上启用驻留在目标设备上的可执行程序。
根据本发明的另一实施方式,提供用于创建用于在设置不同电子设备中重用的数据结构的系统,该系统包括用于把多个用户友好的命令的每条命令与不同代码部分联系起来的装置,其中每个代码部分包括一条或多条命令。
通过参考附图举例说明,将更好地理解本发明,其中图1说明客户机服务器系统,该系统包含与服务器20通信的移动设备;图2说明管理树数据结构;图3是用于下载设置代码的信令图示;以及图4用示意图说明设置代码50的内容。
具体实施例方式
图1说明客户机服务器系统2,该系统包括经由蜂窝无线电话网络18与服务器20通信的移动设备10。在本实施方式中,移动设备10是移动蜂窝电话,包括处理器11,蜂窝无线收发器12,存储器13,输入设备14(如小键盘),显示器15,智能卡16和音频输出设备17。
处理器11控制移动电话10。它与存储器13相连,以便对其进行读写。它接收来自小键盘14的输入数据,并向显示器15和音频输出设备17提供输出数据。它控制蜂窝无线电收发器,以便它在蜂窝电话网络18中通信,蜂窝电话网络例如可以是GSM或WCDMA网络。该处理器还与智能卡16相连,智能卡至少向处理器提供用户标识信息,如用户的电话号码或IMSI。处理器11的操作是由存储器13中存储的并加载到该处理器中的软件控制的。操作时,该处理器经由收发器12接收数据和发射数据,并向存储器13写入数据或读取其中的数据。
应该理解,在其它实施方式中,移动蜂窝电话可以没有智能卡16和/或可以有多个处理器。
服务器20包括输入/输出接口21,处理器22和存储器23,其中输入/输出接口直接或者间接与蜂窝无线网络18相连。服务器20是SyncML DM服务器。该服务器经由输入/输出接口21,向移动电话10发布SyncML DM命令,并且正确解释来自移动电话10的响应。
在移动电话10中,处理器11充当管理客户机(MC),并且可以维护存储器13中的管理树数据结构100。MC正确解释从服务器那里接收的SyncML DM命令,在移动电话10中执行适当动作,并且经由收发器12向发出命令的管理服务器回送有关应答。
管理树是一个分层结节状数据结构,管理客户机由该数据结构与移动电话10交互。MC可以把值存储到树中或者从树中检索值,并操纵树的属性。管理树具有由分支连接的节点。可以由URI来唯一地寻址每个节点。节点可以是内部节点,内部节点可以有多个孩子(非独立)节点,但是不能存储任何值,或者节点可以是叶节点,叶节点不能有孩子(非独立)节点,但是可以存储值。值可以是串、文件、数值等。
MC可以操纵管理树。可以创建新节点,并且可以改变某些叶节点上的值。有同步运行时间接入到叶节点和内部节点。
正如下面将更详细地描述的那样,响应于从服务器20那里接收的设置代码,MC创建一个“运算符”管理对象作为自动设置过程的一部分。正如图3所示,在本例中,该“运算符”管理对象102是从属于管理树100的根节点104的子树,并且在设置过程中使用。
例如,通过把智能卡16插入到蜂窝移动电话10中,可以启动自动设置过程。智能卡16包含用于引导自动设置过程的必要信息。移动设备10向服务器20发送图3所示的下载发起消息60。
服务器20在存储器23中存储设置代码50,该代码可以用于多个设备而无需修改。服务器20响应于下载发起消息发起SyncML数据管理(DM)会话62。使用DM会话62来向移动设备10传送存储的设置代码50。
可以利用诸如短消息业务(SMS) 消息的任何合适手段来发送下载发起消息60,或者如果该设备是不具有移动电话功能的个人数字助理,则经由IR、蓝牙或诸如USB的串行数据连接来发送。
可以利用诸如短消息业务(SMS) 消息的任何合适手段来发送设置代码,或者,如果该设备是不具有移动电话功能的个人数字助理,则经由IR、蓝牙或诸如USB的串行数据连接来发送。
图4用示意图说明设置代码50。设置代码50是可以在设置不同移动设备时重用的数据结构。
在本例中,设置代码50包括两个部分,两个部分在逻辑上是独立的,但是可以交织。第一部分52用于创建管理树或更新现有管理树。第二部分54用于执行可执行程序。
用于更新现有管理树的第一部分52包括,用于创建管理树的内部节点的子部分以及用于创建管理树的叶节点的子部分。
例如,通过使用与以下代码类似的XML代码,该代码可以创建从属于根节点104的内部节点“运算符”106<Add>
<CmdID>1</CmdID>
<Item><Meta>
<Format xmlns=’syncml:metinf’>node/<Format>
<Type xmlns=’syncml:metinf’>interior/<Type>
</Meta>
<Target>
<LocURI>/Operator</LocURI>
</Target>
</Item>
</Add>
例如,通过使用与以下代码类似的XML代码,该代码可以继续创建从属于“运算符”节点106的内部节点108<Add>
<CmdID>2</CmdID>
<Item>
<Meta>
<Format xmlns=’syncml:metinf’>node/<Format>
<Type xmlns=’syncml:metinf’>interior/<Type>
</Meta>
<Target>
<LocURI>/Operator/ring_tones</LocURI>
</Target>
</Item>
</Add>
例如,通过使用与以下代码类似的XML代码,该代码可以创建从属于节点108的叶节点110<Add>
<CmdID>3</CmdID>
<Item>
<Meta>
<Format xmlns=’syncml:metinf’>format/<Format>
<Type xmlns=’syncml:metinf’>MIDI ringing tone/<Type>
</Meta>
<Target>
<LocURI>/Operator/ring_tones/smashhit#1</LocURI>
</Target>
<Data>the data</Data>
</Item>
</Add>
其中“the data”是用于以由“format”定义的格式创建smashhit#1铃声的数据。
用于执行可执行程序的第二部分54包括多个子部分,每个子部分用于执行可执行程序。子部分的顺序确定可执行程序的执行顺序。至少某些子部分指定通过使用特定数据来执行可执行程序。例如,用于这样的子部分的代码可以是与以下代码类似的XML代码<Exec>
<CmdID>3</CmdID>
<Item>
<Source>
<LocURI>/Operator/ring_tones/smashhit#1</LocURI>
</Source>
</Item>
</Add>
该exec命令指定在“source”内包含的数据上执行未标识的可执行程序,其中“source”是smashhit#1铃声。请注意,该Exec命令没有指定应使用哪个可执行程序,并且该命令的含义取决于它所标识的数据的内容类型。
移动蜂窝电话的DM客户机处理接收的设置代码50。根据SyncML DM规范,处理用于更新现有管理树的部分52。根据给定的例子,DM客户机由此创建如图2所示从属于根的子树102。
用于执行可执行程序的部分54是按以下方式处理的。对该代码进行语法分析,以识别第一部分。对第一部分进行语法分析,以识别由元素source内包含的元素LocURI指定的URI。元素LocURI识别该管理树的新建子树内的叶节点。
DM客户机访问所识别的叶节点,在上面给定的例子中,叶节点是Operator/ring tones/srnashhit#1。它读取所识别的叶节点的属性,特别是meta内包含的那些属性。
DM客户机使用Format元素的内容和/或Type的内容来识别所标识的叶节点处存储的数据的内容类型。
DM客户机例如,通过使用查找表把可能的Formats和Types同驻留在该移动电话内的不同的可执行程序联系起来。因此,通过使用叶节点的Format和/或Type,DM客户机可以把标识的叶节点与可执行程序联系起来。这样,如果叶节点存储声音文件,则把它和音频播放器联系起来,如果叶节点存储视频文件,则把它和视频播放器联系起来,如果叶节点存储图片文件,则把它图片浏览器联系起来,如果叶节点是Java Midlet,则把它和Java虚拟机(JVM)联系起来,如果叶节点是联系人的详细资料,则把它和一个可执行程序联系起来,该可执行程序把它添加到电话的联系人列表中,如果叶节点是书签,则把它和一个可执行程序联系起来,该可执行程序把该书签添加到该电话的书签列表中,等等。
SyncML DM使用多个不同命令,包括Add允许命令的发起方请求把该命令包含的一个或多个数据元素添加到接收方可访问的数据中。例如,当从服务器发送到移动终端时,它可以向DM树添加一个节点。
Copy允许命令的发起方请求复制接收方可以访问的命令中包含的一个或多个数据元素。
Delete允许命令的发起方请求删除接收方可以访问的命令中包含的一个或多个数据元素。例如,当从服务器发送到移动终端时,它可以移除DM树中的一个节点。
Exec允许命令的发起方请求接收方调用指定的或提供的可执行程序。
Get允许命令的发起方从接收方请求一个或多个数据元素。例如,当从移动终端发送到服务器时,它可以获得DM树的节点的内容。
Replace允许发起方请求替换接收方可以访问的一个或多个数据元素。
SyncML DM也要求每条命令使用特殊句法。希望每个操作员无需详细了解SyncML DM命令及其句法,就能容易地创建合适的设置代码50。可以在服务器20处提供进行此项工作的计算机程序。该计算机程序有效地提供宏,后者把简单的用户友好的命令转换成具有正确句法的合适的SyncML DM命令。
例如,该计算机程序为操作员提供以下选项a)安装Xb)预览X(需要安装)c)预览X(不需要安装)d)执行X(隐含安装)例如,该计算机程序把这些选项转换成a)SyncML Add命令。
b)SyncML Add命令,后面是SyncML Exec命令。
c)SyncML Add命令,后面是SyncML exec命令,后面是SyncMLDelete命令。
d)SyncML Exec命令。
尽管参照各种例子在上面的段落中描述了本发明的各种实施方式,但是应该理解,可以对给出的例子进行修改而并不背离权利要求书要求的本发明的范围。例如,尽管参照移动电话进行了描述,但是应该理解,本发明可以应用于任何用户可配置的电子设备。它在诸如移动电话和个人数字助理的移动设备中有特别应用,但是也可以应用于例如个人计算机。
尽管前述详细说明书试图引起人们对被认为是特别重要的本发明的那些功能特征的注意,但是应该懂得,申请人要求保护上文提及的和/或附图所示的所有可以取得专利的功能特征或功能特征的组合,不论是否特别强调过这些功能特征。
权利要求
1.一种用于自动配置电子设备的方法,包括在电子设备处接收标识第一数据的命令;自动确定所标识的第一数据的属性;根据所确定的属性自动识别可执行程序;以及使用所识别的可执行程序在所标识的第一数据上进行操作。
2.如权利要求1要求的方法,其中所标识的数据的所确定的属性指示内容类型。
3.如权利要求1或2要求的方法,其中该命令包含该第一数据的标识符。
4.如权利要求3要求的方法,其中该标识符标识分层结节状数据结构的节点。
5.如权利要求4要求的方法,其中该命令是exec命令并且该标识符是source元素内包含的URI,source元素包含在exec命令内。
6.如任一前述权利要求要求的方法,其中将该命令接收为XML代码。
7.如权利要求6要求的方法,其中该命令是SyncML命令。
8.如任一前述权利要求要求的方法,其中所标识的第一数据存储在该移动设备中。
9.如权利要求6要求的方法,其中所标识的第一数据存储为分层结节状数据结构的第一叶节点。
10.如权利要求9要求的方法,其中该分层结节状数据结构的每个叶节点都有属性,并且确定该内容类型的步骤使用了该第一叶节点的属性。
11.如权利要求9或10要求的方法,其中该分层结节状数据结构的每个叶节点都有元数据,并且确定该内容类型的步骤使用了第一叶节点的元数据。
12.如任一前述权利要求要求的方法,其中确定该内容类型的步骤使用了Format元素的值和/或与第一数据关联的Type元素的值。
13.如任一前述权利要求要求的方法进一步包括,把多个不同的可执行程序与多个不同属性的每个属性联系起来。
14.如权利要求11要求的方法,其中由所确定的属性自动识别可执行程序的步骤包括识别与所确定的属性关联的可执行程序。
15.如权利要求13或14要求的方法,其中多个不同的可执行程序存储在该电子设备中。
16.如任一前述权利要求要求的方法进一步包括在接收标识该第一数据的命令之前,接收用于在该电子设备处创建包括该第一数据的分层结节状数据结构的命令。
17.一种用于配置移动蜂窝电话的方法,包括向移动蜂窝电话传送包括命令的代码,其中该命令标识分层结节状数据结构的第一叶节点;确定所标识的第一叶节点的属性;由所确定的属性识别可执行程序;以及使用所识别的可执行程序在所标识的第一叶节点处存储的数据上进行操作。
18.一种用于配置多个移动蜂窝电话的方法,包括向移动蜂窝电话传送可重用代码,其中该代码包括用于在电子设备处创建分层结节状数据结构的命令,分层结节状数据结构具有叶节点和内部节点,该数据结构包括在第一叶节点处存储的第一数据;以及标识该第一叶节点的第一命令;确定所标识的第一叶节点的属性;由所确定的属性识别可执行程序;以及使用所识别的可执行程序在该第一叶节点处存储的该第一数据上进行操作。
19.一种安排用来进行自动配置的移动蜂窝电话,包括用于存储第一数据的装置;用于接收标识该第一数据的命令的装置;用于确定所标识的第一数据的属性的装置;用于由所确定的属性识别可执行程序的装置;以及用于使用所识别的可执行程序在所标识的第一数据上进行操作的装置。
20.如权利要求19要求的移动蜂窝电话,进一步包括用于接收设置代码的装置;以及用于解释所接收的设置代码,以创建分层结节状数据结构的装置,该数据结构具有叶节点和内部节点,该数据结构包括存储该第一数据的第一叶节点。
21.如权利要求20要求的移动蜂窝电话,进一步包括用于解释所接收的设置代码内的第一命令,以确定由该第一命令标识的叶节点的属性的装置。
22.一种可以在设置不同移动蜂窝电话时重用的数据结构,包括标识第一数据并且指定在该第一数据上执行未标识的可执行程序的代码。
23.如权利要求22要求的数据结构,其中该代码进一步指定向该移动设备传送该第一数据。
24.一种可以在设置不同电子设备时重用的数据结构,包括用于在电子设备处创建分层结节状数据结构的命令,该数据结构具有叶节点和内部节点,该数据结构包括在第一叶节点处存储的第一数据;以及标识该第一叶节点的第一命令,该命令指定在该第一节点处存储的该第一数据上执行未标识的可执行程序。
25.如权利要求22、23或24要求的用于存储和传输数据结构的服务器。
26.一种用于创建可以在设置不同电子设备时重用的数据结构的系统,包括用于把多个用户友好的命令的每条命令与不同代码部分联系起来的装置,其中每个代码部分包括一条或多条命令。
27.如权利要求26要求的系统,其中把第一用户友好的命令与仅仅包括SyncML Add命令的XML代码联系起来。
28.如权利要求26或27要求的系统,其中把第二用户友好的命令与包括SyncML Add命令以及其后的SyncML Exec命令的XML代码联系起来。
29.如权利要求26、27或28要求的系统,其中把第三用户友好的命令与包括SyncML Add命令、其后的SyncML exec命令以及其后的SyncML Delete命令的XML代码联系起来。
30.一种用于自动配置如上面参照附图描述的和/或附图所示的电子设备的方法。
全文摘要
一种用于自动配置电子设备的方法,该方法包括在电子设备处接收标识第一数据的命令;自动确定所标识的第一数据的属性;由所确定的属性自动识别可执行程序;以及使用所识别的可执行程序在所标识的第一数据上进行操作。
文档编号G06F15/167GK1914937SQ200480041639
公开日2007年2月14日 申请日期2004年2月14日 优先权日2004年2月14日
发明者克劳斯·佩德森, 雅各布·汉森 申请人:诺基亚公司