CN106302125A - 一种对请求信息进行响应的方法、装置及系统 - Google Patents

一种对请求信息进行响应的方法、装置及系统 Download PDF

Info

Publication number
CN106302125A
CN106302125A CN201610697767.3A CN201610697767A CN106302125A CN 106302125 A CN106302125 A CN 106302125A CN 201610697767 A CN201610697767 A CN 201610697767A CN 106302125 A CN106302125 A CN 106302125A
Authority
CN
China
Prior art keywords
business
feedback information
information
request message
service
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.)
Granted
Application number
CN201610697767.3A
Other languages
English (en)
Other versions
CN106302125B (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.)
Shanghai Zhizhen Intelligent Network Technology Co Ltd
Original Assignee
Shanghai Zhizhen Intelligent Network 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 Shanghai Zhizhen Intelligent Network Technology Co Ltd filed Critical Shanghai Zhizhen Intelligent Network Technology Co Ltd
Priority to CN201610697767.3A priority Critical patent/CN106302125B/zh
Publication of CN106302125A publication Critical patent/CN106302125A/zh
Application granted granted Critical
Publication of CN106302125B publication Critical patent/CN106302125B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/02User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • H04L51/046Interoperability with other network applications or services

Abstract

本发明的目的是提供一种对请求信息进行响应的方法、装置和系统。该装置包括:服务端接口,用于获取事件请求信息和最终反馈信息;应用端接口,用于获取应用请求信息和所述事件反馈信息;一个或多个业务处理单元;控制单元,用于控制一个或多个业务处理单元,基于各自的业务功能,对所述应用请求信息进行处理,以获得与所述应用请求信息对应的所述应用反馈信息。本发明优点在于:通过将一些需要采用问答机器人的系统平台的业务抽象为框架内的业务处理单元,并通过SPI和API将通信层与应用层进行分离,实现了对于当前主流即时通信和类似API的通信模块的分离,从而提高了平台个性化的问答机器人的开发效率,减少了代码冗余,降低维护难度。

Description

