CN110531961B - 智能服务破壳***及其方法 - Google Patents

智能服务破壳***及其方法 Download PDF

Info

Publication number
CN110531961B
CN110531961B CN201910675891.3A CN201910675891A CN110531961B CN 110531961 B CN110531961 B CN 110531961B CN 201910675891 A CN201910675891 A CN 201910675891A CN 110531961 B CN110531961 B CN 110531961B
Authority
CN
China
Prior art keywords
service
data
sub
layer
application data
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.)
Active
Application number
CN201910675891.3A
Other languages
English (en)
Other versions
CN110531961A (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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201910675891.3A priority Critical patent/CN110531961B/zh
Publication of CN110531961A publication Critical patent/CN110531961A/zh
Application granted granted Critical
Publication of CN110531961B publication Critical patent/CN110531961B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/24Object-oriented
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)
  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供智能服务破壳***及其方法,属于应用程序开发技术领域。该***包括:孵化器和服务层;所述孵化器用于获取第一对象交互命令;所述孵化器用于根据所述第一对象交互命令选择地通过所述服务层获取第一服务的第一应用数据;所述孵化器用于根据第二服务的第二应用数据选定加工方式和封装类型;所述孵化器用于按所述加工方式和所述封装类型将所述第一应用数据进行加工和封装且还生成用于在所述第二服务内形成与所述第一应用数据对应的子服务的部署件。本发明具有低设备耦合性、低服务依赖性、多***形态兼容性、多交互形式支持性、高扩展性和高灵活性等特点。

Description

