背景技术
现代社会快速接受并且逐步依赖于用于无线通信的手持设备。例如,由于在通信质量和设备功能方面的技术进步,全球市场中的蜂窝电话持续激增。对于个人和商业应用这些无线通信装置已经逐渐普及,允许用户从多个地理位置发送并接收语音、文本和图像数据。这些装置使用的通信网络跨越不同频率并覆盖不同传送距离,每张网络都具有各种应用所需要的性能。最近所述装置已经被用于邻近区域通信,例如短距离无线通信或近场通信等等。
短距离无线网络提供了避免大型蜂窝网络中出现的部分问题的通信方案。蓝牙TM是快速获得市场接受的短距离无线技术的一个示例。1Mbps蓝牙TM无线电可以在10米范围内以720Kbps的速率发送和接收数据,并且可以在额外功率推动条件下发射至100米。同样可用的增强型数据速率(EDR)技术可以实现对于2Mbps连接的1448Kbps的最大不对称数据速率以及对于3Mbps连接的2178Kbps最大不对称数据速率。用户并不积极发起蓝牙TM网络。相反,处于彼此工作范围之内的多个设备可以自动构建称为“极微网(piconet)”的网络组。任何装置可以将自己提升为极微网的主机,允许它控制与最多7个“活跃”从机和255个“停留”从机之间的数据交换。活跃从机根据主机的定时来交换数据。停留从机监控信标信号以便与主机保持同步。这些装置不断在各种活跃通信和节电模式之间切换以便向其他极微网成员发送数据。除了蓝牙TM,其他普及的短距离无线通信网络包括WLAN(其中,依照IEEE 802.11标准的“Wi-Fi”本地接入点通信是一个示例)、WUSB、UWB和ZigBee(802.15.4,802.15.4a)。所有这些无线介质都具有使他们适合于各种应用的特征和优势。
除此之外,可以被考虑用于提供非常短距离或者近在咫尺的通信技术的近场通信技术最近越来越引起兴趣,以用于为无线通信设备提供新的应用和功能。近场通信的示例包含射频识别(RFID)技术,射频识别技术已经存在于从运输和支付系统到包括可植入RFID标签的各种识别系统的各种消费者应用中。近场通信(NFC)也是另一种短距离无线通信技术,其使得能够在短距离内实现设备之间的数据交换。所述技术基于RFID,这使得它与现有的已经用于公共运输和支付的非接触式基础设施兼容。近场通信(NFC)论坛是推动在各种消费类电子、无线设备和PC中使用NFC短距离无线交互的非盈利产业联盟。NFC论坛支持NFC技术的实现和标准化以便更加容易的获取信息,更加容易的为货物或服务支付,更加容易的使用公共运输,以及更加容易的在设备之间共享数据。
无线装置(诸如,移动电话)可以包含NFC模块或其他类型的近场通信模块。目前为了制造和使用近场通信应用,实际上人们需要在装置本身上安装应用以便解析并理解数据。因此这些应用的配置可能存在问题。而且,很多嵌入式近场通信应用程序可能存在问题无法使用——例如在智能卡中嵌入的安全单元支付应用程序可能需要特定的用户接口。
目前通信运营商正试图通过以增加低层控制层的方式尝试锁定手机功能,来在智能卡中建立控制点。运营商在战略上将各种近场通信技术(诸如NFC)作为他们未来提供产品的重要部分。然而,由于SIM卡不具有用户接口,它们不能达到例如智能海报型应用所需的可用性水平,在智能海报型应用中用户被指引以触摸标签并接收服务。著名的解决方案是使用JSR-257的Java Midlets和智能卡网页服务器提案。然而两个著名的解决方案都缺少功能性。NFC论坛也正在定义WEB RTD,WEB RTD是一个允许将整个网站放在智能卡上的标准。然而,这并没有给出任何真实的交互性。
发明内容
本发明目的在于提供具有短距离通信和其他应用之间方便的接口的装置。
依照本发明的一个方面提供一种装置,包含:
处理器;
与所述处理器耦合的邻近区域通信模块;以及
浏览器,其中所述浏览器被配置用于获取至少包括脚本编程信息的信息,其中所述浏览器在所获取的脚本编程信息基础上被进一步配置为使得能够在所述邻近区域通信模块和所述浏览器之间进行数据通信。
依照本发明的另一方面,提供一种无线装置,包含:
处理器;
与所述处理器耦合的邻近区域通信模块;以及
浏览器,其中所述浏览器被配置用于获取至少包括脚本编程信息的信息,其中所述浏览器在所获取的脚本编程信息基础上被进一步配置为使得能够在所述邻近区域通信模块和所述浏览器之间进行数据通信。
依照本发明的又一方面,提供一种方法,包含:
操作浏览器,
通过所述浏览器获取至少包含脚本编程信息的信息,以及
在所获取的脚本编程信息的基础上,发起在邻近区域通信模块和所述浏览器之间的数据通信。
依照本发明的又一方面,提供一种计算机程序代码,其中所述计算机程序代码被配置用于
操作浏览器,
通过所述浏览器获取至少包含脚本编程信息的信息,以及
在所获取的脚本编程信息的基础上,发起在邻近区域通信模块和所述浏览器之间的数据通信。
本发明各种实施例提供具有NFC脚本编程信息应用协议接口(API)的装置的浏览器。NFC脚本编程信息API提供到所述装置的浏览器的用于NFC应用的必要接口。有利的,所述NFC系统软件能够与浏览器的脚本编程信息引擎通信和握手。
在本发明各种实施例中,具有必要NFC库的适当的脚本编程信息扩展被包含在浏览器的脚本编程信息库中。
本发明各种实施例提供动态的邻近区域通信应用环境,其中任何邻近区域标签可以被用在所述装置处,而且相应地提供基于所述标签在所述装置中获得进一步的命令/内容。由此,所述标签和所述装置不再需要是经编程的应用/标签特定的,而是可以通过所述实施例产生更加通用的系统。
本发明各种实施例提供易用的应用编程环境。所述环境是动态可安装的,甚至通过空中接口(或者从标签)安装。所述方案使得制造商与通信运营商之间的合作更加容易,这是由于设备制造商能够为运营商提供具有他们自己的近距离通信用户体验而无需任何复杂标准的机会。运营商不需要改变较低的通信层。而且,不需要在所述装置中预先装载软件。逻辑可以自动改变,甚至可以在服务器中改变。甚至进一步地,不需要中间体(midlet)编程技巧。
具体实施方式
如前所述图1描述了装置的框图,其中可以应用本发明各种实施例的基本原理。装置100包含处理器CPU,可能包含耦合到所述处理器的存储器MEM。可替换的,所述存储器可以是例如数据的存储器。装置100也包含近场通信模块诸如近场通信模块NFC,所述近场通信模块被耦合到所述处理器。本发明各种实施例使用任意类型的邻近区域通信诸如,例如,近场通信,其中NFC通信是一个示例。在上下文中定义的邻近区域通信包括任意适合的无线通信技术,其包括但不限于基于射频的通信、光通信和磁或感应耦合,所述无线通信可以到达触摸距离,同一房间的距离直至街道级的距离,例如使用任意可用的近场通信或短程通信技术的用户打招呼的距离。根据非限制性实施例,所述邻近区域通信模块可以是,例如具有RFID能力的通信模块,诸如NFC读取器、光读取器或蓝牙无线电模块等等。而且装置100包含浏览器,其中所述浏览器被配置用于获取至少包括脚本编程信息(可替代的可以称为脚本编程语言)的信息。在已获取的脚本编程信息的基础上,所述浏览器被进一步配置为使得能够在所述邻近区域通信模块和所述浏览器之间进行数据通信。而且,在实施例中,所述浏览器包括接口,所述接口根据存储在所述存储器MEM上的脚本编程信息中的至少一部分被配置为使得能够在所述邻近区域通信模块NFC与所述浏览器之间进行数据通信。装置100可以包含用于执行各种实施例的操作的硬件和/或软件和/或中间件。由此,根据实施例,装置100具有用于执行实现本发明的各种方面的操作的计算机代码和/或硬件。所述脚本编程信息可以位于例如所述装置的存储器处、远程的网页服务器处或者可以附连到装置的智能卡内,由此存在可以存放所述脚本编程信息的各种物理和逻辑位置,而且从所述位置可以将所述脚本编程信息获取至所述浏览器。
如上所述,图2描述了根据本发明实施例对于脚本编程语言的近场通信扩展的框图。图中描述了装置100。
在各种进一步实施例中,装置100可以是具有近场和/或短距离无线通信能力的无线射频装置。根据进一步实施例,装置100可以是包含近场通信能力的移动电话。
回到图2,装置100的示例包含浏览器102。所述浏览器的一个示例可以是移动浏览器。浏览器102包括脚本编程语言引擎104。脚本编程语言引擎104的一个示例可以是JavaScript或EcmaScript引擎。优选地,浏览器包含浏览器应用。
在其他实施例中,ECMAScript是脚本编程语言,由EcmaInternational在ECMA-262规范中标准化,所述规范可以通过ECMAInternational网站访问。
回到图2引擎104包含一部分已下载的脚本编程语言。例如,这可以是基于JavaScript或EcmaScript等的网页。根据实施例,引擎104也包含用于脚本编程语言的近场通信库扩展108。近距离通信库扩展108的示例是适用于JavaScript。近场通信库扩展108与下载的脚本编程语言106耦合。有利的,近场通信库扩展108允许下载的脚本106访问近场通信功能。装置100还包含近场通信系统软件110。近场通信库扩展108与近场通信系统软件110耦合。近场通信系统软件110通常由中间体(midlets)和其他应用共享。装置100也包含近场通信读取器硬件112。近场通信读取器硬件112与近场通信系统软件110耦合。例如,近场通信标签114通过近场通信读取器硬件与浏览器102耦合。标签114的示例可以是RFID标签。引擎结合与NFC来描述。然而,应注意,它仅仅作为邻近区域通信模块中的一个的示例被描述,而且相应的可以在这些类型模块或类似模块中的任意一种中实现。
仍然参考图2,服务器116包含脚本编程语言内容118。服务器116可以位于例如互联网中的远程的万维网(web)服务器中,或者甚至位于附连到无线装置上的智能卡内。内容118可以包含,例如,网页、应用或脚本等等。内容118可以被下载到浏览器102中。浏览器可以通过被处理的数据122向万维网服务器116进行请求、确认等等。
本发明的各种实施例使用任意类型的邻近区域通信,例如近场通信,其中NFC通信就是近场通信的示例。邻近区域通信可以到达触摸距离,同一房间的距离直到街道级的距离,例如使用任意可用的近场通信或短程通信技术的用户打招呼的距离。NFC是这样的短程无线技术,其使得能够在短距离上通过包括RF和光通信的各种介质进行在设备之间的通信。另一方面,NFC通信与例如用于在公共运输和支付的现有非接触式基础设施兼容。NFC通过磁场感应工作。它能够在全球可用的并且非授权的13.56MHzRF频段内工作。工作距离能够达到0-20厘米,并且速度为:106Kbit/s、212Kbit/s或424Kbit/s。通常存在2种模式:被动通信模式:发起方设备提供载波场而且目标设备通过调制现有场进行回应。在这种模式中,目标设备可以从发起方提供的电磁场中获取它的工作电源,从而使目标设备成为发射机应答器。主动模式:发起方和目标设备都通过产生它们自己的场来进行通信。在这种模式中,通常两个设备都需要具有电源。NFC可以被用于配置并初始化其他无线网络连接诸如蓝牙、Wi-Fi或超宽带。NFC的使用情形可以是,例如:卡仿真:NFC设备像现有非接触式卡那样工作。读取器模式:NFC设备为主动并且读取被动的RFID标签,例如用于交互式广告。P2P模式:两个NFC设备一起通信并且交换信息。多种应用可以成为可能,诸如:在公共运输中的移动售票——现有非接触式基础设施的扩展。移动支付——移动电话作为借记/信用支付卡。智能海报——移动电话被用于读取户外布告栏上的RFID标签以便在移动中获取信息。
在具有NFC支持的设备配对中,可以将它们靠近并接受配对来简单地配对。双方的激活过程、搜索、等待、配对以及授权可以被移动电话的简单“触摸”所替代。其他可能的应用可以包括:电子票据——飞机票、音乐会/活动票,以及其他,电子货币、旅行卡、身份文档、移动商务、电子钥匙——汽车钥匙、房屋/办公室钥匙、旅馆房间钥匙等等。
NFC是开放的平台技术,在ECMA-340和ISO/IEC18092中标准化。这些标准规定了NFC设备的RF接口的调制方案、编码、发送速率和帧结构,以及用于被动和主动NFC模式的在初始化期间数据冲突控制所需的初始化方案和条件。而且,他们也定义了传送协议,包括协议激活和数据交换方法。NFC合并了多个已有标准包括ISO 14443A(普通)和B(银行业/短距离)、ISO 15693,以及FeliCa。
本发明部分实施例使用脚本编程信息。所述脚本编程信息的一个示例是脚本编程语言。脚本语言,也称为描述语言(script language),是每次运行时被解释或编译的编程语言。脚本被从它们的源代码直接执行,所述源代码通常是包含语言特定标示的文本文件。因此,“脚本”通常被认为与“程序”明显不同,“程序”通常仅在它们被改变之后从源代码编译为二进制可执行文件(也即,机器代码),而且接下来根据这些二进制文件运行而不需要源代码。
脚本被创建以缩短传统的编写-编译-链接-运行过程。“脚本”这一名称来自于表演艺术的剧本编写,其中对话被记下以便通过特定语言解释器程序进行解释。如果针对所述语言已经开发出编译器,脚本语言也可以被编译,但是解释更加通用,这是由于其为特意用于脚本语言的。
某些脚本语言是较大系统的一部分,所述脚本语言嵌入在系统内并且依赖于该系统。
本发明部分实施例使用JavaScript。JavaScript是脚本编程语言的示例。它总是被应用于客户侧万维网(web)开发。JavaScript是ECMAScript标准的实现。JavaScript是动态、弱型、具有第一类函数的基于原型的语言。JavaScript受到很多语言的影响而且被设计为具有与Java相似的外表,但是更容易被非编程人员使用。该语言由于其在网站(作为客户侧JavaScript)的应用而广为人知,但是也被有利地用于使能对嵌入在其他应用中的对象的脚本访问。尽管名称是JavaScript,但是它与Java编程语言不相关;虽然两者共同借鉴了C语言的语法。JavaScript是SunMicrosystems,Inc.公司的注册商标。
本发明某些实施例使用ECMAScript。ECMAScript是脚本编程语言的示例,由Ecma International在ECMA-262规范中标准化。该语言被广泛应用于万维网,而且当所述规范的两种基本实现之后,通常称作JavaScript或Jscript。在许多应用中,尤其是在万维网(web)浏览器中都支持ECMAScript。在万维网浏览器中ECMAScript可以被统称为JavaScript。典型地,术语(dialect)包括它们自身的不同的标准库,某些标准库可以被分别标准化——诸如W3C规定的DOM。某些实现方式,诸如用于Flash的ActionScript,具有完全不同库集合。这意味着按照ECMAScript的一个术语编写的应用将可能无法按照另一术语工作,当然除非这两个术语被设计为兼容的。
参考图3,其中描述了根据本发明实施例的一般使用模式。在步骤201用户触摸标签114。在步骤202浏览器102被启动。所述启动可能是通过该触摸触发的。在步骤203所述浏览器联系标签114中规定的URL。在步骤204,具有嵌入的脚本编程语言的内容118(例如,网页)被载入到浏览器102。在步骤205,被下载的内容106引导用户触摸标签114或114’。在步骤206,用户触摸标签114或114’。脚本编程语言在本地处理来自标签114’、114’的信息,并且在步骤207与用户交互。在步骤208,经处理的数据122被发送到服务器116。
在各种进一步的使用场景中,近场通信读取器112可以是RFID读取器。RFID读取器可以读取标签114。有利地,标签114包含例如触发装置100的浏览器102的URL或相应的路径。因此,在读取标签114基础上,浏览器102可以被有利地触发。相应的,浏览器102连接到所述路径的目的地。所述目的地可以例如包含基于html的内容。而且,所述目的地可以包含具有所需功能的脚本,所述脚本使能到所述近场通信模块的接口或者在近场通信模块之间的接口。相应的,本发明的各种进一步飞实施例,装置100的用户不需要手工保存所述脚本(以及所述目的地的地址)。有利地,连接建立可以自动发生。此外,通过各种进一步的实施例,服务提供商能够向用户提供所需的“观看并感受”。例如,在与VISA应用相关的支付行为等情况下,能够向用户提供VISA标志和/或主题歌。在所述标签被提交进入的万维网服务器116是装置100的sim卡的场景下,可以执行本地支付行为。可替代的,所述sim卡可以是更一般的智能卡,例如安全单元。这样,支付可以通过所述visa支付应用完成,从而使得能够在不联系支付服务器或支付网络情况下本地支付。而且,可以轻易完成更新,因为例如用于解释从近场通信标签或任意其他邻近区域通信实体中读取的信息的必要信息可以在浏览器中被更新,或者通过简单获取至少包含脚本编程信息的信息被更新,在此基础上可以重新配置浏览器。JavaScript和浏览器通常不依赖于平台,从而使得所述装置和所述装置的部分以及所述系统通常能够通过同样的指令而操作而不需要更加特别的单独调整,而在没有标签和接口的手工更新中所述单独调整是必要的。因此,根据本发明实施例,从诸如近场通信标签中读取的信息可以在浏览器配置的基础上被不同的解释,从而使得在初始配置中在读取所述信息时所述浏览器可以执行第一操作,而且在浏览器更新之后,在读取所述信息时所述浏览器可以执行与第一操作不同的第二操作。利用这类操作,所述装置的功能可以通过空中接口被更新,而不需要完成任何用于更新的手工操作,而且基于服务提供商或运营商的个人需要提供用于定制装置的增强的方法。
在各种进一步的使用场景中,用户可能通过触摸标签114获得例如产品信息。相应的,浏览器102在便利的近场通信接口的帮助下与服务器116连接,而且浏览器102能够执行与标签114相关的内容。例如,为装置100的用户方便地提供购物。
在各种进一步的使用场景中,装置100的用户能够通过触摸标签114触发到服务器116的连接。相应的,在近场通信和服务器之间的接口可以通过触摸标签114被触发。
现在参考图4,其中根据特别与NFC通信相关的本发明实施例描述了脚本编程语言功能的示例。然而,应注意,图的各种步骤也可以应用到其他邻近通信技术。在步骤301中,存在用于NFC事件的寄存器。在步骤302,NFC事件被接收。打开到标签114的连接(步骤303)。从标签中读出数据(步骤304)。在步骤305数据被写到标签114。在步骤306发生NDEF格式化功能。NDEF是定义用于NFC通信的数据格式的示例。在步骤307,NFC事件被注销。
本发明进一步的实施例利用智能卡用户接口,例如,用户识别模块(SIM)卡用户接口(UI)。通常智能卡或SIM可以是SD卡或实际上的任何其他辅助安全单元。在进一步的实施例中,智能卡或SIM卡包含万维网服务器116。这可以基于,例如,智能卡网页服务器标准(SCWS)。由此小型万维网服务器可以被有利地安装到智能卡或SIM内。通信运营商现在可以配置小型SCWS小服务程序(servlet)。SCWS小服务程序包含JavaScript,其能够被有利地用于控制NFC功能,例如像本发明各种实施例中描述的那样。有利地,运营商能够通过常规的智能卡或SIM接口拥有对NFC功能的控制,甚至不需要使用低层次HCI标准。而且运营商能够具有相对简单的NFC服务的配置。而且本发明各种进一步的实施例并不实际需要互联网连接。这意味着,对于用户没有成本。进一步的实施例可以相对容易地被配置到装置中,因此不发生明显的成本。
本发明另一个进一步的实施例使用嵌入式万维网服务器。标签114’本身能够有利的包含万维网服务器116’(或者等同的,例如通过使用NFC论坛WEB RTD)。当使用所述进一步实施例时,根据诸如触摸的触发,浏览器被启动。标签114’的内容可以被展示。通过适当的JavaScript程序,标签114’的内容可以直接引导用户例如再次触摸标签114’。在可替代的进一步的实施例中,脚本可以引导用户触摸另一标签114”。标签的功能可以被改变。例如在公共汽车站:第一触摸:“寻找路径”,第二触摸:“选择城市”等等。有利的,所有都可以在本地完成,而且如果不想要连接到互联网就不必连接。
本发明另一进一步的实施例可以与传统电话操作相关。例如,在获取的使能在邻近区域通信模块和浏览器之间进行数据通信的脚本语言的帮助下,可以从所述标签中获得短信消息和目的地。用户触摸所述标签并且相应的览器能够接收短信消息。例如另一示例,通过读取所述标签可以激活呼叫。例如,用户触摸标签而且装置相应地拨叫标签内容规定的目的地。
仍然本发明另一进一步的实施例使用微件(widget)。微件是JavaScript或HTML的小部件。微件被下载到装置100中。微件驻留在装置100中直到被访问。浏览器102是微件的执行环境。微件可以被等同为AppleDashboard。有利的,内建软件可以被使用等同的微件替代。使用者必须注册到NFC事件。用户可以简单使用他的浏览器混搭他想要哪个NFC功能。例如,可以使用浏览器完成所有新的RTD支持。所述进一步的实施例也相对容易配置。部分标签甚至在运行之前要求安装(例如触摸此处以安装本微件)。
在本发明各种实施例中,所述计算机程序可以是计算机程序产品。所述计算机程序产品是有形实物的示例。例如,它可以是介质诸如磁盘、硬盘、光介质、CD-ROM、软盘或类似存储器等等。在另一示例中,所述产品可以是信号形式诸如电磁信号。例如,所述信号可以在网络中被发送。所述产品包含安排用于完成本发明各种实施例的操作的计算机程序代码或代码装置。
衍生和范围
尽管上述描述包含很多细节,这些仅仅被提供用于举例说明本发明并且不应构成本发明的限制。还应注意,在单个或多个实施例中很多细节可以以多种方式修改。这样,对于本领域技术人员来说,显然可以在不背离本发明的精神和范围的情况下在本发明的装置和过程中进行各种修改和变化。