一种对请求信息进行响应的方法、装置及系统
技术领域
本发明涉及计算机技术领域,尤其涉及一种对请求信息进行响应的方法、装置及系统。
背景技术
当前,智能问答机器人已经被广泛地用于各类系统平台中,用于帮助客户解决相应问题,或者陪伴客户,满足客户的聊天需求等。通常,不同平台都需要自行开发自己的问答机器人,以满足平台自身的需求。然而,这种传统的开发方式通常是以项目为中心,在通信和应用层没有严格的区分,容易造成代码的重复。并且,各个平台的差异性,导致不同平台间的业务代码千差万别,不容易进行维护。而同一个平台中的业务跳转也比较困难,无法在复杂语境下实现流畅的人机交互和业务切换。
发明内容
本发明的目的是提供一种基于开发框架对请求信息进行响应的方法、装置及系统。
根据本发明的一个方面,提供一种对请求信息进行响应的装置,包括:
服务端接口,用于获取事件请求信息和最终反馈信息;所述事件请求信息基于服务端接口要求,对来自服务供应端的原始请求信息进行转换得到;所述最终反馈信息基于服务供应端要求,对服务端接口得到的事件反馈信息进行转换得到;
应用端接口,用于获取应用请求信息和所述事件反馈信息;所述应用请求信息基于应用端接口要求,对服务端接口得到的所述事件请求信息进行转换得到;所述事件反馈信息基于服务端接口要求,对应用端接口的所述应用反馈信息转换得到;
一个或多个业务处理单元;
控制单元,用于控制一个或多个业务处理单元,基于各自的业务功能,对所述应用请求信息进行处理,以获得与所述应用请求信息对应的所述应用反馈信息。
根据本发明的一个方面,提供一种对请求信息进行响应的方法,其中,所述方法包括以下步骤:
a获取事件请求信息,其中,所述事件请求信息通过对原始请求信息进行转换得到;
b获取应用请求信息,所述应用请求信息通过对所述事件请求信息进行转换得到;
c基于一个或多个业务功能,对所述应用请求信息进行处理,以获得与所述应用请求信息对应的所述应用反馈信息;
d获取事件反馈信息;其中,所述事件反馈信息通过对所述应用反馈信息转换得到;
e获取最终反馈信息,其中,所述最终反馈信息通过对所述事件反馈信息进行转换得到。
根据本发明的一个方面,提供一种对请求信息进行响应的系统,其中,所述系统包括一个或多个服务供应端,所述的对请求信息进行响应的装置,以及应用供应端。
与现有技术相比,本发明具有以下优点:根据本发明的方案,通过将一些需要采用问答机器人的系统平台的业务抽象为框架内的业务处理单元,并通过SPI和API将通信层与业务层进行分离,实现了对于当前主流即时通信和类似API的通信模块的分离,从而提高了平台个性化的问答机器人的开发效率,减少了代码冗余,降低维护难度。并且,开发人员可以方便地通过对配置文件的修改,实现对开发框架中各个业务处理单元、请求拦截单元以及业务拦截单元的功能的重写以及二次开发,从而方便地实现对于基于该开发框架所开发的应用的功能的更新与修改,实现动态新增功能并实时生效。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1示意出了根据本发明的一种对请求信息进行响应的系统结构示意图;
图2示意出了根据本发明的一种基于开发框架对请求信息进行响应的方法流程图;
图3示意出了根据本发明的一个优选实施例的基于开发框架对请求信息进行响应的装置结构示意图;
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本发明作进一步详细描述。
图1示意出了根据本发明的一种对请求信息进行响应的系统。其中,所述系统包括一个或多个服务供应端,对请求信息进行响应的装置,以及应用供应端。
其中,该装置为一开发框架。优选地,该装置为用于问答机器人的开发框架。
其中,所述服务供应端(SP,Service Provider)可对应多种不同的可采用问答机器人机制的平台系统,例如,QQ、Skype、电商客服系统、MSN平台、微信平台、短消息服务平台以及网页服务平台等等。其中各个平台可采用不同的接入协议。
例如,MSN平台可采用的微软通信协议(MSNP,Microsoft NotificationProtocol)协议,微信平台可采用的微信公众平台接口协议,短消息服务平台(SMS,ShortMessage Service)可采用短消息协议(SMP,Short Message Protocol),网页服务平台(WEBSERVICE)可采用简单对象访问协议(SOAP,Simple Object Access Protocol)等。
优选地,所述一个或多个服务供应端分别通过所述装置中的一个或多个适配器进行信息交互。
更优选地,装置通过与各个系统平台分别对应的适配器进行信息交互。
具体地,适配器将来自服务供应端的原始请求信息转换为满足服务端接口的事件请求信息;和/或,将服务端接口得到的事件反馈信息转换为满足服务供应端的最终反馈信息。
其中,应用供应端用于基于装置中所定义的相关信息,来实现具体的应用功能。
优选地,所述应用供应端可基于装置来实现问答机器人的各项业务。
参照图2,图2示意出了根据本发明的一种对请求信息进行响应的方法流程图。根据本发明的方法包括步骤S1、步骤S2、步骤S3、步骤S4和步骤S5。
其中,根据本发明的方法通过包含于计算机设备中的开发框架来实现。所述计算机设备包括一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的电子设备,其硬件包括但不限于微处理器、专用集成电路(ASIC)、可编程门阵列(FPGA)、数字处理器(DSP)、嵌入式设备等。所述计算机设备包括网络设备与用户设备。
其中,所述网络设备包括但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(Cloud Computing)的由大量主机或网络服务器构成的云,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。
其中,所述用户设备包括但不限于任何一种可与用户通过键盘、鼠标、遥控器、触摸板、或声控设备等方式进行人机交互的电子产品,例如,电脑、平板电脑、智能手机、PDA或掌上游戏机等。
优选地,根据本发明的开发框架包含于网络设备中。
其中,所述开发框架包括但不限于服务端接口(SPI,Service ProviderInterface)、应用端接口(API,Application Provider Interface),一个或多个业务处理单元以及控制单元。
其中,SPI用于获取事件请求信息和最终反馈信息。
所述事件请求信息基于服务端接口要求,对服务供应端的原始请求信息进行转换得到;所述最终反馈信息基于服务供应端要求,对应用端接口得到的事件反馈信息进行转换得到。
其中,所述API包含了该开发框架中的各个功能单元的相关信息,如功能单元的定义信息等,以便应用供应端(AP,Application Provider)基于该API中的定义信息来实现相应的功能单元的功能。
更优选地,API中还包含了与开发框架中的各个基础函数信息对应的相关信息,如基础函数信息的函数接口信息等,以便应用供应端(AP)基于该API来使用相应的基础函数信息实现所需的功能单元。
其中,各个功能单元基于装置中的相关定义信息,由应用供应端实现得到。并且,由装置中的控制单元来控制其运行。
其中,控制单元用于控制与所述开发框架对应的一个或多个功能单元执行相应的操作。
优选地,功能单元包括以下至少任一种:
(1)业务处理单元;其中,每个业务处理单元具有对应的业务功能,业务处理单元用于根据各自的业务功能,对所接收到的待处理请求进行处理。
其中,所述业务功能包括但不限于诸如天气查询、车票订购、翻译、日历、自然语言识别等可能被用户需要的、且可通过问答机器人获取的功能。
优选地,基于业务处理过程中是否需要与用户交互,可将业务处理单元分为会话型业务处理单元和非会话型业务处理单元。
具体地,需要与用户交互的为会话型业务处理单元,无需与用户交互的为非会话型业务处理单元。
其中,对于需要与用户进行交互的会话型业务处理单元,可进一步获取来自服务供应端的事件请求信息,来满足业务功能的需求。
(2)请求拦截单元;其中,请求拦截单元用于根据各自的请求拦截条件,对所处理的信息进行筛选。
(3)业务拦截单元;其中,业务拦截单元用于根据各自的业务拦截条件,对相应的业务功能进行拦截处理。
更优选地,所述装置还包括存储单元,存储单元用于存储一个或多个基础函数信息,以供所述装置调取。
优选地,所述基础函数信息通常包括较为简单、且重复利用率较高的函数信息。
例如,开发框架中可包含一个基于“先进先出”原则来处理缓存队列的基础函数function1,以及一个基于“后进先出”原则处理缓存队列的基础函数function2,则可通过调用基础函数function1,来实现一个对缓存队列采用“先进先出”方式进行清理的业务处理单元。
又例如,开发框架中包含一个供用户确认“是/否”逻辑的基础函数function3,在基于该开发框架实现获取天气信息的聊天过程时,可以调用该基础函数,来实现询问用户是否获取当前区域的天气信息,是否需要继续服务等业务功能。
其中,装置对应的各个功能单元可以基于开发框架中预定义的功能来实现,或者,可以为基于开发框架中可调用的一个或多个基础函数信息来实现;或者,可以基于开发者自行编写的代码实现。
参考图2,在步骤S1中,装置获取事件请求信息。
具体地,装置通过SPI接收与通信层对应的事件请求信息。
优选地,装置通过适配器将来自服务供应端的原始请求信息转换为满足服务端接口的事件请求信息;和/或,将服务端接口得到的事件反馈信息转换为满足服务供应端的最终反馈信息。
其中,所述SPI的格式要求包括但不限于以下任一种:
1)输入信息的数量要求,例如,所需获取的数据项数量等。
2)输入信息的形式要求,例如,所需获取的数据的属性、字段长度等。
接着,在步骤S2中,装置获取应用请求信息。
其中,所述应用请求信息基于应用端接口要求,对服务端接口得到的事件请求信息进行转换得到。
其中,所述API的格式要求包括但不限于以下任一种:
1)输入信息的数量要求,例如,所需获取的数据项数量等。
2)输入信息的形式要求,例如,所需获取的数据的属性、字段长度等。
其中,应用供应端通过API中定义的功能单元和/或基础函数信息,来实现应用的各项业务功能。
接着,在步骤S3中,控制单元控制一个或多个业务处理单元,基于该一个或多个业务处理单元各自的业务功能,对所述应用请求信息进行处理,以获得与所述应用请求信息对应的所述应用反馈信息。
优选地,一个或多个业务处理单元分别根据各自业务功能对应的处理逻辑,对所接收到的待处理请求进行处理,并基于处理结果,分别提供与应用请求信息对应的应用反馈信息。
其中,控制单元可由装置所对应的多个业务处理单元中选择一个或多个业务处理单元,并控制其执行相应的业务功能。
其中,控制单元由所述多个业务处理单元中确定用于处理所述待处理请求的一个或多个业务处理单元的方式包括但不限于以下任一种:
1)控制单元基于预定的一个或多个业务处理单元来进行处理。
优选地,可将具有业务导航功能的业务处理单元作为预定业务处理单元,来对接收到的应用请求信息进行处理。
例如,默认由具有业务导航功能的业务处理单元handler_AI对所接收到的应用请求信息进行处理,该业务处理单元能够对所接收到的应用请求信息进行自然语言分析,提取相应的指令信息,以供开发框架基于该指令信息,来确定对应的一个或多个业务处理单元,由所确定的该一个或多个业务处理单元对该指令信息进行处理。
如,接收到“今天上海需要穿外套么?”的这一应用请求信息时,handler_AI通过自然语言分析,确定该应用请求信息对应的是对天气信息的业务处理单元handler_weather,并确定该应用请求信息实质对应的指令信息包括“上海+天气”。则控制单元基于所获得的指令信息“上海+天气”,确定由业务处理单元handler_weather对该指令信息进行处理,以供该handler_weather基于指令信息来反馈相应的天气信息。
2)控制单元基于预定的指令与业务处理单元之间的对应关系,来确定与所接收到待处理请求对应的一个或多个业务处理单元。
其中,控制单元可基于所维护的指令与业务处理单元之间的对应关系表,来查询当前所接收到的应用请求信息对应的一个或多个业务处理单元,或者,控制单元可直接基于所接收到的应用请求信息,在所述开发框架对应的配置文件,或者与各个业务处理单元相对应的标注类文件(如annotation文件等)中查询,以确定该应用请求信息对应的一个或多个业务处理单元。
例如,当接收到的应用请求信息中包含“joke”一词,则可基于各个业务处理单元对应的标注类文件查询获知业务处理单元handler_joke的标注类文件中包含“joke”这一标签,从而控制单元确定业务处理单元handler_joke为与该待处理请求对应的业务处理单元,并控制该业务处理单元handler_joke对该待处理请求进行处理。
3)控制单元先基于预定的指令与业务处理单元之间的对应关系,来确定与所接收到应用请求信息对应的一个或多个业务处理单元;当无法基于对应关系找到与所接收到的应用请求信息对应的业务处理单元时,由预定的业务处理单元对相应的应用请求信息进行处理。
需要说明的是,各个功能单元(如:业务处理单元)之间相互独立,各个功能单元之间不直接进行信息传输,而由控制单元来确定各个功能单元的处理顺序,并由控制单元实现不同功能单元之间信息的间接传输。这样,就可以保证各个功能单元的开发独立性、应用独立性以及维护独立性。
优选地,控制单元维护一预定处理顺序表,并控制一个或多个业务处理单元按照该预定处理顺序表的顺序依次进行业务处理。
更优选地,开发者可通过新建、修改、禁用、启动业务处理单元等方式,来更改开发框架中已有的一个或多个业务处理单元之间的处理顺序。
例如,控制单元控制A、B、C三个可依次执行的业务处理单元,其中,控制单元获取业务处理单元A处理结束后的用户输入,并当该用户输入满足业务处理单元B的指令要求时,控制业务处理单元B基于该指令执行操作,接着,控制单元获取业务处理单元B处理结束的反馈信息,并在满足业务处理单元C的指令要求时,控制业务处理单元C基于该指令执行操作。
而基于该开发框架进行开发的用户,可将新开发的业务处理单元B’的处理顺序添加至B之后,并通过控制单元维护该A、B、B’、C的处理顺序。
根据本发明的一个优选实施例,控制单元可进一步控制一个或多个请求拦截单元,来对所述应用请求信息或/和所述应用反馈信息进行筛选。优选地,在步骤S3之前还包括步骤S3’(图未示),在步骤S3之后还包括步骤S3”(图未示)。其中,各个请求拦截单元分别具有各自的请求拦截条件,以对应用请求信息和/或应用反馈信息进行筛选。
优选地,请求拦截条件中还包括相应的操作指令信息。
在步骤S3’中,控制单元控制该一个或多个请求拦截单元筛选所述应用请求信息。
接着,在步骤S3”中,控制单元控制该一个或多个请求拦截单元筛选所述应用反馈信息。
具体地,控制单元控制该一个或多个请求拦截单元以与筛选应用请求信息时相反的顺序,依次对该应用反馈信息进行筛选操作。
例如,一请求拦截单元的请求拦截条件为:应用请求信息中不包括敏感词表中的各个敏感词,则在步骤S3’中,该请求拦截单元对所获得的应用请求信息进行筛选,并筛除包含敏感词的应用请求信息,被删除的内容将不再由业务处理单元来处理。
又例如,一请求拦截单元的请求拦截条件包括:当业务处理单元的应用反馈信息为空时,提供预设的默认回复信息作为最后的应用反馈信息。
优选地,步骤S3’中应用请求信息按一定顺序逐个经过多个请求拦截单元的筛选操作,直至被传输至业务处理单元;经一个或多个业务处理单元处理之后,在步骤S3”中,基于业务处理单元对该应用请求信息的业务处理结果,按照与前述步骤S3’中顺序相反的顺序,依次完成前述各个请求拦截单元的筛选操作。
例如,步骤S3’中,应用请求信息依次经过inter11、inter12、inter13这三个请求拦截单元,并由相应的业务处理单元处理后,获得相应的处理结果,该处理结果基于inter13、inter12、inter11的顺序,依次完成该三个请求拦截单元的操作,以获得应用反馈信息。
根据本发明的又一个优选实施例,控制单元可进一步控制一个或多个业务拦截单元,来对业务功能进行业务拦截操作。根据本优选实施例的步骤S3可以包括步骤S301(图未示)和步骤S302(图未示)。
在步骤S301中,控制单元控制一个或多个业务拦截单元,在所述业务处理单元对所述应用请求信息进行处理之前,对相应的业务功能进行拦截处理。
其中,各个业务拦截单元分别具有各自的业务拦截条件,以对各个业务处理单元分别进行拦截处理。
优选地,业务拦截条件中还包括相应的操作指令信息。
接着,业务处理单元根据自身业务功能对待处理请求进行处理,此处不再赘述。
接着,在步骤S302中,控制单元控制一个或多个业务拦截单元,在所述业务处理单元对所述应用请求信息进行处理之后,对该业务处理单元进行后续拦截处理,以获得所述应用反馈信息。
例如,一业务拦截单元的业务拦截条件包括:处理时间不大于预定阈值,则在步骤S301中,该业务拦截单元在业务处理单元开始执行操作时同步开始计时;并在步骤S302中,当计时长度达到预定时间阈值,而该业务处理单元仍然在执行操作时,确定该业务处理单元的业务处理事件大于预定阈值,则拦截该业务处理单元的处理结果。
优选地,对所述应用请求信息进行处理之前,控制单元控制多个业务拦截单元按照一定顺序逐个对业务处理单元进行拦截处理;并且,对所述应用请求信息进行处理之后,控制单元控制该多个业务拦截单元按照与之前相反的顺序,依次完成各个业务拦截单元的拦截操作。
例如,步骤S301中,业务处理单元依次由inter21、inter22两个业务拦截单元进行拦截操作,随后,在步骤S302中,该业务处理单元进行业务处理,接着,在步骤S303中,业务处理单元依次经由inter22、inter21两个业务拦截单元完成拦截操作,得到应用反馈信息。
接着,在步骤S4中,装置获取事件反馈信息。其中,所述事件反馈信息通过基于服务端接口要求,对应用反馈信息转换得到。
具体地,开发框架经由API接收所述一个或多个业务处理单元针对所述待处理请求的应用反馈信息,并基于SPI的要求对所接收到的应用反馈信息进行转换,以获得事件反馈信息。
接着,在步骤S5中,装置获取最终反馈信息。
其中,所述最终反馈信息通过基于服务供应端的要求对事件反馈信息进行转换得到。
具体地,适配器经由SPI接收事件反馈信息后,将该事件反馈信息转换为与服务供应端对应的最终反馈信息。
根据本发明的一个优选实施例,由控制单元控制一个或多个请求拦截单元,基于该一个或多个请求拦截单元的各自的请求筛选功能,来筛选所述应用请求信息;接着,控制单元基于所维护的业务处理链,来确定用于当前进行业务处理的业务功能;接着,在对所述应用请求信息进行处理之前,控制单元控制一个或多个业务拦截单元,基于该一个或多个业务拦截单元各自的业务拦截功能,对该业务功能进行拦截处理;随后,控制单元控制具有所确定的业务功能的业务处理单元,对应用请求信息进行处理,并且,在对所述应用请求信息进行处理之后,控制单元继续控制该一项或多项业务处理单元,基于与之前对应用请求信息进行处理之前相反的顺序,对所确定的业务功能进行后续拦截处理。控制单元基于业务处理链,重复前述操作,直至业务处理链结束,以获得应用反馈信息。接着,控制单元控制前述一个或多个请求拦截单元,基于与业务处理之前相反的顺序,对所获得的应用反馈信息进行筛选。
参考图3。图3示意出了根据前述优选实施例的基于开发框架的执行过程。其中,该开发框架的控制单元维护预定的业务处理链:业务处理单元Handler1→业务处理单元Handler2,并且,该开发框架分别对应两个请求拦截单元RIa和RIb,以及两个业务拦截单元HIa和HIb。
开发框架中的控制单元先依次控制请求拦截单元RIa和RIb对所获得的应用请求信息进行筛选,随后,控制单元确定当前的业务功能为与业务处理单元Handler1对应的业务功能,并依次控制业务拦截单元HIa和HIb对Handler1进行拦截处理,接着,由业务处理单元Handler1基于自身的业务功能对应用请求信息进行处理,并由控制单元依次控制业务拦截单元HIb和HIa对业务处理单元Handler1进行后续拦截以获得第一处理结果。接着,控制单元基于所维护的业务处理链,确定当前业务功能为与业务处理单元Handler2对应的业务功能。随后,控制单元继续依次控制业务拦截单元HIa和HIb对业务处理单元Handler2进行拦截处理,接着,由业务处理单元Handler2基于自身的业务功能对第一处理结果进行处理,并由控制单元依次控制业务拦截单元HIb和HIa对业务处理单元Handler2进行后续拦截以获得应用反馈信息。接着,控制单元确定当前的业务处理链结束,并依次控制请求拦截单元RIb和RIa的筛选该应用反馈信息。
需要说明的是,任一功能单元,如业务处理单元、请求拦截单元或业务拦截单元,均能终止当前的请求处理过程,并返回当前结果。并且,请求拦截单元和业务拦截单元可以确定是否继续处理当前的请求。例如,当使用具有黑名单拦截功能的请求拦截单元时,可基于请求中是否包含了黑名单,来决定是否继续执行;又例如,当使用记录耗时信息的业务拦截单元时,可在业务处理单元开始处理后记录耗时信息,并当耗时超过预定阈值后确定终止执行等。
根据本发明的方案,通过将一些需要采用问答机器人的系统平台的业务抽象为框架内的业务处理单元,并通过SPI和API将通信层与业务层进行分离,实现了对于当前主流即时通信和类似API的通信模块的分离,从而提高了平台个性化的问答机器人的开发效率,减少了代码冗余,降低维护难度,尤其提高了现有业务的二次开发效率。
此外,在开发阶段,各个功能单元之间单独开发,并结合各功能单元的信息对控制单元进行开发;而在应用阶段,控制单元会控制各个功能单元的工作。
根据本发明的一个优选实施例,根据本发明的方法还可以包括步骤S6(图未示)。
在步骤S6中,装置所包含的扫描单元(图未示)扫描与其对应的各个标注类文件,以加载与所述各个标注类文件对应的功能单元的功能。
具体地,在启动基于该开发框架实现的应用时,扫描单元通过扫描与各功能单元对应的各个标注类文件,来加载与所述各个标注类文件对应的功能单元的功能。
更优选地,基于本优选实施例的方法还包括步骤S7(图未示)。
在步骤S7中,装置中包含的更新单元(图未示)通过加载修改/重写后的、与所述功能单元的功能对应的一个或多个标注类文件,以相应地更新与所述一个或多个标注类文件分别对应的功能单元的功能。
其中,所述标注类文件包括利用该开发框架所开发的各个应用分别对应的配置文件,如robot.xml等。优选地,所述标注类文件包括但不限于诸如JAVA语言所对应的annotation文档等。
本领域技术人员应可理解,通过加载修改/重写后的与所述开发框架对应的一个或多个标注类文件,可以相应地更新与所述一个或多个标注类文件分别对应的功能单元的功能。
根据本发明的方案,开发人员可以方便地通过对配置文件的修改,实现对开发框架中各个业务处理单元、请求拦截单元以及业务拦截单元的功能的重写以及二次开发,从而方便地实现对于基于该开发框架所开发的应用的功能的更新与修改,实现动态新增功能并实时生效。
本发明的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本发明的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本发明的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个功能或步骤的电路。
另外,本发明的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供本发明的方法和/或技术方案。而调用本发明的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本发明的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本发明的多个实施例的方法和/或技术方案。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