智能服务破壳***及其方法
技术领域
本发明涉及应用程序开发技术领域,具体地涉及一种构建智能服务破壳架构的方法、一种用于智能服务破壳的方法、一种用于智能服务破壳的***、一种用于智能服务破壳的设备和一种计算机可读存储介质。
背景技术
随着智能终端设备的快速普及、移动网络速度的快速提升和内容资源的不断丰富,各行各业的内容服务覆盖着生活的越来越多的方面;不同形态的内容服务(例如语音类和视频类等)都会依赖各自的开发架构进行上线实验和交付使用,但往往内容服务和该开发架构具有高度的耦合性,无法有效进行动态应用场景扩展,会限制新功能实现和运营合作;缺少预置的、按需求部署的机器程序;不能通过对象交互命令实现某个功能服务;不同形态的内容服务若需要在各种终端完成交付推出,因存在兼容性问题会需要做大量架构适配和调试工作,进而增加了不同终端的内容服务研发、测试、运维和推广等阶段的成本;若有新的内容服务需要在应用服务内进行融合时,应用服务的框架会存在扩展性和灵活性问题。
发明内容
本发明的目的是提供智能服务破壳***及其方法,现有技术存在耦合性过高、每类终端上各种成本较高、兼容性差和扩展性不足等技术问题。
为了实现上述目的,本发明实施例提供一种构建智能服务破壳架构的方法,该方法包括:
S1)形成服务层,其中,所述服务层被配置为具有获取第一服务的第一应用数据的功能;
S2)确定第二服务并根据所述第二服务的第二应用数据形成孵化器,其中,所述孵化器包括数据处理程序且所述孵化器被配置为具有获取由所述服务层对应所述第一应用数据输出的产出数据的功能和具有利用与所述第一应用数据对应的产出数据形成所述第二服务的子服务的功能,其中,
孵化器可以包括用于实现请求、响应、调度、编解码计算、交互处理、逻辑判断、加工、编译、集成和/或封装等数据操作的数据处理程序,具体的,该数据处理程序包括多个子模块,多个子模块包括请求模块、响应模块、调度模块、编解码计算模块、交互处理模块、逻辑判断模块、加工模块、编译模块、集成模块和/或封装模块等,该数据处理程序可以将多个子模块相对被处理的数据按照预设处理优先级进行划分,划分得到不同的数据处理层;
破壳,是指孵化器通过由服务层发送的源服务(此时是第一服务)产出数据进行数据处理在目标服务(此时是第二服务)内形成子服务的过程;
S3)将所述服务层和所述孵化器集成为智能服务破壳架构。
具体的,步骤S1)中,所述服务层被配置为具有根据第一对象交互命令获取第一服务的第一应用数据的功能。
具体的,步骤S1)包括:
S101)形成开发套件和形成机器程序套件,其中,所述开发套件包括用户界面库、开发者平台模块、插件库和组件库,所述用户界面库至少具有Slice框架的用户界面模板,所述机器程序套件至少具有智能语音交互Bot库和小程序库;
S102)形成服务层,其中,所述服务层被配置为具有通过所述开发套件获取第一服务的第一应用数据的功能,所述服务层被配置为具有通过所述机器程序套件获取机器程序的应用数据的功能,其中,所述机器程序的应用数据用于形成与所述机器程序对应的子服务。
具体的,步骤S102)中所述服务层被配置为具有通过所述开发套件获取N个服务的应用数据的功能,N为正整数。
具体的,步骤S2)中根据所述第二服务的第二应用数据形成孵化器,包括:
S201)根据所述第二服务的第二应用数据的数据特征,形成具有与所述第二应用数据的数据特征对应的模块插件集成功能和依赖组件获取功能的管理层,其中,所述管理层被配置为具有用于数据传递的通信调度功能,所述通信调度功能被配置为用于获取由所述服务层对应所述第一应用数据输出的产出数据,所述管理层还被配置为用于通过所述模块插件集成功能和所述依赖组件获取功能执行与所述第一应用数据对应的产出数据的加工和用于在加工完成后获得加工数据;
S202)根据所述第二服务的生产环境特征、功能特征和运行特征,形成具有获取由所述管理层对应所述第一应用数据输出的加工数据的功能和具有将所述加工数据封装形成用于在所述第二服务内形成子服务的部署件的功能的功能层;
S203)形成具有传递所述部署件于所述第二服务内进行部署的功能的接口层;
S204)将所述管理层、所述功能层和所述接口层集成为孵化器。
具体的,步骤S2)中,所述孵化器被配置为具有通过所述接口层获取第二对象交互命令的功能和对应所述第二对象交互命令生成用于形成新子服务的部署请求数据的功能,其中,所述新子服务是相对所述第二服务内的、已部署的子服务为新子服务。
具体的,步骤S2)中,所述接口层被配置为具有获取第二对象交互命令的功能;
所述功能层被配置为具有获取由所述接口层传递的关于所述第二对象交互命令的交互数据的功能;
所述管理层被配置为具有获取由所述功能层分发的所述交互数据的功能和具有根据所述第二服务内的子服务选择地根据所述交互数据生成部署请求数据或子服务执行数据。
具体的,步骤S2)中,所述功能层被配置为具有通过所述子服务执行数据形成当前部署件的功能,其中,所述当前部署件用于在所述第二服务内部署后执行关于与所述子服务执行数据对应的子服务的操作;
所述服务层被配置为具有根据所述部署请求数据获取第三服务的第三应用数据的功能,其中,所述第三服务的第三应用数据用于形成新子服务。
具体的,步骤S2)中,所述孵化器具有利用与所述第一应用数据对应的产出数据结合用户界面模板形成所述第二服务的子服务的功能。
本发明实施例提供一种用于智能服务破壳的方法,该方法包括:
S1)获取第一对象交互命令并根据所述第一对象交互命令选择地获取第一服务的第一应用数据;
S2)根据第二服务的第二应用数据选定加工方式和封装类型,按所述加工方式和所述封装类型将所述第一应用数据进行加工和封装,在封装完成后生成用于在所述第二服务内形成与所述第一应用数据对应的子服务的部署件。
具体的,步骤S1)中根据所述第一对象交互命令选择地获取第一服务的第一应用数据,包括:
识别所述第一对象交互命令所对应的第一子服务元数据,再根据所述第一子服务元数据选择地获取第一服务的第一应用数据。
具体的,该方法还包括:
S3)获取第二对象交互命令并识别所述第二对象交互命令所对应的第二子服务元数据,根据所述第二子服务元数据确定所述第二服务的当前子服务,再结合所述当前子服务的加工方式和封装类型,生成用于在所述第二服务内对所述当前子服务执行删除的卸载件或生成用于在所述第二服务内对所述当前子服务执行更改的更新件。
本发明实施例提供一种用于智能服务破壳的***,该***包括:
孵化器和服务层;
所述孵化器用于获取第一对象交互命令;
所述孵化器用于根据所述第一对象交互命令选择地通过所述服务层获取第一服务的第一应用数据;
所述孵化器用于根据第二服务的第二应用数据选定加工方式和封装类型;
所述孵化器用于按所述加工方式和所述封装类型将所述第一应用数据进行加工和封装且还生成用于在所述第二服务内形成与所述第一应用数据对应的子服务的部署件。
可选的,所述孵化器,包括:接口层、功能层和管理层;
所述管理层用于加工所述第一应用数据和在加工完成后获得加工数据;
所述功能层用于封装所述加工数据且在封装完成后生成用于在所述第二服务内形成与所述第一应用数据对应的子服务的部署件;
所述接口层用于获取所述第一对象交互命令和用于输出所述部署件至所述第二服务。
可选的,所述管理层中用于支持加工的模块包括:插件下载模块、组件管理模块、通信调度模块和语音交互模块,其中,所述插件下载模块具有与所述第二应用数据的数据特征对应的模块插件集成功能,所述组件管理模块具有与所述第二应用数据的数据特征对应的依赖组件获取功能,所述通信调度模块用于传递数据至所述服务层和/或所述功能层,以及所述语音交互模块用于识别所述第一对象交互命令。
可选的,所述功能层中用于支持封装的模块包括:插件模块、附加组件模块和用户界面模版配置模块,其中,所述插件模块用于配置所述部署件的进程,所述附加组件模块用于增加所述部署件的功能,用户界面模版配置模块用于预配置与所述部署件对应的子服务的用户界面或功能策略处理逻辑。
可选的,所述接口层包括输入模块和输出模块,其中,所述输入模块用于获取所述第一对象交互命令,所述输出模块用于发送所述部署件至所述第二服务和/或用于形成所述部署件的形态封装且所述形态封装被配置为用于将所述部署件呈现于所述第二服务。
可选的,所述服务层包括开发套件和/或机器程序套件,其中,所述开发套件包括用户界面模版库、插件库和组件库,所述机器程序套件具有不同类的机器程序;
所述机器程序套件包括智能语音交互Bot库和小程序库;
用户界面模版库包括具有Slice框架的用户界面模板,其中,每个用户界面模板有多个Slice单元;
所述开发套件用于获取并通过所述第一服务的数据结合所述用户界面模版库、所述插件库和所述组件库集成为所述第一应用数据,或者所述机器程序套件用于获取并通过所述第一服务的数据结合所述机器程序集成为所述第一应用数据。
可选的,所述孵化器还用于获取第二对象交互命令并识别所述第二对象交互命令所对应的子服务元数据,根据所述子服务元数据确定所述第二服务的当前子服务,再结合所述当前子服务的加工方式和封装类型,生成用于在所述第二服务内对所述当前子服务执行删除的卸载件或生成用于在所述第二服务内对所述当前子服务执行更改的更新件,其中,所述更新件可以用于插件(例如具有问题的故障插件)的升级、强制升级、禁用和修复,所述卸载件可以用于插件的卸载和强制卸载等,所述更新件和所述卸载件提供了安全和保障功能。
再一方面,本发明实施例提供一种用于智能服务破壳的设备,包括:
至少一个处理器;
存储器,与所述至少一个处理器连接;
其中,所述存储器存储有能被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令,所述至少一个处理器通过执行所述存储器存储的指令实现前述的方法。
又一方面,本发明实施例提供一种计算机可读存储介质,存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行前述的方法。
对应上述内容,服务层可以实现获取来自不同内容服务厂商、机器程序(Bot)服务(例如Bot智能语音服务)和开发者平台模块的数据,并通过孵化器实现第二服务(例如终端的已部署服务)内的子服务,同时所实现的子服务可以按需要获取来自不同内容服务厂商的数据、提供Bot服务预定义源域服务(预定义源域服务是源服务的一种实例,第一服务也是源服务的一种实例,第二服务是目标服务的一种实例)的数据或开发者平台模块中预定义源域服务的数据;目标服务内形成子服务不再依赖服务层进行各类加工和封包等操作,孵化器能自动完成目标服务形成子服务所需的破壳处理操作,孵化器和服务层具有解耦特性;
根据对象交互命令,孵化器转发或处理对象交互命令后将驱动服务层开始获取第一应用数据;
开发套件的插件库和组件库支持实现第一服务所需要的数据交互基础架构,根据具体实例还优选了具备支持实现多类型服务数据交互能力的开发套件,并且可以对一些常用的内容服务进行预置,优选的,例如形成机器程序套件,能够节省子服务形成所需的时间和减少不必要的数据流量;
孵化器的构建考虑了第二服务中应用数据的特点,加工和封装具有兼容服务层产出数据和形成适合第二服务的子服务;
部署件在用户端的实现仅需要用户通过对象交互表达内容服务需求,服务层和孵化器即可对应需求实现具备该内容服务功能、提供该内容服务数据的和用于形成(执行实体)子服务的部署件,部署件若为安装包,在第二服务所在生产环境能快速完成安装并实现在第二服务内执行内容服务的数据交互,这一方面简化了用户通过终端获取某内容服务的过程,另一方面因用户不再需要安装某内容服务的专属应用程序而节省了用户终端的设备存储空间;
管理层和功能层具有丰富的各类插件和各类组件,实现将第一服务的数据通过子服务方式融合至第二服务中且同时相对第二服务具有本地化特征;
接口层能用于支持统一的输入输出层,并且具备实现对应用户界面模版库的形态封装的能力,实现了子服务的动态化灵活扩展;
本发明具有低设备耦合性、低服务依赖性、多***形态兼容性、多交互形式支持性、高扩展性和高灵活性等特点。
本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施例,但并不构成对本发明实施例的限制。在附图中:
图1为本发明实施例的***的主要架构示意图;
图2为本发明实施例的生成多态输出的流程示意图;
图3为本发明实施例的结合显示区域形成语音备忘录子服务的流程示意图。
具体实施方式
以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。
实施例1
本实施例提供构建智能服务破壳架构的方法,该方法包括:
S1)形成服务层,其中,所述服务层被配置为具有获取第一服务的第一应用数据的功能;
S2)确定第二服务并根据所述第二服务的第二应用数据形成孵化器,其中,所述孵化器包括数据处理程序且所述孵化器被配置为具有获取由所述服务层对应所述第一应用数据输出的产出数据的功能和具有利用与所述第一应用数据对应的产出数据形成所述第二服务的子服务的功能,所述子服务被配置为具有与所述第一服务进行数据交互的功能;
S3)将所述服务层和所述孵化器集成为智能服务破壳架构;
第一服务是具有需求数据的服务且属于未部署在用户终端的应用程序服务,例如新闻内容服务;第一应用数据可以是代码数据、交互数据、配置数据、内容数据或应用程序数据等;第二服务是已部署的服务,例如运行于用户终端的应用程序服务,第二应用数据可以是符合第二服务运行要求的代码数据、交互数据、配置数据、内容数据或应用程序数据等。
具体的,步骤S1)中,所述服务层被配置为具有根据第一对象交互命令获取第一服务的第一应用数据的功能;
对象交互命令可以是通过用户终端采集用户的语音、点触行为、用户图像和视频等方式获取。
具体的,步骤S1)包括:
S101)形成开发套件和形成机器程序套件,其中,所述开发套件包括用户界面库、开发者平台模块、插件库和组件库,所述用户界面库至少具有Slice框架的用户界面模板,所述机器程序套件至少具有智能语音交互Bot库和小程序库;
S102)形成服务层,其中,所述服务层被配置为具有通过所述开发套件获取第一服务的第一应用数据的功能,所述服务层被配置为具有通过所述机器程序套件获取机器程序的应用数据的功能;
开发套件还包括开发者平台模块,开发者平台模块可以用以各类内容提供者接入(接入过程可以设置授权条件和判断策略)、通过第一服务源域所提供的应用程序接口请求与接收数据(数据交互过程中可以处于加密环境,例如将使用加密证书的通信隧道作为加密环境),从而获取第一服务的第一应用数据,开发者平台模块可以是集成的软件开发工具包;用户界面库,在安卓终端的生产环境中,可以选用具有Slice框架的用户界面UI(UserInterface)库,Slice框架是具有丰富元素和动态化交互内容的用户界面模版框架,该UI库能够提供基于超文本标记语言(具体的,HTML5)的用户界面模版,提升了跨终端的兼容性能;插件库,可以形成用以处理第一应用数据的多个功能,例如第一应用数据是天气数据,则可以从插件库中选择具有不同天气动画的特效插件,又例如第一应用数据是应用程序数据,则可以从插件库中选择具有当前时间获取功能的时间插件,提升了灵活性和扩展性;组件库,每个组件可以是依赖模块,用以支持插件功能、第一应用数据获取和产出数据生成等,提升了兼容性、灵活性和扩展性;
例如,机器程序的应用数据为音乐Bot服务数据,服务层提供音乐Bot服务数据,通过孵化器在第二服务内形成子服务,子服务即音乐Bot服务。
具体的,步骤S102)中所述服务层被配置为具有通过所述开发套件获取N个服务的应用数据的功能,N为正整数;
例如,在用户终端设备的第二服务内部署有M个子服务,N个服务中与M个子服务对应的服务的应用数据将用于更新对应子服务的当前数据;N个服务中无对应子服务的服务将用于形成新的子服务和在该新的子服务内呈现初始数据,M为正整数且M小于等于N。
具体的,步骤S2)中根据所述第二服务的第二应用数据形成孵化器,包括:
S201)根据所述第二服务的第二应用数据的数据特征(例如,第二应用数据需要特定类型的共享对象文件支持等),形成具有与所述第二应用数据的数据特征对应的模块插件集成功能和依赖组件获取功能的管理层,其中,所述管理层被配置为具有用于数据传递的通信调度功能,所述通信调度功能被配置为用于获取由所述服务层对应所述第一应用数据输出的产出数据,所述管理层还被配置为用于通过所述模块插件集成功能和所述依赖组件获取功能执行与所述第一应用数据对应的产出数据的加工和用于在加工完成后获得加工数据;
S202)根据所述第二服务的生产环境特征、功能特征和运行特征,形成具有获取由所述管理层对应所述第一应用数据输出的加工数据的功能和具有将所述加工数据封装形成用于在所述第二服务内形成子服务的部署件的功能的功能层;
S203)形成具有传递所述部署件于所述第二服务内进行部署的功能的接口层;
S204)将所述管理层、所述功能层和所述接口层集成为孵化器;
管理层内可以设置调度管理模块,调度管理模块可以具有计算、判断、调度和加工(例如组装、集成和编译)等功能;第二应用数据的数据特征可以是数据存储类型和数据处理规则等,例如数据存储类型是Json数据格式存储类型,数据处理规则可以是部署规则、更新规则和权限规则等;第二服务的生产环境特征可以是安卓***环境,功能特征可以是第二服务的应用程序功能,功能特征用以调度管理模块判断是否已存在所需求功能的子服务,运行特征可以是第二服务对***进程的要求;接口层可以再设置具有形态封装功能的输出模块(图2中输出模块具有丰富输出能力,称为多态Skill;多态是多个形态,每个形态是运维数据形态或内容数据形态,运维数据形态可以为部署件、更新件或删除件等,内容数据形态为文本、语音、图像或视频等,输入的对象交互命令可以是多态的,输出也可以是多态的,通过服务层的代码封装和接口层的形态封装实现多态),输出模块用以对UI库所预提供的元素或预封装进行与当前生产环境适配的或进行与需求的呈现方式适配的形态封装,例如在安卓用户终端设备中提供具有语音播报功能的天气预报子服务,形态封装可以是集成语音播报插件;部署件可以安装包(或执行代码)或更新修复包(或执行代码),也可以仅仅是用于在子服务中进行呈现的、具有存储格式的数据文件,还可以是用于修改子服务的配置文件,例如部署件是更新修复执行代码(例如图2中View服务命令),该部署件包括执行命令行和配置文件,执行命令行可以是adb安装命令,配置文件可以是Json格式的文件且包括部署件中修复包名称、类型、签名和下载地址等信息。
具体的,步骤S2)中,
所述孵化器被配置为具有通过所述接口层获取第二对象交互命令的功能和对应所述第二对象交互命令生成用于形成新子服务的部署请求数据的功能;
所述接口层被配置为具有获取第二对象交互命令的功能;
所述功能层被配置为具有获取由所述接口层传递的关于所述第二对象交互命令的交互数据的功能;
所述管理层被配置为具有获取由所述功能层分发的所述交互数据的功能和具有根据所述第二服务内的子服务选择地根据所述交互数据生成部署请求数据或子服务执行数据;
所述功能层被配置为具有通过所述子服务执行数据形成当前部署件的功能,其中,所述当前部署件用于在所述第二服务内部署后执行关于与所述子服务执行数据对应的子服务的操作;
所述服务层被配置为具有根据所述部署请求数据获取第三服务的第三应用数据的功能,其中,所述第三服务的第三应用数据用于形成新子服务;
具体的,步骤S2)中,所述孵化器具有利用与所述第一应用数据对应的产出数据结合用户界面模板形成所述第二服务的子服务的功能;
根据第二对象交互命令实现了与第三服务对应的子服务部署,以及若在第二服务内已存在与第三服务对应的子服务时还可以执行子服务的操作;接口层获取第二对象交互命令,调度管理模块可以识别第二对象交互命令,并将识别结果与预设的子服务元数据进行匹配,再将匹配结果用于确定第二服务内是否具有该子服务,若没有,则会生成部署请求数据,部署请求数据用以通过服务层和孵化器交付子服务至第二服务内,若存在,则会生成子服务执行数据,子服务执行数据可以是用于执行子服务更新数据、子服务增删等操作。
实施例2
实施例1中构建的智能服务破壳架构,可以按本实施例进行使用,本实施例提供用于智能服务破壳的方法,该方法包括:
S1)获取第一对象交互命令并根据所述第一对象交互命令选择地获取第一服务的第一应用数据;
S2)根据第二服务的第二应用数据选定加工方式和封装类型,按所述加工方式和所述封装类型将所述第一应用数据进行加工和封装,在封装完成后生成用于在所述第二服务内形成与所述第一应用数据对应的子服务的部署件;
具体的,步骤S1)中根据所述第一对象交互命令选择地获取第一服务的第一应用数据,包括:
识别所述第一对象交互命令所对应的第一子服务元数据,再根据所述第一子服务元数据选择地获取第一服务的第一应用数据;
具体的,该方法还包括:
S3)获取第二对象交互命令并识别所述第二对象交互命令所对应的第二子服务元数据,根据所述第二子服务元数据确定所述第二服务的当前子服务,再结合所述当前子服务的加工方式和封装类型,生成用于在所述第二服务内对所述当前子服务执行删除的卸载件或生成用于在所述第二服务内对所述当前子服务执行更改的更新件;
如图3,第一对象交互命令的形式可以有多种,例如语音、增强现实画面或虚拟现实画面等;选择地进行获取第一应用数据的原因是,可能第二服务内已存在与第一对象交互命令中所需求的功能对应的子服务,则此时可以利用调度管理模块通过接口层在用户终端上第二服务内呈现预设响应,例如第一对象交互命令是语音“我需要语音备忘录”,语音备忘录子服务已经存在,预设响应可以是将语音备忘录子服务在第二服务内的显示优先级调整为高于其余子服务的显示优先级,以让用户终端上第二服务的子服务显示区内呈现语音备忘录子服务;但即使已经存在该对应的子服务,也可以进行步骤S2),例如根据第二对象交互命令,获取部署件,该部署件为具有更新或修复功能的部署件;若不存在该对应的子服务,可以获得用于安装子服务的部署件,在第二服务内按优先级顺序生成并排列子服务,在用户终端设备上更新第二服务显示区域,显示语音备忘录子服务。
实施例3
基于实施例1和实施例2,本实施例提供用于智能服务破壳的***,该***包括:
孵化器和服务层;
所述孵化器用于获取第一对象交互命令;
所述孵化器用于根据所述第一对象交互命令选择地通过所述服务层获取第一服务的第一应用数据;
所述孵化器用于根据第二服务的第二应用数据选定加工方式和封装类型;
所述孵化器用于按所述加工方式和所述封装类型将所述第一应用数据进行加工和封装且还生成用于在所述第二服务内形成与所述第一应用数据对应的子服务的部署件;
例如,第一对象交互命令为“我需要语音备忘录”,在孵化器查询子服务元数据后,不具有该语音备忘录子服务,则在服务层形成语音备忘录需要的组件和执行代码,形成产出数据,产出数据为第一应用数据,孵化器对第一应用数据按第二应用数据的特点进行加工和封装后形成子服务的部署件,该部署件能在运行第二服务的用户终端设备上进行安装,从而在第二服务内部署形成语音备忘录子服务;优选的,语音备忘录子服务与其余子服务分别占用相同的显示区域尺寸和具有相同的显示样式,并且每个子服务具有显示优先级,对于超出显示区域的子服务,可以通过在第二服务内进行搜索或对承载显示区域的硬件设备进行操作(例如操作用户终端的显示屏以滑动显示区域内的滚动条)以发现处于当前显示区域外的子服务。
可选的,所述孵化器,包括:接口层、功能层和管理层;
所述管理层用于加工所述第一应用数据和在加工完成后获得加工数据;
所述功能层用于封装所述加工数据且在封装完成后生成用于在所述第二服务内形成与所述第一应用数据对应的子服务的部署件;
所述接口层用于获取所述第一对象交互命令和用于输出所述部署件至所述第二服务;
可选的,所述管理层中用于支持加工的模块包括:插件下载模块、组件管理模块、通信调度模块和语音交互模块,其中,所述插件下载模块具有与所述第二应用数据的数据特征对应的模块插件集成功能,所述组件管理模块具有与所述第二应用数据的数据特征对应的依赖组件获取功能,所述通信调度模块用于传递数据至所述服务层和/或所述功能层,以及所述语音交互模块用于识别所述第一对象交互命令;
可选的,所述功能层中用于支持封装的模块包括:插件模块、附加组件模块和用户界面模版配置模块,其中,所述插件模块用于配置所述部署件的进程,所述附加组件模块用于增加所述部署件的功能,用户界面模版配置模块用于预配置与所述部署件对应的子服务的用户界面或功能策略处理逻辑;
功能策略处理逻辑例如子服务的内元素的加载逻辑或对应***触发事件的处理逻辑等;
可选的,所述接口层包括输入模块和输出模块,其中,所述输入模块用于获取所述第一对象交互命令,所述输出模块用于发送所述部署件至所述第二服务和/或用于形成所述部署件的形态封装且所述形态封装被配置为用于将所述部署件呈现于所述第二服务;
可选的,所述服务层包括开发套件和/或机器程序套件,其中,所述开发套件包括用户界面模版库、插件库和组件库,所述机器程序套件具有不同类的机器程序;
所述机器程序套件包括智能语音交互Bot库和小程序库;
用户界面模版库包括具有Slice框架的用户界面模板,其中,每个用户界面模板有多个Slice单元;
智能语音交互Bot库内每个智能语音交互Bot可以根据Bot智能语音服务(提供内容的服务器端)进行预置于服务层,以方便根据对象交互命令即时快速形成子服务;
小程序库内每个小程序也可以根据小程序服务进行预置于服务层,以方便根据对象交互命令即时快速形成子服务;
Slice单元可以是滚动条、显示小区块的排版表单、字体和按钮等;
所述开发套件用于获取并通过所述第一服务的数据结合所述用户界面模版库、所述插件库和所述组件库集成为所述第一应用数据,或者所述机器程序套件用于获取并通过所述第一服务的数据结合所述机器程序集成为所述第一应用数据;
可选的,所述孵化器还用于获取第二对象交互命令并识别所述第二对象交互命令所对应的子服务元数据,根据所述子服务元数据确定所述第二服务的当前子服务,再结合所述当前子服务的加工方式和封装类型,生成用于在所述第二服务内对所述当前子服务执行删除的卸载件或生成用于在所述第二服务内对所述当前子服务执行更改的更新件;
可选的,所述孵化器和所述服务层均集成于同一软件开发工具包中;
结合图1和图2,例如第一对象交互命令为“我需要既有天气动画又有语音播报的天气预报”,调度管理模块识别该对象交互命令所对应的子服务和所需要的附加功能,在服务层形成天气预报机器程序后,调度管理模块驱动插件下载模块和组件管理模块(若提供网页版的子服务时,第二服务可以是浏览器应用,组件应使用样式表和脚本组件),将具有天气动画的特效插件、语音插件和支持组件集成于天气预报机器程序;插件模块可以是GPT(GreedyPorter)插件模块,可以用于决定子服务的进程,例如同进程或跨进程,附加组件模块用于判断子服务的依赖关系是否已经满足第二服务所在生产环境或提供额外的新功能(例如通过糯米组件实现购物功能),用户界面模版配置模块(Slice Action)可以判断第二服务是否具有该子服务所需要的支持组件和对子服务的数据呈现方式进行设定;机器程序套件包括Bot服务中控,Bot服务中控与调度管理模块进行数据交互;机器程序可以是自定义下载程序、音乐程序和天气预报程序等,可以预置语音交互模块于每个机器程序,以让每个机器程序形成子服务后能直接快速响应对象交互命令;通信调度模块可用于传递各类数据,例如传递更新数据或修复数据;功能层还包括:安全管控模块、指令分发模块和任务调度模块,安全管控模块可以设置子服务鉴权或权限分配等功能,指令分发模块可以设置分发第二服务或第二服务所在的***环境的触发事件至某些子服务,任务调度可以实现功能层当前任务的转移或用于配置子服务的当前执行任务。
本发明构建了具有通用性和扩展性的服务层和接口层,服务层可以有效地通过开发者平台模块获取不同内容服务厂商的服务数据以及通过Bot服务中控获取不同的Bot智能服务的数据;本发明使用了高性能和高通用性的用户界面框架,实现了跨终端能力和降低了成本;本发明通过各类插件、组件、小程序(机器程序Bot)和具有Slice框架的用户界面模版在本地部署的服务内构建子服务,显著降低了应用服务和***设备之间的耦合性和依赖性;本发明具有灵活的和丰富的命令输入和数据呈现方式;本发明所构建的服务层预置了多个机器程序,可以快速响应生成对应的子服务;本发明具有动态场景扩展性,为服务提供商接入提供了便利,可以同时呈现多个子服务,容易通过本发明开发套件实现服务提供商所需要呈现的数据。
以上结合附图详细描述了本发明实施例的可选实施方式,但是,本发明实施例并不限于上述实施方式中的具体细节,在本发明实施例的技术构思范围内,可以对本发明实施例的技术方案进行多种简单变型,这些简单变型均属于本发明实施例的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明实施例对各种可能的组合方式不再另行说明。
本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得单片机、芯片或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
此外,本发明实施例的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明实施例的思想,其同样应当视为本发明实施例所公开的内容。

