CN102446105B - 可按需定制应用程序的方法和系统 - Google Patents

可按需定制应用程序的方法和系统 Download PDF

Info

Publication number
CN102446105B
CN102446105B CN201010502070.9A CN201010502070A CN102446105B CN 102446105 B CN102446105 B CN 102446105B CN 201010502070 A CN201010502070 A CN 201010502070A CN 102446105 B CN102446105 B CN 102446105B
Authority
CN
China
Prior art keywords
application program
application
terminal device
updated
message field
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201010502070.9A
Other languages
English (en)
Other versions
CN102446105A (zh
Inventor
陈实如
王翔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
LEADE TECHNOLOGY DEVELOPMENT Co Ltd
Peking University Founder Group Co Ltd
Original Assignee
LEADE TECHNOLOGY DEVELOPMENT Co Ltd
Peking University Founder Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by LEADE TECHNOLOGY DEVELOPMENT Co Ltd, Peking University Founder Group Co Ltd filed Critical LEADE TECHNOLOGY DEVELOPMENT Co Ltd
Priority to CN201010502070.9A priority Critical patent/CN102446105B/zh
Publication of CN102446105A publication Critical patent/CN102446105A/zh
Application granted granted Critical
Publication of CN102446105B publication Critical patent/CN102446105B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供一种按需定制应用程序的方法,包括:业务处理平台从终端设备接收到非业务请求之后,利用终端设备与业务处理平台之间的协议中设置的用于存放更新的应用程序的基本信息的消息字段,将更新的应用程序的基本信息填入到反馈数据包中,并将该反馈数据包发送给终端设备;所述基本信息包括应用程序的名称和在应用下载服务器中的存放位置;终端设备接收到所述反馈数据包之后,根据该消息字段到应用下载服务器下载、安装更新的应用程序。相应地,提供按需定制应用程序的终端和系统。通过本发明,终端设备可根据业务处理平台的需要动态下载安装最近更新的应用程序,从而提高终端设备的实用性和灵活性。

Description

可按需定制应用程序的方法和系统
技术领域
本发明涉及电子业务技术领域,特别涉及一种可按需定制应用程序的方法、终端和系统。
背景技术
随着计算机技术的发展,目前几乎所有的行业都进入了信息化时代,出现了可与各种业务处理平台进行业务处理的各种计算机终端设备,例如,销售终端(POS)设备,POS终端设备是一种多功能的电子支付终端,消费者只需在POS设备上刷卡和输入密码就可实现安全、快捷的电子支付,因此,POS设备在许多支付场合得到了广泛应用。
通常,这些终端设备内部都集成有多个应用程序,每个应用程序都有自己的实现流程。用户启动某个应用程序,其相应的程序模块按固定的实现流程完成交易。在这种情况下,当需要增加应用程序或者修改业务流程时,往往需要对终端软件系统进行刷新,而对于类似于POS设备的终端设备,甚至需要打开终端设备重新设置密钥来进行刷新。在对终端软件系统进行刷新时,无论是现场操作还是远程操作,由于更新全部文件系统,耗费的时间较长,而打开终端设备重新设置密钥很可能会影响到终端设备内的其它密钥或器件。因此,现有的终端设备无法提供一种简单的、实用的、可按需求更新POS终端应用程序和业务流程的机制。
针对这个问题,申请号为200810103660.7的中国专利申请“可按需定制的支付终端”提出了一种按需定制业务流程的实现方法。该方法通过建立所有业务的流程描述表来描述每个业务流程中需要运行的元模块、流程控制、各个元模块之间的数据传递以及整个业务流程过程的组合逻辑,并通过按照一定顺序调用不同的元模块来实现业务流程的按需定制,改进了现有的支付终端的实用性和灵活性。但是,该方法仅能够根据需要定制按照模块方式开发的应用程序的实现流程中的模块,却不能根据需要定制不按模块方式开发的应用程序的实现流程(即,不能随意改变不按模式开发的应用程序的实现流程),也不能根据需要定制应用程序,即,不能简单、方便地增加新定制的应用程序或更新终端设备已安装的应用程序的新版本。
发明内容
为了解决以上问题,本发明提供一种按需定制应用程序的方法、终端和系统,以实现应用程序的按需定制。
为了实现以上目的,本发明提供的按需定制应用程序的方法包括以下步骤:业务处理平台从终端设备接收到非业务请求之后,利用终端设备与业务处理平台之间的协议中设置的用于存放更新的应用程序的基本信息的消息字段,将更新的应用程序的基本信息填入到反馈数据包中,并将该反馈数据包发送给终端设备;所述基本信息包括应用程序的名称和在应用下载服务器中的存放位置;
终端设备接收到所述反馈数据包之后,根据该消息字段到应用下载服务器下载、安装更新的应用程序。
优选地,业务处理平台的接入平台从终端设备接收到所述非业务请求之后,判断在从该终端设备最后更新应用程序的时间到当前时间期间业务处理平台更新的应用程序中是否存在该终端设备还未下载的更新的应用程序,如果存在该终端设备还未下载的更新的应用程序,则利用所述消息字段将该终端设备还未下载的更新的应用程序的基本信息填入到反馈数据包中;终端设备接收到反馈数据包之后,解析反馈数据包,并判断反馈数据包中是否存在所述消息字段,如果判断反馈数据包中存在所述消息字段,则对该消息字段进行解析,并根据解析该消息字段得到的存放位置到应用下载服务器下载安装该终端设备还未下载的更新的应用程序。
优选地,业务处理平台的接入平台整理应用程序列表并记录终端设备的应用程序下载状态和下载时间,在所述应用程序列表中包括业务处理平台所提供的所有应用程序的编号、名称、版本、在应用下载服务器中的存放位置和最后更新时间;业务处理平台的接入平台从终端设备接收到所述非业务请求之后,根据整理的应用程序列表和记录的终端设备下载状态和下载时间来判断在从该终端设备最后更新应用程序的时间到当前时间期间业务处理平台更新的应用程序中是否存在该终端设备还未下载的更新的应用程序。
优选地,所述基本信息还包括更新的应用程序的版本,并且,业务处理平台的接入平台从终端设备接收到所述非业务请求之后,利用所述消息字段将在从该终端设备最后更新应用程序的时间到当前时间期间业务处理平台更新的所有应用程序的基本信息填入反馈数据包中,并将该反馈数据包发送给终端设备;终端设备接收到反馈数据包之后,解析反馈数据包,并判断反馈数据包中是否存在所述消息字段,如果判断反馈数据包中存在所述消息字段,则对该消息字段进行解析,并根据解析该消息字段得到的更新的应用程序的基本信息来判断是否存在该终端设备还未下载的更新的应用程序,如果存在该终端设备还未下载的更新的应用程序,则根据解析该消息字段得到的存放位置到应用下载服务器下载安装该终端设备还未下载的更新的应用程序。
优选地,终端设备本地存储有自己的应用程序列表,每次到应用下载服务器下载安装更新的应用程序之后将下载安装的更新的应用程序的名称和版本存储到本地的应用程序列表中。
优选地,终端设备在判断反馈数据包中存在所述消息字段并且对该消息字段进行解析之后,通过将解析该消息字段得到的应用程序的名称和版本与终端设备本地存储的应用程序名称和版本进行对比来判断是否存在该终端设备还未下载的更新的应用程序。
优选地,所述消息字段用于存放应用程序列表,在所述应用程序列表中包括业务处理平台所提供的所有应用程序的编号、名称、版本、在应用下载服务器中的存放位置和最后更新时间;业务处理平台的接入平台利用所述消息字段将所述应用程序列表填入反馈数据包中;终端设备在判断反馈数据包中存在所述消息字段并且对该消息字段进行解析之后,通过将解析该消息字段得到的应用程序列表中的应用程序的名称和版本与本地存储的应用程序列表中的应用程序名称和版本进行对比来判断是否存在该终端设备还未下载的更新的应用程序。
优选地,其特征在于,在终端设备的显示屏幕上提供用户交互界面,在该用户交互界面上,提供供用户选择是否在终端设备上下载安装更新的应用程序的选项或按钮。
优选地,其特征在于,在终端设备和业务处理平台之间保持一个通知通道,每当业务处理平台更新应用程序并将更新的应用程序存放到应用下载服务器中时,业务处理平台通过所述通知通道通知终端设备,如果此时终端设备处于开机状态,则根据终端调用接入算法计算的接入时间向业务处理平台发起应用程序更新请求并执行上述方法中的任何一个;如果此时终端设备没有开机,则在终端设备下次开机后首先通过所述通知通道到业务处理平台检查在从上次关机到当前开机时间期间业务处理平台是否更新应用程序,如果在从上次关机到当前开机时间期间业务处理平台更新了应用程序,则执行上述方法中的任何一个。
相应地,本发明提供一种按需定制应用程序的终端,其特征在于,终端设备从业务处理平台接收到反馈数据包之后,根据终端设备与业务处理平台之间的协议中设置的用于存放更新的应用程序的基本信息的消息字段,到应用下载服务器下载、安装更新的应用程序,所述基本信息包括应用程序的名称和在应用下载服务器中的存放位置。
优选地,终端设备从业务处理平台的接入平台接收到反馈数据包之后,解析反馈数据包时,判断反馈数据包中是否存在所述消息字段;如果判断反馈数据包中存在所述消息字段,则对该消息字段进行解析,并且,在业务处理平台的接入平台判断在从该终端设备最后更新应用程序的时间到当前时间期间业务处理平台更新的应用程序中是否存在该终端设备还未下载的更新的应用程序并利用所述消息字段将该终端设备还未下载的更新的应用程序的基本信息填入反馈数据包中的情况下,根据解析该消息字段得到的存放位置到应用下载服务器下载安装该终端设备还未下载的更新的应用程序;在所述基本信息还包括更新的应用程序的版本并且业务处理平台的接入平台利用所述消息字段将在从该终端设备最后更新应用程序的时间到当前时间期间业务处理平台更新的所有应用程序的基本信息填入到反馈数据包中的情况下,根据解析该消息字段得到的更新的应用程序的基本信息来判断是否存在该终端设备还未下载的更新的应用程序,如果存在该终端设备还未下载的更新的应用程序,则根据解析该消息字段得到的存放位置到应用下载服务器下载安装该终端设备还未下载的更新的应用程序。
优选地,所述终端设备本地存储有自己的应用程序列表,每次到应用下载服务器下载安装更新的应用程序之后将下载安装的更新的应用程序的名称和版本存储到本地的应用程序列表中。
优选地,终端设备在判断反馈数据包中存在所述消息字段并且对该消息字段进行解析之后,通过将解析该消息字段得到的应用程序的名称和版本与终端设备本地存储的应用程序名称和版本进行对比来判断是否存在该终端设备还未下载的更新的应用程序。
优选地,在所述消息字段用于存放其中包括业务处理平台所提供的所有应用程序的编号、名称、版本、在应用下载服务器中的存放位置和最后更新时间的应用程序列表的情况下,终端设备在判断反馈数据包中存在所述消息字段并且对该消息字段进行解析之后,通过将解析该消息字段得到的应用程序列表中的应用程序的名称和版本与终端设备本地存储的应用程序名称和版本进行对比来判断是否存在该终端设备还未下载的更新的应用程序。
优选地,在终端设备的显示屏幕上提供用户交互界面,在该用户交互界面上,提供供用户选择是否在终端设备上下载安装更新的应用程序的选项或按钮。
相应地,本发明提供一种按需定制应用程序的系统,包括终端设备和业务处理平台,其特征在于,该系统还包括用于存放业务处理平台的所有业务的应用程序的应用下载服务器,并且,业务处理平台从终端设备接收到非业务请求之后,利用终端设备与业务处理平台之间的协议中设置的用于存放更新的应用程序的基本信息的消息字段,将更新的应用程序的基本信息填入到反馈数据包中,并将该反馈数据包发送给终端设备;所述基本信息包括应用程序的名称和在应用下载服务器中的存放位置;终端设备接收到所述反馈数据包之后,根据所述消息字段到应用下载服务器下载、安装更新的应用程序。
优选地,业务处理平台的接入平台接收到所述非业务请求之后,判断在从该终端设备最后更新应用程序的时间到当前时间期间业务处理平台更新的应用程序中是否存在该终端设备还未下载的更新的应用程序,如果存在该终端设备还未下载的更新的应用程序,则利用所述消息字段将该终端设备还未下载的更新的应用程序的基本信息填入到反馈数据包中;终端设备接收到反馈数据包之后,解析反馈数据包,并判断反馈数据包中是否存在所述消息字段,如果判断反馈数据包中存在所述消息字段,则对该消息字段进行解析,并根据解析该消息字段得到的存放位置到应用下载服务器下载安装该终端设备还未下载的更新的应用程序。
优选地,所述基本信息还包括更新的应用程序的版本,并且,业务处理平台的接入平台利用所述消息字段将在从该终端设备最后更新应用程序的时间到当前时间期间业务处理平台更新的所有应用程序的基本信息填入反馈数据包中,并将该反馈数据包发送给终端设备;终端设备接收到反馈数据包之后,解析反馈数据包,并判断反馈数据包中是否存在所述消息字段,如果判断反馈数据包中存在所述消息字段,则对该消息字段进行解析,并根据解析该消息字段得到的更新的应用程序的基本信息来判断是否存在该终端设备还未下载的更新的应用程序,如果存在该终端设备还未下载的更新的应用程序,则根据解析该消息字段得到的存放位置到应用下载服务器下载安装该终端设备还未下载的更新的应用程序。
优选地,在终端设备和业务处理平台之间保持一个通知通道,每当业务处理平台更新应用程序并将更新的应用程序存放到应用下载服务器中时,业务处理平台通过所述通知通道通知终端设备,如果此时终端设备处于开机状态,则根据终端调用接入算法计算的接入时间向业务处理平台发起应用程序更新请求并执行上述方法中的任何一个;如果此时终端设备没有开机,则在终端设备下次开机后首先通过所述通知通道到业务处理平台检查在从上次关机到当前开机时间期间业务处理平台是否更新应用程序,如果在从上次关机到当前开机时间期间业务处理平台更新了应用程序,则执行上述方法中的任何一个。
从以上技术方案可看出,终端设备可根据业务处理平台的需要动态下载安装新定制的应用程序或已安装应用程序的新版本,而无需对终端软件系统进行刷新,即,无需更新终端设备的全部文件系统,也无须打开终端设备重新设置密钥,从而提供了一种简单的、实用的按需定制应用程序的方法,提高了终端设备的实用性和灵活性。
附图说明
图1是传统的POS支付系统的示意性框图;
图2是传统的POS支付系统的签到流程的示意图;
图3是根据本发明实施例的按需定制应用程序的系统的示意性框图;
图4是根据本发明的第一实施例的按需定制应用程序的方法的流程图;
图5是根据本发明的第一实施例的POS终端设备解析反馈数据包的过程的流程图;
图6a和图6b是根据本发明的第一实施例的用户界面的示意图;
图7是根据本发明的第二实施例的按需定制应用程序的方法的流程图。
具体实施方式
以下,将参照附图和实施例对本发明进行详细描述。
在以下将描述的实施例中,以POS支付系统的签到流程作为示例对本发明方法进行说明。但是,应该理解,本发明方法并不仅限于应用于POS支付系统及其签到流程,而是可适用于任何可通过终端设备操作的电子业务处理系统(包括业务处理平台和终端设备)及其非业务流程。为了更加清楚地显示本发明对现有技术的改进之处,以下将首先对传统的POS支付系统的操作流程进行说明。
图1是传统的POS支付系统的示意性框图。如图1所示,该系统包括POS终端设备101、前置机或接入平台102、支付业务处理服务器104、加密机105、支付网关106。此外,从图1可看出,前置机或接入平台102、支付业务处理服务器104、加密机105和支付网关106共同构成一个支付平台。这里指出,支付平台仅仅是上述业务处理平台的一个示例。
通常,POS终端设备101每天至少向支付业务处理服务器104发起1次签到请求,签到协议由企业自定义或者采用通用标准,比如,ISO 8583协议。我国银联、银行、SP(服务提供商)支付平台采用的协议大都是基于IOS 8583改进而形成的协议。在POS终端设备101与支付业务处理服务器104之间采用电话线连接的情况下,当POS终端设备101发起签到请求时,POS终端设备101利用内嵌的modem(调制解调器)拨通支付业务处理服务器104的前置机102,建立PPP(点对点协议)通讯链路。在终端设备101与支付业务处理服务器104之间采用宽带连接的情况下,当POS终端设备101发起签到请求时,POS终端设备101直接与支付业务处理服务器104的接入平台102建立TCP/IP连接,从而与支付业务处理服务器104建立宽带通讯链路。以下,为描述简单起见,将以ISO 8583协议和前置机102为例来说明POS支付系统的实现流程。
图2是传统的POS支付系统的签到流程的示意图。如图2所示,传统的POS签到流程包括签到、密钥交换和状态上报这三个部分,每个部分的执行都是通过POS终端设备101向支付业务处理服务器104的前置机102发送消息来实现的。消息包含消息头和消息体。在图2中,0800、0810、9000为消息头,POS终端设备101和前置机102根据接收到的消息头来判定后续工作的性质,执行后续工作所需的数据信息由消息体字段给出。
参照图2,传统的POS签到流程如下:
步骤1、POS终端设备101向前置机102发送签到请求0800,进行签到;
步骤2、前置机102在接收到签到请求0800之后,向POS终端设备101发送签到允许响应0810,并将本终端的签到状态登记在设备汇总信息表中;
步骤3、POS终端设备101向前置机102发送交换密钥请求0800;
步骤4、前置机102在接收到交换密钥请求0800之后,向POS终端设备101发送MAC(消息认证码)密钥和PIN(个人识别码)密钥响应0810;
步骤5、POS终端设备在从前置机102接收到密钥后,检验密钥是否正确,如果正确,则向前置机102发送状态信息签到请求9000,否则重复步骤1和2。
在POS支付系统中,典型的消息字段结构体定义如下:
IOS 8583协议定义128个字段,每个字段提供一种数据信息,这128个字段组成的消息体如下:
在具体实现时,不同支付业务平台在字段结构体和消息体的定义方面略有差异。
对于图2所示的POS签到流程中的签到步骤,POS终端设备101与支付业务处理服务器104之间传送的消息体如下:
POS终端设备101发起签到请求0800,其携带的消息体如下:
前置机102反馈的签到允许响应0810所携带的消息体如下:
另外,由于本发明不涉及密钥交换和状态上报步骤(属于现有技术),因此,在本说明书中省略其描述。
以下,将对根据本发明方法的POS签到流程进行描述。
图3是根据本发明实施例的按需定制应用程序的系统的示意性框图。如图3所示,该系统与图1所示系统的不同之处,在于增加了一个应用下载服务器103,用于存放支付业务处理服务器104所提供的所有应用程序,具体地,用于存放支付业务处理服务器104所提供的所有应用程序的软件包,当然,还可存放应用程序的其它文件,比如,未经压缩的软件程序。
在实现按需定制应用程序之前,需要预先在POS终端设备101与支付业务处理服务器104之间的ISO 8583协议中增加遵循该协议的用于存放更新的应用程序的基本信息(包括更新的应用程序的软件包在下载应用服务器中的存放位置)的消息字段。在本说明书中,将该消息字段命名为APPLICATION字段。当然应该理解,还可按照所使用的协议定义任何用于存放应用程序更新相关的消息字段。
以下,将对本发明方法的两个实施例进行说明。
(第一实施例)
在本实施例中,前置机102整理应用程序列表,即,每当支付业务处理服务器104有应用程序更新时,在应用程序列表中添加关于更新的应用程序(包括新定制的应用程序或者终端设备已安装的应用程序的新版本)的信息,包括这些更新的应用程序的编号、程序名称、版本、其软件包在下载应用服务器中的存放位置和最后更新时间。应用程序列表的示意性实现如表1所示。
表1应用程序列表
序号 程序名称 版本 软件包存放位置 最后更新时间
1 天气预报 V1.2.0 172.20.0.188/天气预报 2010-2-19
2 缴费 V2.3.0 172.20.0.188/缴费 2010-4-2
3 彩票 V1.2.0 172.20.0.188/彩票 2010-4-15
4 商超购物 V2.1.0 172.20.0.188/商超购物 2010-4-20
4 股票 V1.0.0 172.20.0.188/股票 2010-5-3
5 游戏 V1.0.0 172.20.0.188/游戏 2010-5-3
6 电影票 V1.0.3 172.20.0.188/电影票 2010-5-3
7 ……
此外,前置机102还记录POS终端设备101的应用程序下载状态和下载时间,即,记录POS终端设备101在何时下载安装了哪些更新的应用程序,从而前置机102可根据当前应用程序列表和记录的终端设备101的下载状态和下载时间来判断是否存在POS终端设备101还未下载的更新的应用程序。如果存在POS终端设备101还未下载的更新的应用程序,则前置机102利用预先定义的APPLICATION字段将这些更新的应用程序的程序名称和其软件包在应用下载服务器中的存放位置填入签到反馈数据包中。
图4是根据本发明的第一实施例的按需定制应用程序的方法的流程图。参照图4,该方法包括以下步骤:
步骤S401、POS终端设备101向前置机102发送签到请求0800,进行签到;
步骤S402、前置机102在接收到签到请求0800之后,根据当前应用程序列表和记录的POS终端101的应用程序下载状态和下载时间来判断是否存在POS终端设备101还未下载的更新的应用程序;如果存在POS终端设备101还未下载的更新的应用程序,则执行步骤S403和步骤S404,否则直接执行步骤S404;
步骤S403、前置机102从应用程序列表中获取POS终端设备101还未下载的更新的应用程序的名称和存放位置;
步骤S404、前置机102封装签到反馈数据包,即,将前置机102待发送的消息数据填入签到反馈数据包中,在存在POS终端设备101还未下载的更新的应用程序的情况下,还需要利用APPLICATION字段将在步骤S403中获取的POS终端设备101还未下载的更新的应用程序的名称和存放位置填入签到反馈数据包中;
步骤S405、前置机102向POS终端设备101发送签到允许响应0810,并将本终端的签到状态登记在设备汇总信息表中;
步骤S406、POS终端设备101解析签到反馈数据包;
步骤S407、POS终端设备101根据对签到反馈数据包中的消息字段的解析判断是否存在新应用程序下载要求,如果发现存在新应用程序下载要求,即,存在APPLICATION字段,则执行步骤S408,否则执行密钥交换步骤和状态上报步骤;
步骤S408、POS终端设备101与应用下载服务器103建立连接,到应用下载服务器103从解析APPLICATION字段而得到的存放位置下载安装POS终端设备101还未下载的更新的应用程序的软件包。
在本实施例中,POS终端设备与支付业务处理服务器104之间传送的消息体如下:
POS终端设备101发起签到请求0800,其携带的消息体如下:
从以上消息体可看出,签到请求0800携带的消息体与现有技术中签到请求0800携带的消息体完全相同。
在本实施例中,假设5月3日为POS终端设备101最后更新应用程序的时间,并且前置机102判断POS终端设备101还未下载支付业务处理服务器104在5月3日更新的应用程序。从表1可看出,股票、游戏、电影票应用属于新增应用,因此,前置机102按照预先定义的APPLICATION字段,填写APPLICATION字段,如下所示:
/*FLD 26*/{0,″APPLICATION″,2,0,0,0,“股票,172.20.0.188/股票”,0},
/*FLD 27*/{0,″APPLICATION″,1,0,0,0,“游戏币,172.20.0.188/游戏币”,0},
/*FLD 28*/{0,″APPLICATION″,8,0,1,0,“电影票,172.20.0.188/电影票”,0},
当然,应该理解,以上APPLICATION字段仅仅是示例性的,还可根据需要在APPLICATION字段中存放其它信息(比如最近更新的应用程序的版本、前置机102整理的应用程序列表)。
然后,将以上APPLICATION字段并入到前置机102将反馈的0810消息体中,如下所示:
以上0810消息头和消息体即构成前置机102发送给POS终端设备101的签到反馈数据包。
POS终端设备101在接收到签到反馈数据包之后,对签到反馈数据包进行解析,解析过程如图5所示。首先,在步骤S501中,对签到反馈数据包进行BITMAP解析。然后在步骤S502中,判断是否存在消息字段。如果判断不存在消息字段,则结束解析。如果判断存在消息字段,则在步骤S503中,判断是否存在字段2至128。如果不存在,则结束解析。如果存在,则在步骤S504中对这些字段进行解析。接着,在步骤S505中,执行字段内容。在本实施例中,经过图4所示解析之后,发现新增加了APPLICATION字段26、27和28,因此,在步骤S505中,POS终端设备101将根据APPLICATION字段26、27和28字段中的下载地址到应用下载服务器103中下载安装最近更新的应用程序。
在POS终端设备101上,可提供如图6a和图6b所示的用户界面。在图6a所示的用户界面上,POS终端设备上已安装了“天气预报”、“缴费”、“彩票”、“商超购物”四个应用程序,每个应用程序都有一个链接。用户点击这些链接即可访问对应的内容资源。根据以上方法加载股票、游戏币、电影票应用程序之后,POS终端设备101的用户界面变为如图6b所示,在该用户界面上,增加了“股票”、“游戏币”、“电影票”这3个应用连接。当POS终端设备支持的应用程序很多时,如图6b所示的用户界面还可具备自动翻页功能。
此外,如上所述,还可在POS终端设备101上提供用户交互界面,在该用户交互界面上提供供用户选择是否在POS终端设备101上下载安装在从POS终端设备10I最后更新应用程序的时间到当前时间期间支付业务处理服务器104更新的应用程序的选项或按钮。
应该指出,在本实施例中,由于由支付业务处理服务器104的前置机102判断POS终端设备101是否需要更新应用程序,而POS终端设备101本身并不判断是否已经下载最近更新的应用程序,即,POS终端设备101本身并不存储已经下载安装的应用程序的名称和版本,也不将最近更新的应用程序的版本与本地存储的已下载安装的应用程序的名称和版本进行对比,所以在本实施例中,APPLICATION字段中可仅填入最近更新的应用程序的名称及其软件包在应用下载服务器103中的存放位置。另外,除了在每当支付业务处理服务器104有应用程序更新时,前置机102整理应用程序列表之外,前置机102还可在终端设备101发送签到请求之后根据应用下载服务器103中更新的应用程序整理应用程序列表。
(第二实施例)
本实施例与第一实施例的不同之处在于,不是由前置机102判断POS终端设备101是否已经下载安装最近更新的应用程序,而是由前置机102将在从POS终端设备101最后更新应用程序的时间到当前时间期间支付业务处理服务器104更新的所有应用程序的程序名称、版本和其软件包在应用下载服务器103中的存放位置填入APPLICATION字段中,然后由POS终端设备101自己将解析签到反馈数据包而得到的程序名称和版本与本地存储的应用程序的名称和版本进行对比,从而确定是否需要下载安装更新的应用程序。
图7是根据本发明的第二实施例的按需定制应用程序的方法的流程图。参照图7,该方法包括以下步骤:
步骤S701、POS终端设备101向前置机102发送签到请求0800,进行签到;
步骤S702、前置机102从应用程序列表中获取在从POS终端设备101最后更新应用程序的时间到当前时间期间支付业务处理服务器104更新的所有应用程序的名称、版本和下载地址;
步骤S703、前置机102封装反馈数据包,即,将前置机102待发送的消息数据填入签到反馈数据包中,包括利用APPLICATION字段将在步骤S702中获取的在从POS终端设备101最后更新应用程序的时间到当前时间期间支付业务处理服务器104更新的所有应用程序的名称、版本和存放位置填入签到反馈数据包中;
步骤S704、前置机102向POS终端设备101发送签到允许响应0810,并将本终端的签到状态登记在设备汇总信息表中;
步骤S705、POS终端设备101解析签到反馈数据包;
步骤S706、POS终端设备101将解析得到的应用程序的名称和版本与本地存储的应用程序名称和版本进行对比;
步骤S707、POS终端设备101根据步骤S706的对比结果判断是否存在还未下载的更新的应用程序,如果发现存在POS终端设备101还未下载的新应用程序,则执行步骤S708,否则执行密钥交换步骤和状态上报步骤;
步骤S708、POS终端设备101与应用下载服务器103建立连接,从解析得到的下载地址下载POS终端设备101还未下载的更新的应用程序的软件包。
从以上描述可看出,本发明在终端设备和业务处理平台之间的现有通讯协议基础上增加了了APPLICATION字段,终端设备和业务处理平台通过对该字段进行处理来更新应用程序。对于终端设备而言,需要修改终端签到处理流程,即,在原有的签到流程中增加对APPLIATION字段的解析和相应的处理。对于业务处理平台而言,需要增加应用下载服务器,其接入平台需要修改协议打包流程,即,利用APPLICATION字段将应用程序更新的相关信息填入到签到反馈数据包中。
(第三实施例)
本实施例与第一实施例和第二实施例的不同之处在于,在POS终端设备101和支付业务处理服务器104之间保持一个通知通道。每当支付业务处理服务器104更新应用程序并将更新的应用程序的软件包存放到应用下载服务器103中时,支付业务处理服务器104就通过该通知通道通知POS终端设备101。
此时,如果POS终端设备101处于开机状态,则根据终端调用接入算法计算的接入时间向业务处理平台发起应用程序更新请求并执行第一实施例或第二实施例中所述的终端设备应用程序更新操作,即,图4或图7所示的流程。这里,终端调用接入算法是指计算终端设备发起接入请求的时刻的算法,引入终端调用接入算法的目的是减轻业务处理平台的处理负担,如果不引入终端调用接入算法,则有可能所有的终端设备会同时向业务处理平台发起更新请求,从而增加业务处理平台的处理压力。终端调用接入算法可采用现有技术,例如,终端设备将收到通知的时刻作为起点,将接下来的一个小时分为多个时间段,终端设备随机选择一个时间段,向业务处理平台发起更新请求。
如果POS终端设备101没有开机,则在POS终端设备101下次开机后首先通过该通知通道到支付业务处理服务器104检查在从上次关机到当前开机时间期间支付业务处理服务器104是否更新应用程序。如果在从上次关机到当前开机时间期间支付业务处理服务器104更新了应用程序,则执行第一实施例或第二实施例中所述的终端设备应用程序更新操作,即,图4或图7所示的流程,同时或者然后完成其它任务,例如,签到、密钥交换、数据同步、记录上报等。
当然,也可将第一实施例或第二实施例与第三实施例的技术方案结合使用,即,不仅在支付业务处理服务器104的前置机102接收到签到请求或交易记录上传请求等非业务请求之后执行上述终端设备应用程序更新操作,而且还在每当支付业务处理服务器104更新应用程序时也根据POS终端设备101是否开机来执行上述终端设备应用程序更新操作。
这里指出,如上所述,本发明并不限于应用于支付终端的签到流程,而是可应用于任何非业务流程。仍以POS支付终端101为例,POS支付终端101和支付业务处理服务器104之间每天需要执行3种任务流程,除了上述签到流程之外,还包括业务处理流程和交易记录上传流程。按照现有的POS支付终端101和支付业务处理服务器104之间的协议规定,每个POS支付终端101每天必须向支付业务处理服务器104签到一次,上传交易记录一次,而业务流程则可以进行任意次数。考虑到每天执行业务流程较多,如果在业务流程中执行上述终端设备应用程序更新操作,则会造成资源浪费,影响业务处理效率,并且考虑到应用程序更新并不是频繁发生,因此,建议在非业务流程期间执行上述终端设备应用程序更新操作。
以上已参照附图和实施例对本发明进行了详细描述,但是,应该理解,本发明并不限于以上所公开的具体实施例,任何本领域的技术人员在此基础之上容易想到的修改和变型都应包括在本发明的保护范围内。比如,还可按照终端设备与业务处理平台之间的协议定义传送应用程序列表的消息字段,业务处理平台的接入平台利用该消息字段将其整理的应用程序列表直接发送给终端设备,终端设备将解析得到的应用程序列表中的最新更新的应用程序的名称和版本与本地存储的应用程序列表中的应用程序名称和版本进行对比,如果发现存在该终端设备还未下载的更新的应用程序,则根据解析得到的应用程序列表中的最近更新的应用程序软件包的存放位置到应用下载服务器下载安装该终端设备还未下载的更新的应用程序的软件包。

Claims (10)

1.一种按需定制应用程序的方法,包括以下步骤:
预先在终端设备与业务处理平台之间的协议中增加遵循该协议的用于存放更新的应用程序的基本信息的消息字段;
业务处理平台的接入平台从终端设备接收到签到请求之后,判断在从该终端设备最后更新应用程序的时间到当前时间期间业务处理平台更新的应用程序中是否存在该终端设备还未下载的更新的应用程序,如果存在该终端设备还未下载的更新的应用程序,则利用终端设备与业务处理平台之间的协议中设置的用于存放更新的应用程序的基本信息的消息字段,将终端设备还未下载的更新的应用程序的基本信息填入到反馈数据包中,并将该反馈数据包发送给终端设备;所述基本信息包括该终端设备还未下载的更新的应用程序的名称和在应用下载服务器中的存放位置;
终端设备接收到反馈数据包之后,解析反馈数据包,并判断反馈数据包中是否存在所述消息字段,如果判断反馈数据包中存在所述消息字段,则对该消息字段进行解析,并根据解析该消息字段得到的存放位置到应用下载服务器下载安装该终端设备还未下载的更新的应用程序;
其中,当基本信息包括终端设备还未下载的更新的应用程序的名称和在应用下载服务器中的存放位置时,业务处理平台的接入平台整理应用程序列表并记录终端设备的应用程序下载状态和下载时间,在所述应用程序列表中包括业务处理平台所提供的所有应用程序的编号、名称、版本、在应用下载服务器中的存放位置和最后更新时间;
业务处理平台的接入平台从终端设备接收到所述签到请求之后,根据整理的应用程序列表和记录的终端设备下载状态和下载时间来判断在从该终端设备最后更新应用程序的时间到当前时间期间业务处理平台更新的应用程序中是否存在该终端设备还未下载的更新的应用程序;
或者,
业务处理平台的接入平台从终端设备接收到签到请求之后,利用所述消息字段将在从该终端设备最后更新应用程序的时间到当前时间期间业务处理平台更新的所有应用程序的基本信息填入反馈数据包中,并将该反馈数据包发送给终端设备;所述基本信息包括该终端设备还未下载的更新的所有应用程序的程序名称、版本和其软件包在应用下载服务器中的存放位置;
终端设备接收到反馈数据包之后,解析反馈数据包,并判断反馈数据包中是否存在所述消息字段,如果判断反馈数据包中存在所述消息字段,则对该消息字段进行解析,并根据解析该消息字段得到的更新的应用程序的基本信息来判断是否存在该终端设备还未下载的更新的应用程序,如果存在该终端设备还未下载的更新的应用程序,则根据解析该消息字段得到的存放位置到应用下载服务器下载安装该终端设备还未下载的更新的应用程序;
其中,所述消息字段用于存放应用程序列表,在所述应用程序列表中包括业务处理平台所提供的所有应用程序的编号、名称、版本、在应用下载服务器中的存放位置和最后更新时间;
业务处理平台的接入平台利用所述消息字段将所述应用程序列表填入反馈数据包中;终端设备在判断反馈数据包中存在所述消息字段并且对该消息字段进行解析之后,通过将解析该消息字段得到的应用程序列表中的应用程序的名称和版本与本地存储的应用程序列表中的应用程序名称和版本进行对比来判断是否存在该终端设备还未下载的更新的应用程序;
其中,所述应用下载服务器用于存放所有应用程序。
2.根据权利要求1所述的方法,其特征在于,当所述基本信息包括该终端设备还未下载的更新的所有应用程序的程序名称、版本和其软件包在应用下载服务器中的存放位置时,终端设备本地存储有自己的应用程序列表,每次到应用下载服务器下载安装更新的应用程序之后将下载安装的更新的应用程序的名称和版本存储到本地的应用程序列表中。
3.根据权利要求2所述的方法,其特征在于,终端设备在判断反馈数据包中存在所述消息字段并且对该消息字段进行解析之后,通过将解析该消息字段得到的应用程序的名称和版本与终端设备本地存储的应用程序名称和版本进行对比来判断是否存在该终端设备还未下载的更新的应用程序。
4.根据权利要求1-3中的任何一个所述的方法,其特征在于,在终端设备的显示屏幕上提供用户交互界面,在该用户交互界面上,提供供用户选择是否在终端设备上下载安装更新的应用程序的选项或按钮。
5.根据权利要求1-3中的任何一个所述的方法,其特征在于,在终端设备和业务处理平台之间保持一个通知通道,每当业务处理平台更新应用程序并将更新的应用程序存放到应用下载服务器中时,业务处理平台通过所述通知通道通知终端设备,
如果此时终端设备处于开机状态,则根据终端调用接入算法计算的接入时间向业务处理平台发起应用程序更新请求并执行权利要求1-3中的任何一个所述的方法;
如果此时终端设备没有开机,则在终端设备下次开机后首先通过所述通知通道到业务处理平台检查在从上次关机到当前开机时间期间业务处理平台是否更新应用程序,如果在从上次关机到当前开机时间期间业务处理平台更新了应用程序,则执行权利要求1-3中的任何一个所述的方法。
6.一种按需定制应用程序的系统,包括终端设备和业务处理平台,其特征在于,该系统还包括用于存放业务处理平台的所有业务的应用程序的应用下载服务器,并且,预先在终端设备与业务处理平台之间的协议中增加遵循该协议的用于存放更新的应用程序的基本信息的消息字段;
业务处理平台的接入平台从终端设备接收到签到请求之后,判断是否存在该终端设备还未下载的更新的应用程序,如果存在该终端设备还未下载的更新的应用程序,则利用终端设备与业务处理平台之间的协议中设置的用于存放更新的应用程序的基本信息的消息字段,将终端设备还未下载的更新的应用程序的基本信息填入到反馈数据包中,并将该反馈数据包发送给终端设备;所述基本信息包括该终端设备还未下载的更新的应用程序的名称和在应用下载服务器中的存放位置;
终端设备接收到反馈数据包之后,解析反馈数据包,并判断反馈数据包中是否存在所述消息字段,如果判断反馈数据包中存在所述消息字段,则对该消息字段进行解析,并根据解析该消息字段得到的存放位置到应用下载服务器下载安装该终端设备还未下载的更新的应用程序;
其中,当基本信息包括终端设备还未下载的更新的应用程序的名称和在应用下载服务器中的存放位置时,业务处理平台的接入平台整理应用程序列表并记录终端设备的应用程序下载状态和下载时间,在所述应用程序列表中包括业务处理平台所提供的所有应用程序的编号、名称、版本、在应用下载服务器中的存放位置和最后更新时间;
业务处理平台的接入平台从终端设备接收到所述签到请求之后,根据整理的应用程序列表和记录的终端设备下载状态和下载时间来判断在从该终端设备最后更新应用程序的时间到当前时间期间业务处理平台更新的应用程序中是否存在该终端设备还未下载的更新的应用程序;
或者,
业务处理平台的接入平台从终端设备接收到签到请求之后,利用所述消息字段将在从该终端设备最后更新应用程序的时间到当前时间期间业务处理平台更新的所有应用程序的基本信息填入反馈数据包中,并将该反馈数据包发送给终端设备;所述基本信息包括该终端设备还未下载的更新的所有应用程序的程序名称、版本和其软件包在应用下载服务器中的存放位置;
终端设备接收到反馈数据包之后,解析反馈数据包,并判断反馈数据包中是否存在所述消息字段,如果判断反馈数据包中存在所述消息字段,则对该消息字段进行解析,并根据解析该消息字段得到的更新的应用程序的基本信息来判断是否存在该终端设备还未下载的更新的应用程序,如果存在该终端设备还未下载的更新的应用程序,则根据解析该消息字段得到的存放位置到应用下载服务器下载安装该终端设备还未下载的更新的应用程序;
其中,所述消息字段用于存放应用程序列表,在所述应用程序列表中包括业务处理平台所提供的所有应用程序的编号、名称、版本、在应用下载服务器中的存放位置和最后更新时间;
业务处理平台的接入平台利用所述消息字段将所述应用程序列表填入反馈数据包中;终端设备在判断反馈数据包中存在所述消息字段并且对该消息字段进行解析之后,通过将解析该消息字段得到的应用程序列表中的应用程序的名称和版本与本地存储的应用程序列表中的应用程序名称和版本进行对比来判断是否存在该终端设备还未下载的更新的应用程序;
其中,所述应用下载服务器用于存放所有应用程序。
7.根据权利要求6所述的系统,其特征在于,在终端设备和业务处理平台之间保持一个通知通道,每当业务处理平台更新应用程序并将更新的应用程序存放到应用下载服务器中时,业务处理平台通过所述通知通道通知终端设备,
如果此时终端设备处于开机状态,则根据终端调用接入算法计算的接入时间向业务处理平台发起应用程序更新请求并执行权利要求1-3中的任何一个所述的方法;
如果此时终端设备没有开机,则在终端设备下次开机后首先通过所述通知通道到业务处理平台检查在从上次关机到当前开机时间期间业务处理平台是否更新应用程序,如果在从上次关机到当前开机时间期间业务处理平台更新了应用程序,则执行权利要求1-3中的任何一个所述的方法。
8.根据权利要求6所述的系统,其特征在于,所述终端设备本地存储有自己的应用程序列表,每次到应用下载服务器下载安装更新的应用程序之后将下载安装的更新的应用程序的名称和版本存储到本地的应用程序列表中。
9.根据权利要求8所述的系统,其特征在于,终端设备在判断反馈数据包中存在所述消息字段并且对该消息字段进行解析之后,通过将解析该消息字段得到的应用程序的名称和版本与终端设备本地存储的应用程序名称和版本进行对比来判断是否存在该终端设备还未下载的更新的应用程序。
10.根据权利要求8所述的系统,其特征在于,在终端设备的显示屏幕上提供用户交互界面,在该用户交互界面上,提供供用户选择是否在终端设备上下载安装更新的应用程序的选项或按钮。
CN201010502070.9A 2010-09-30 2010-09-30 可按需定制应用程序的方法和系统 Expired - Fee Related CN102446105B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010502070.9A CN102446105B (zh) 2010-09-30 2010-09-30 可按需定制应用程序的方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010502070.9A CN102446105B (zh) 2010-09-30 2010-09-30 可按需定制应用程序的方法和系统

Publications (2)

Publication Number Publication Date
CN102446105A CN102446105A (zh) 2012-05-09
CN102446105B true CN102446105B (zh) 2015-07-29

Family

ID=46008621

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010502070.9A Expired - Fee Related CN102446105B (zh) 2010-09-30 2010-09-30 可按需定制应用程序的方法和系统

Country Status (1)

Country Link
CN (1) CN102446105B (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102800153B (zh) * 2012-07-17 2015-09-23 武汉天喻信息产业股份有限公司 刷卡终端的业务下载方法及系统
CN102867377B (zh) * 2012-09-20 2015-01-28 中国农业银行股份有限公司 在pos端机上实现业务的方法、系统与pos端机
CN102999355B (zh) * 2012-11-16 2016-04-20 福建联迪商用设备有限公司 一种由终端管理系统管理的客户端应用软件系统
CN104052769B (zh) * 2013-03-13 2018-05-18 金蝶软件(中国)有限公司 一种对移动终端应用包含的资源更新的方法、装置和系统
CN103426258B (zh) * 2013-08-29 2015-10-28 深圳市新国都技术股份有限公司 一种基于pos终端的信息推送方法
CN105094881A (zh) * 2014-05-23 2015-11-25 中兴通讯股份有限公司 一种终端以及管理终端应用的方法
CN104092603B (zh) * 2014-07-21 2017-06-13 新华三技术有限公司 一种网关设备及其控制方法
CN105335192B (zh) * 2015-10-19 2019-01-15 联想(北京)有限公司 一种信息处理方法及电子设备
CN105260213B (zh) * 2015-10-30 2019-04-30 中国民生银行股份有限公司 智能pos机初始化方法及装置
CN106371866A (zh) * 2016-08-29 2017-02-01 福建联迪商用设备有限公司 Pos终端应用包的下载方法、装置及通讯方法
CN106506558A (zh) * 2016-12-29 2017-03-15 东软集团股份有限公司 消息交互的方法、装置及系统
CN108241499A (zh) * 2018-01-05 2018-07-03 金行家(深圳)文化传播有限公司 字段值注释的更新方法、装置及计算机可读存储介质
CN109388417B (zh) * 2018-09-30 2022-03-18 深圳市酷达通讯有限公司 一种通信协议的更新方法、系统及终端设备
CN109285298A (zh) * 2018-09-30 2019-01-29 苏州浪潮智能软件有限公司 一种应用于银行自助系统的远程更新方法
CN111047338A (zh) * 2018-10-12 2020-04-21 北大方正集团有限公司 用户活跃度预测方法、预测系统及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101026850A (zh) * 2007-03-09 2007-08-29 华为技术有限公司 移动终端软件自动升级的方法及系统、移动终端和软件管理服务器
CN101753547A (zh) * 2008-12-19 2010-06-23 北京银迅捷电子技术有限公司 多型号pos终端设备的应用程序及参数更新的方法和系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2568362C (en) * 2004-05-25 2014-10-14 Alexandre Soares Pi Farias System for accessing a pos terminal, method for downloading and updating applications and method for performing electronic operation using such a system
JP5293595B2 (ja) * 2007-03-20 2013-09-18 富士通株式会社 コンピュータプログラム、更新システム、及びプログラム実行装置
CN101179791A (zh) * 2007-12-03 2008-05-14 中兴通讯股份有限公司 一种移动终端软件版本升级的方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101026850A (zh) * 2007-03-09 2007-08-29 华为技术有限公司 移动终端软件自动升级的方法及系统、移动终端和软件管理服务器
CN101753547A (zh) * 2008-12-19 2010-06-23 北京银迅捷电子技术有限公司 多型号pos终端设备的应用程序及参数更新的方法和系统

Also Published As

Publication number Publication date
CN102446105A (zh) 2012-05-09

Similar Documents

Publication Publication Date Title
CN102446105B (zh) 可按需定制应用程序的方法和系统
US10599414B2 (en) Adaptive deployment of applications for mobile devices
US9231763B2 (en) System and method for providing a multi-credential authentication protocol
US20170238170A1 (en) Terminal, device and methods for a communication network
CN108376079B (zh) 自动应用更新
KR101605967B1 (ko) 어플리케이션 특성을 반영하여 트랜잭션을 관리하는 서비스 방법 및 시스템
CN108335237B (zh) 立案方法、终端和计算机可读存储介质
CN102088691B (zh) 手机移动互联网应用用户认证识别系统和方法
US20130275560A1 (en) Configuration of third party applications in a sandboxed environment
US20050227669A1 (en) Security key management system and method in a mobile communication network
CN102984225A (zh) 移动装置的空中预订
CN1973255A (zh) 管理和传递软件更新的系统和方法
CN102325184A (zh) 用于在数据网络中预订多媒体传送服务的方法和装置
CN1868153B (zh) 用于确定设备完整性的方法和装置
CN112818270B (zh) 数据跨域传递方法、装置及计算机设备
CN101986740A (zh) 一种java卡
CN101990169A (zh) 一种智能卡主动推送系统和智能卡移动终端
CN110493644B (zh) 电视应用升级方法、电视终端及服务器
US6862614B2 (en) Adaptation of service applications to heterogeneous execution context by means of smart cards
CN107679871B (zh) 名单管理方法、装置、系统以及计算机可读存储介质
CN101534317B (zh) 一种服务器、手机终端及获取手机电话号码的方法和系统
CN101969449A (zh) 一种用于移动通讯设备终端浏览器的自动填表系统及其应用方法
JP2003308397A (ja) コンテンツの取得状況通知方法、管理装置、プログラムおよび記録媒体
CN103999070A (zh) 用于设置的管理和分布的系统和方法
CN113434848B (zh) 数据采集方法、装置、存储介质及电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150729

Termination date: 20190930

CF01 Termination of patent right due to non-payment of annual fee