Claims (17)

1.一种对请求信息进行响应的装置,其特征在于,包括:
服务端接口,用于获取事件请求信息和最终反馈信息;所述事件请求信息基于服务端接口要求,对来自服务供应端的原始请求信息进行转换得到;所述最终反馈信息基于服务供应端要求,对服务端接口得到的事件反馈信息进行转换得到;
应用端接口,用于获取应用请求信息和所述事件反馈信息;所述应用请求信息基于应用端接口要求,对服务端接口得到的所述事件请求信息进行转换得到;所述事件反馈信息基于服务端接口要求,对应用端接口的所述应用反馈信息转换得到;
一个或多个业务处理单元;
控制单元,用于控制一个或多个业务处理单元,基于各自的业务功能,对所述应用请求信息进行处理,以获得与所述应用请求信息对应的所述应用反馈信息。
2.根据权利要求1所述的装置,其中,所述装置还包括:
适配器,其中,所述适配器用于将来自服务供应端的原始请求信息转换为满足服务端接口的事件请求信息;和/或,将服务端接口得到的事件反馈信息转换为满足服务供应端的最终反馈信息。
3.根据权利要求1所述的装置,其中,所述装置还包括:一个或多个请求拦截单元;所述控制单元还用于:
-控制一个或多个请求拦截单元,对所述应用请求信息或/和所述应用反馈信息进行筛选。
4.根据权利要求1至3中任一项所述的装置,其中,所述装置还包括:一个或多个业务拦截单元;所述控制单元还用于:
-控制一个或多个业务拦截单元,在所述业务处理单元对所述应用请求信息进行处理之前,对相应的业务功能进行拦截处理;和/或,在所述业务处理单元对所述应用请求信息进行处理之后,对该业务处理单元进行后续拦截处理,以获得所述应用反馈信息。
5.根据权利要求4所述的装置,其中,所述控制单元还用于:
-基于业务处理链,来确定进行业务处理的当前的业务处理单元,以控制其对相应的应用请求信息进行处理;
其中,当所述业务处理链未结束时,继续选择下一业务处理单元作为当前的业务处理单元。
6.根据权利要求1至5中任一项所述的装置,其中,所述装置还包括:
扫描单元,用于扫描与其对应的各个标注类文件,以加载与所述各个标注类文件对应的功能单元;其中,所述功能单元包括以下任一种:
-业务处理单元;
-请求拦截单元;
-业务拦截单元。
7.根据权利要求6所述的装置,其中,所述装置包括:
更新单元,用于通过加载修改/重写后的、与所述功能单元对应的一个或多个标注类文件,以相应地更新与所述一个或多个标注类文件分别对应的功能单元的功能。
8.根据权利要求1至7中任一项所述的装置,其中,所述装置还包括:
存储器,用于存储一个或多个基础函数信息。
9.根据权利要求1至8中任一项所述的装置,其中,所述装置为用于问答机器人的开发框架。
10.一种对请求信息进行响应的方法,其中,所述方法包括以下步骤:
a获取事件请求信息,其中,所述事件请求信息通过对原始请求信息进行转换得到;
b获取应用请求信息,所述应用请求信息通过对所述事件请求信息进行转换得到;
c基于一个或多个业务功能,对所述应用请求信息进行处理,以获得与所述应用请求信息对应的所述应用反馈信息;
d获取事件反馈信息;其中,所述事件反馈信息通过对所述应用反馈信息转换得到;
e获取最终反馈信息,其中,所述最终反馈信息通过对所述事件反馈信息进行转换得到。
11.根据权利要求10所述的方法,其中,所述方法还包括以下步骤:
-将原始请求信息转换为事件请求信息;
其中,所述方法还包括以下步骤:
-将事件反馈信息转换为最终反馈信息。
12.根据权利要求10或11所述的方法,其中,所述步骤c之前进一步包括以下步骤:
-筛选所述应用请求信息;
其中,所述方法还包括以下步骤:
-筛选所述应用反馈信息。
13.根据权利要求10至12中任一项所述的方法,其中,对进行业务处理的业务功能,所述步骤c进一步包括以下步骤:
-在对所述应用请求信息进行处理之前,对该业务功能进行拦截处理;
其中,所述方法还包括以下步骤:
-在对所述应用请求信息进行处理之后,对该业务功能进行后续拦截处理,以获得应用反馈信息。
14.根据权利要求10至13中任一项所述的方法,其中,所述步骤c进一步包括以下步骤:
-基于一项或多项请求筛选功能来筛选所述应用请求信息;
其中,所述方法还包括以下步骤:
m基于业务处理链,来确定当前进行业务处理的业务功能;
n在对所述应用请求信息进行处理之前,基于一项或多项业务拦截功能,对该业务功能进行拦截处理;
o基于所确定的业务功能对相应的应用请求信息进行处理;
p在对所述应用请求信息进行处理之后,基于该一项或多项业务拦截功能,基于与所述应用请求信息进行处理之前相反的顺序,对该业务功能进行后续拦截处理;
q当所述业务处理链未结束时,继续选择下一业务功能作为当前的进行业务处理的业务功能,并重复执行前述步骤m至p,以获得应用反馈信息;
其中,所述方法还包括以下步骤:
-当所述业务处理链结束时,基于相反的顺序,基于前述一项或多项请求筛选功能对所述应用反馈信息进行筛选。
15.根据权利要求10至14中任一项所述的方法,其中,所述方法还包括以下步骤:
-扫描与其对应的各个标注类文件,以加载与所述各个标注类文件对应的功能。
16.根据权利要求15所述的方法,其中,所述方法还包括:
-通过加载修改/重写后的一个或多个标注类文件,以相应地更新与所述一个或多个标注类文件分别对应的功能。
17.一种对请求信息进行响应的系统,其中,所述系统包括一个或多个服务供应端,如权利要求1到9中任一项所述的对请求信息进行响应的装置,以及应用供应端。
CN201610697767.3A 2016-08-19 2016-08-19 一种对请求信息进行响应的方法、装置及系统 Active CN106302125B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610697767.3A CN106302125B (zh) 2016-08-19 2016-08-19 一种对请求信息进行响应的方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610697767.3A CN106302125B (zh) 2016-08-19 2016-08-19 一种对请求信息进行响应的方法、装置及系统