Claims (16)

1.一种构建智能服务破壳架构的方法,其特征在于,该方法包括:
S1)形成服务层,其中,所述服务层被配置为具有获取第一服务的第一应用数据的功能;
S2)确定第二服务并根据所述第二服务的第二应用数据形成孵化器,其中,所述孵化器包括数据处理程序且所述孵化器被配置为具有获取由所述服务层对应所述第一应用数据输出的产出数据的功能和具有利用与所述第一应用数据对应的产出数据形成所述第二服务的子服务的功能;
S3)将所述服务层和所述孵化器集成为智能服务破壳架构;
其中,步骤S2)中根据所述第二服务的第二应用数据形成孵化器,包括:
S201)根据所述第二服务的第二应用数据的数据特征,形成具有与所述第二应用数据的数据特征对应的模块插件集成功能和依赖组件获取功能的管理层,其中,所述管理层被配置为具有用于数据传递的通信调度功能,所述通信调度功能被配置为用于获取由所述服务层对应所述第一应用数据输出的产出数据,所述管理层还被配置为用于通过所述模块插件集成功能和所述依赖组件获取功能执行与所述第一应用数据对应的产出数据的加工和用于在加工完成后获得加工数据;
S202)根据所述第二服务的生产环境特征、功能特征和运行特征,形成具有获取由所述管理层对应所述第一应用数据输出的加工数据的功能和具有将所述加工数据封装形成用于在所述第二服务内形成子服务的部署件的功能的功能层;
S203)形成具有传递所述部署件于所述第二服务内进行部署的功能的接口层;
S204)将所述管理层、所述功能层和所述接口层集成为孵化器;
步骤S2)中,所述孵化器被配置为具有通过所述接口层获取第二对象交互命令的功能和对应所述第二对象交互命令生成用于形成新子服务的部署请求数据的功能,所述新子服务是相对所述第二服务内的、已部署的子服务为新子服务。
2.根据权利要求1所述的构建智能服务破壳架构的方法,其特征在于,步骤S1)中,所述服务层被配置为具有根据第一对象交互命令获取第一服务的第一应用数据的功能。
3.根据权利要求1所述的构建智能服务破壳架构的方法,其特征在于,步骤S2)中,
所述接口层被配置为具有获取第二对象交互命令的功能;
所述功能层被配置为具有获取由所述接口层传递的关于所述第二对象交互命令的交互数据的功能;
所述管理层被配置为具有获取由所述功能层分发的所述交互数据的功能和具有根据所述第二服务内的子服务选择地根据所述交互数据生成部署请求数据或子服务执行数据。
4.根据权利要求3所述的构建智能服务破壳架构的方法,其特征在于,步骤S2)中,
所述功能层被配置为具有通过所述子服务执行数据形成当前部署件的功能,其中,所述当前部署件用于在所述第二服务内部署后执行关于与所述子服务执行数据对应的子服务的操作;
所述服务层被配置为具有根据所述部署请求数据获取第三服务的第三应用数据的功能。
5.根据权利要求1所述的构建智能服务破壳架构的方法,其特征在于,步骤S1)包括:
S101)形成开发套件和形成机器程序套件,其中,所述开发套件包括用户界面库、开发者平台模块、插件库和组件库,所述用户界面库至少具有Slice框架的用户界面模板,所述机器程序套件至少具有智能语音交互Bot库和小程序库;
S102)形成服务层,其中,所述服务层被配置为具有通过所述开发套件获取第一服务的第一应用数据的功能,所述服务层被配置为具有通过所述机器程序套件获取机器程序的应用数据的功能。
6.根据权利要求1所述的构建智能服务破壳架构的方法,其特征在于,步骤S2)中,所述孵化器具有利用与所述第一应用数据对应的产出数据结合用户界面模板形成所述第二服务的子服务的功能。
7.一种用于智能服务破壳的方法,其特征在于,该方法包括:
S1)获取第一对象交互命令并根据所述第一对象交互命令选择地获取第一服务的第一应用数据;
S2)根据第二服务的第二应用数据选定加工方式和封装类型,按所述加工方式和所述封装类型将所述第一应用数据进行加工和封装,在封装完成后生成用于在所述第二服务内形成与所述第一应用数据对应的子服务的部署件;
该方法还包括:
S3)获取第二对象交互命令并识别所述第二对象交互命令所对应的第二子服务元数据,根据所述第二子服务元数据确定所述第二服务的当前子服务,再结合所述当前子服务的加工方式和封装类型,生成用于在所述第二服务内对所述当前子服务执行删除的卸载件或生成用于在所述第二服务内对所述当前子服务执行更改的更新件。
8.根据权利要求7所述的用于智能服务破壳的方法,其特征在于,步骤S1)中根据所述第一对象交互命令选择地获取第一服务的第一应用数据,包括:
识别所述第一对象交互命令所对应的第一子服务元数据,再根据所述第一子服务元数据选择地获取第一服务的第一应用数据。
9.一种用于智能服务破壳的***,其特征在于,该***包括:
孵化器和服务层;
所述孵化器用于获取第一对象交互命令;
所述孵化器用于根据所述第一对象交互命令选择地通过所述服务层获取第一服务的第一应用数据;
所述孵化器用于根据第二服务的第二应用数据选定加工方式和封装类型;
所述孵化器用于按所述加工方式和所述封装类型将所述第一应用数据进行加工和封装且还生成用于在所述第二服务内形成与所述第一应用数据对应的子服务的部署件;所述孵化器还用于获取第二对象交互命令并识别所述第二对象交互命令,所对应的子服务元数据,根据所述子服务元数据确定所述第二服务的当前子服务,再结合所述当前子服务的加工方式和封装类型,生成用于在所述第二服务内对所述当前子服务执行删除的卸载件或生成用于在所述第二服务内对所述当前子服务执行更改的更新件。
10.根据权利要求9所述的用于智能服务破壳的***,其特征在于,
所述孵化器,包括:接口层、功能层和管理层;
所述管理层用于加工所述第一应用数据和在加工完成后获得加工数据;
所述功能层用于封装所述加工数据且在封装完成后生成用于在所述第二服务内形成与所述第一应用数据对应的子服务的部署件;
所述接口层用于获取所述第一对象交互命令和用于输出所述部署件至所述第二服务。
11.根据权利要求10所述的用于智能服务破壳的***,其特征在于,
所述管理层中用于支持加工的模块包括:插件下载模块、组件管理模块、通信调度模块和语音交互模块,其中,所述插件下载模块具有与所述第二应用数据的数据特征对应的模块插件集成功能,所述组件管理模块具有与所述第二应用数据的数据特征对应的依赖组件获取功能,所述通信调度模块用于传递数据至所述服务层和/或所述功能层,以及所述语音交互模块用于识别所述第一对象交互命令。
12.根据权利要求10所述的用于智能服务破壳的***,其特征在于,
所述功能层中用于支持封装的模块包括:插件模块、附加组件模块和用户界面模版配置模块,其中,所述插件模块用于配置所述部署件的进程,所述附加组件模块用于增加所述部署件的功能,用户界面模版配置模块用于预配置与所述部署件对应的子服务的用户界面或功能策略处理逻辑。
13.根据权利要求10所述的用于智能服务破壳的***,其特征在于,
所述接口层包括输入模块和输出模块,其中,所述输入模块用于获取所述第一对象交互命令,所述输出模块用于发送所述部署件至所述第二服务和/或用于形成所述部署件的形态封装且所述形态封装被配置为用于将所述部署件呈现于所述第二服务。
14.根据权利要求10所述的用于智能服务破壳的***,其特征在于,
所述服务层包括开发套件和/或机器程序套件,其中,所述开发套件包括用户界面模版库、插件库和组件库,所述机器程序套件具有不同类的机器程序;
所述机器程序套件包括智能语音交互Bot库和小程序库;
用户界面模版库包括具有Slice框架的用户界面模板,其中,每个用户界面模板有多个Slice单元;
所述开发套件用于获取并通过所述第一服务的数据结合所述用户界面模版库、所述插件库和所述组件库集成为所述第一应用数据,或者所述机器程序套件用于获取并通过所述第一服务的数据结合所述机器程序集成为所述第一应用数据。
15.一种用于智能服务破壳的设备,其特征在于,包括:
至少一个处理器;
存储器,与所述至少一个处理器连接;
其中,所述存储器存储有能被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现权利要求1至8中任意一项权利要求所述的方法。
16.一种计算机可读存储介质,存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行权利要求1至8中任意一项权利要求所述的方法。
CN201910675891.3A 2019-07-24 2019-07-24 智能服务破壳***及其方法 Active CN110531961B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910675891.3A CN110531961B (zh) 2019-07-24 2019-07-24 智能服务破壳***及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910675891.3A CN110531961B (zh) 2019-07-24 2019-07-24 智能服务破壳***及其方法