Publications (2)

Publication Number Publication Date
CN106302125A true CN106302125A (zh) 2017-01-04
CN106302125B CN106302125B (zh) 2019-08-30

Family

ID=57661771

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610697767.3A Active CN106302125B (zh) 2016-08-19 2016-08-19 一种对请求信息进行响应的方法、装置及系统

Country Status (1)

Country Link
CN (1) CN106302125B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108632322A (zh) * 2017-03-24 2018-10-09 北京京东尚科信息技术有限公司 应答接口开放的方法、装置、设备及存储介质
CN109842654A (zh) * 2017-11-27 2019-06-04 阿里巴巴集团控股有限公司 一种api服务的处理方法和装置
CN112532401A (zh) * 2021-02-09 2021-03-19 全时云商务服务股份有限公司 在团队群建立业务流程的方法、系统及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103347065A (zh) * 2013-06-24 2013-10-09 李俊岭 一种服务信息处理系统及方法
CN103428166A (zh) * 2012-05-16 2013-12-04 腾讯科技(深圳)有限公司 第三方应用的多sns平台统一接入方法及系统
CN103701921A (zh) * 2013-12-31 2014-04-02 曙光云计算技术有限公司 云环境下基于接口调用的业务实现方法和装置
US20140149592A1 (en) * 2012-11-29 2014-05-29 Ricoh Co., Ltd. Network Appliance Architecture for Unified Communication Services

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103428166A (zh) * 2012-05-16 2013-12-04 腾讯科技(深圳)有限公司 第三方应用的多sns平台统一接入方法及系统
US20140149592A1 (en) * 2012-11-29 2014-05-29 Ricoh Co., Ltd. Network Appliance Architecture for Unified Communication Services
CN103347065A (zh) * 2013-06-24 2013-10-09 李俊岭 一种服务信息处理系统及方法
CN103701921A (zh) * 2013-12-31 2014-04-02 曙光云计算技术有限公司 云环境下基于接口调用的业务实现方法和装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108632322A (zh) * 2017-03-24 2018-10-09 北京京东尚科信息技术有限公司 应答接口开放的方法、装置、设备及存储介质
CN108632322B (zh) * 2017-03-24 2021-07-30 北京京东尚科信息技术有限公司 应答接口开放的方法、装置、设备及存储介质
CN109842654A (zh) * 2017-11-27 2019-06-04 阿里巴巴集团控股有限公司 一种api服务的处理方法和装置
CN112532401A (zh) * 2021-02-09 2021-03-19 全时云商务服务股份有限公司 在团队群建立业务流程的方法、系统及存储介质
CN112532401B (zh) * 2021-02-09 2021-05-11 全时云商务服务股份有限公司 在团队群建立业务流程的方法、系统及存储介质