Publications (2)

Publication Number Publication Date
CN110531961A CN110531961A (zh) 2019-12-03
CN110531961B true CN110531961B (zh) 2023-05-23

Family

ID=68660970

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910675891.3A Active CN110531961B (zh) 2019-07-24 2019-07-24 智能服务破壳***及其方法

Country Status (1)

Country Link
CN (1) CN110531961B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104714828B (zh) * 2015-03-31 2017-06-09 北京奇虎科技有限公司 应用安装、运行方法及装置
CN107295077A (zh) * 2017-06-16 2017-10-24 深圳易嘉恩科技有限公司 基于微服务架构的分布式云平台***
US10007501B1 (en) * 2017-05-19 2018-06-26 Central South University Method of deploying applications rapidly based on customized android platform

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102170439B (zh) * 2011-04-20 2014-04-02 深圳创维-Rgb电子有限公司 一种应用服务扩展***
CN104376256B (zh) * 2014-12-02 2017-04-05 北京奇虎科技有限公司 应用程序进程孵化控制方法及装置
WO2017004391A1 (en) * 2015-07-02 2017-01-05 Convida Wireless, Llc Content security at service layer
CN105657053A (zh) * 2016-03-04 2016-06-08 浪潮软件集团有限公司 基于soa架构的数据集成交换平台
US10409589B2 (en) * 2016-07-12 2019-09-10 Accenture Global Solutions Limited Application centric continuous integration and delivery with automated service assurance
CN107193546B (zh) * 2017-04-11 2021-05-04 国网天津市电力公司信息通信公司 一种微服务化业务应用***
CN109086409B (zh) * 2018-08-02 2021-10-08 泰康保险集团股份有限公司 微服务数据处理方法、装置、电子设备及计算机可读介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104714828B (zh) * 2015-03-31 2017-06-09 北京奇虎科技有限公司 应用安装、运行方法及装置
US10007501B1 (en) * 2017-05-19 2018-06-26 Central South University Method of deploying applications rapidly based on customized android platform
CN107295077A (zh) * 2017-06-16 2017-10-24 深圳易嘉恩科技有限公司 基于微服务架构的分布式云平台***