Also Published As

Publication number Publication date
CN106302125B (zh) 2019-08-30

Similar Documents

Publication Publication Date Title
CN101356522B (zh) 终端用户对工作流进行动态重新定位的计算机实现的系统
CN1819576B (zh) 在客户机和服务器之间分配应用任务的方法以及应用服务系统
CN110351342A (zh) 业务指令处理方法、装置、计算机设备和存储介质
CN104699363B (zh) 一种窗口界面展现方法及系统
CN109309712A (zh) 基于接口异步调用的数据传输方法、服务器及存储介质
JP2007334580A (ja) 支援装置、プログラム、情報処理システム及び支援方法
CN101853152A (zh) 一种生成用户图形界面的方法和系统
CN113393367B (zh) 图像处理方法、装置、设备和介质
CN106302125A (zh) 一种对请求信息进行响应的方法、装置及系统
CN113094125B (zh) 业务流程处理方法、装置、服务器及存储介质
CN104270443A (zh) 一种能够动态解析Web应用的云计算系统及方法
CN110231936A (zh) 一种移动端流程引擎框架及移动端流程引擎的使用方法
EP3627313B1 (en) Method and system for operating a software application on a processor of a mobile device
US20040051703A1 (en) Display control system, display device and display control program, and display control method
CN103744573A (zh) 一种基于图形设备接口的数据快速查看和分析系统
CN113703808A (zh) 组件化的灰度发布方法、装置、设备及存储介质
CN112367205A (zh) 一种对http调度请求的处理方法及调度系统
GB2365600A (en) Method, system and computer program for enabling high speed disaster recovery and relocation of computer workloads
CN112100187A (zh) 一种基于VueJS的学生学习数据存储方法及装置
CN112052171A (zh) 测试报文处理方法、装置、计算机设备及存储介质
CN110780983A (zh) 任务异常处理方法、装置、计算机设备以及存储介质
CN110908573B (zh) 算法模型训练方法、装置、设备及存储介质
CN111414232B (zh) 虚拟机模板数据处理方法及装置
CN117389582A (zh) 容器应用的更新方法、装置及系统
CN115562662A (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
GR01 Patent grant
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: A method, device and system for responding to request information

Effective date of registration: 20230223

Granted publication date: 20190830

Pledgee: China Construction Bank Corporation Shanghai No.5 Sub-branch

Pledgor: SHANGHAI XIAOI ROBOT TECHNOLOGY Co.,Ltd.

Registration number: Y2023980033272

PE01 Entry into force of the registration of the contract for pledge of patent right