Also Published As

Publication number Publication date
CN110531961A (zh) 2019-12-03

Similar Documents

Publication Publication Date Title
US10127057B2 (en) Method and apparatus for dynamically implementing application function
US9178948B2 (en) Methods and apparatus for subscribing to multimedia delivery services in a data network
US8850422B2 (en) Method for managing an application and application platform
US7603109B2 (en) Methods and apparatus for over-the-air subscriptions
CN102622241B (zh) 一种软件升级方法及装置
US20160227276A1 (en) Intelligent television operation system
US20130219307A1 (en) System and method for runtime user interface management
EP2673723A1 (en) Method and system for providing content
CN106686200B (zh) 移动应用程序更新方法、移动终端及更新***
US20150113533A1 (en) Cloud system for managing creation and distribution of templates of virtual machines and method thereof
CN104715309A (zh) 业务控制方法及装置
US9286054B2 (en) Deployment of mobile enterprise application platform
CN111144878B (zh) 指令生成方法与指令生成装置
CN105744341A (zh) 一种离线式信息发布方法和装置
CN110531961B (zh) 智能服务破壳***及其方法
CN110493644B (zh) 电视应用升级方法、电视终端及服务器
CN112882733B (zh) 应用更新方法及装置、电子设备、存储介质
CN106484374B (zh) 一种控制apk上线的方法和中转服务器
CN113268272A (zh) 基于私有云的应用交付方法、装置及***
CN111831566A (zh) 测试方法、装置、电子设备和计算机可读存储介质
CN108134683B (zh) 一种终端及总线架构的实现方法
US10755321B1 (en) Techniques for dynamic utilization of advertising capabilities by applications on user devices
KR20110103888A (ko) 사용자 설정 포맷을 가지는 콘텐츠의 액세스 및 공유 시스템 및 이의 동작 방법
CN114153472A (zh) 裸金属服务器部署方法、装置、电子设备及存储介质
AU2024200289A1 (en) Skin changing method and apparatus for display interface, vehicle and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant