CN103166936B - 一种用于提供第三方能力的***、开放装置和方法 - Google Patents
一种用于提供第三方能力的***、开放装置和方法 Download PDFInfo
- Publication number
- CN103166936B CN103166936B CN201110424265.0A CN201110424265A CN103166936B CN 103166936 B CN103166936 B CN 103166936B CN 201110424265 A CN201110424265 A CN 201110424265A CN 103166936 B CN103166936 B CN 103166936B
- Authority
- CN
- China
- Prior art keywords
- ability
- party
- platform
- open system
- request
- 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
Links
Landscapes
- Telephonic Communication Services (AREA)
Abstract
本发明实施例公开了一种用于提供第三方能力的***、开放装置和方法。该***包括开放装置和适配模块,所述开放装置包括接入模块、能力注册管理模块和路由模块;所述适配模块,与开放装置的接入模块相连,通过该接入模块,在开放装置和第三方能力平台之间传输数据流;能力注册管理模块,接收第三方能力平台的能力注册参数;路由模块,根据所述第三方能力平台的能力注册参数,生成能力路由表,根据应用的能力调用请求,查询能力路由表,将该能力调用请求路由到第三方能力平台。应用本发明使得第三方能力平台能够方便地接入到开放装置,应用不需要维护多个第三方能力平台的URL也能够调用第三方能力。
Description
技术领域
本发明涉及通信和互联网技术领域,尤其涉及一种用于提供第三方能力的***、开放装置和方法。
背景技术
开放装置是当前移动互联网的技术热点。开放装置的核心是聚集第三方的资源,为用户提供更好的服务。其中,第三方能力是重要的第三方资源。
目前,将第三方能力接入到开放装置的方法为:根据开放装置的接口要求,对第三方能力平台进行改造,使第三方能力平台能够接入到开放装置中。
图1是目前应用调用接入到开放装置的第三方能力的业务流程图。
如图1所示,该流程包括:
步骤1,开发者的应用平台首先到开放装置获取调用第三方能力的调用授权。
步骤2,开放装置在收到应用平台的授权请求后,与第三方能力平台交互,完成鉴权。
步骤3,开发者的应用平台直接调用第三方能力平台。
步骤4,第三方能力平台到开放装置进行鉴权相关操作。
步骤5,第三方能力平台在鉴权通过后给应用平台能力调用响应。
步骤6,第三方能力平台提供调用成功记录,并向开放装置要求调用成功计费。
可见,应用在调用第三方能力时,先通过开放装置获得第三方能力的调用授权,然后利用该调用授权,直接到第三方能力平台调用相关能力,第三方能力平台根据应用的能力调用请求,主动与开放装置进行相关鉴权操作,根据鉴权结果,直接向应用返回能力调用响应,并主动向开放装置发起计费请求。
由上述方案可见,目前通过开放装置提供第三方能力的方法存在如下的缺陷:
其一,在将第三方能力接入到开放装置时,需要对绝大多数第三方能力平台进行改造,接入不方便,而且成本较高,特别是在互联网中存在海量能力的现实情况下,会造成对***的频繁改造,能力上线周期厂、流程复杂,且对第三方能力平台运营方的人力物力提出了过高要求。
其二,应用将能力调用请求直接发送到第三方能力平台,不同的第三方能力平台的URL不同,因此应用需要维护多个URL,管理成本高。
其三,鉴权流程和计费流程均依赖第三方能力平台主动发起,并且开放装置不能判断调用是否成功,无法产生准确的话单,存在计费的欺诈风险。
发明内容
有鉴于此,本发明提供了一种用于提供第三方能力的***、开放装置和方法,以便第三方能力平台能够方便地接入到开放装置,应用不需要维护多个第三方能力平台的URL也能够调用第三方能力。
本发明的技术方案具体是这样实现的:
一种用于提供第三方能力的***,该***包括开发平台和适配模块,所述开放装置包括接入模块、能力注册管理模块和路由模块;
所述适配模块,与第三方能力平台相连,将第三方能力平台的数据流适配成符合预定协议的数据流,与开放装置的接入模块相连,通过该接入模块,在开放装置和第三方能力平台之间传输数据流;
所述能力注册管理模块,用于接收第三方能力平台的能力注册参数;
所述路由模块,用于根据所述第三方能力平台的能力注册参数,生成能力路由表,根据应用的能力调用请求,查询能力路由表,将该能力调用请求路由到第三方能力平台。
一种用于提供第三方能力的开放装置,该开放装置包括接入模块、能力注册管理模块和路由模块;
所述接入模块,用于与适配模块相连,通过该适配模块,与第三方能力平台交互数据流,接收应用的能力调用请求;
所述能力注册管理模块,用于接收第三方能力平台的能力注册参数;
所述路由模块,用于根据所述第三方能力平台的能力注册参数,生成能力路由表,根据所述能力调用请求,查询能力路由表,将该能力调用请求路由到第三方能力平台,其中,所述第三方能力平台通过所述适配模块接入到所述开放装置。
一种提供第三方能力的方法,该方法包括:
开放装置接收应用的能力调用请求;
开放装置根据该能力调用请求,查询能力路由表;
开放装置根据能力路由表的查询结果,将该能力调用请求路由到第三方能力平台;
其中,所述能力路由表由开放装置根据第三方能力平台的能力注册参数生成。
由上述技术方案可见,本发明将第三方能力平台通过适配模块接入到开放装置,其中的适配模块,可以将第三方能力平台的数据流适配成符合预定协议的数据流,与开放装置的接入模块相连,通过该接入模块,在开放装置和第三方能力平台之间传输数据流,由于接入的相关操作都由适配模块完成,因此,第三方能力平台接入到开放装置变得更加方便。
另外,第三方能力平台将能力注册参数注册到开放装置上,开放装置根据第三方能力平台的能力注册参数,生成能力路由表,应用可以直接向开放装置发送能力调用请求,然后由开放装置查询能力路由表,将该能力调用请求路由到相应的第三方能力平台,因此,不需要应用维护多个第三方能力平台的URL,对应用来讲,其管理成本也大大降低。
附图说明
图1是目前应用调用接入到开放装置的第三方能力的业务流程图。
图2是本发明提供的用于提供第三方能力的***组成示意图。
图3是本发明提供的异步的能力调用流程图。
图4是本发明提供的用于提供第三方能力的开放装置结构图。
图5是本发明提供第三方能力的方法流程图。
图6是能力调用请求的路由处理流程图。
图7是回调请求的路由处理流程图。
图8是同步计费方式下的业务流程图。
图9是异步计费方式下的业务流程图。
图10是直接计费方式下的业务流程图。
具体实施方式
图2是本发明提供的用于提供第三方能力的***组成示意图。
如图2所示,该***包括开发平台201和适配模块202,开放装置201包括接入模块2011、能力注册管理模块2012和路由模块2013。
适配模块202,与第三方能力平台相连,将第三方能力平台的数据流适配成符合预定协议的数据流,与开放装置201的接入模块2011相连,通过该REST接口2011,在开放装置和第三方能力平台之间传输数据流。
能力注册管理模块2012,用于接收第三方能力平台的能力注册参数。
路由模块2013,用于根据所述第三方能力平台的能力注册参数,生成能力路由表,根据应用的能力调用请求,查询能力路由表,将该能力调用请求路由到第三方能力平台。
其中,一般地,与开放装置201相连的适配模块202有多个,不同的第三方能力平台通过不同的适配模块202接入到开放装置201上。
其中,所述预定协议可以包括REST协议,所述接入模块2011可以包括REST接口。
所述能力注册参数包括:能力名称和第三方能力平台的URL地址;应用发给开放装置的能力调用请求中携带有能力名称,路由模块2013可以包括能力路由表维护模块和路由查询模块。
所述能力路由表维护模块,根据第三方能力平台的能力注册参数,为所述能力注册参数中的能力名称生成能力平台标识ID,将所述能力名称和所述能力平台ID的对应关系存储在能力信息配置表中,将所述能力平台ID和所述第三方能力平台的URL地址存储在能力平台路由信息表中。
所述路由查询模块,根据能力调用请求中携带的能力名称,查询能力信息配置表,得到该能力名称对应的能力平台ID,根据所述能力平台ID查询能力平台路由信息表,得到第三方能力平台的URL地址,向所述第三方能力平台发送能力调用请求。
所述路由查询模块,可以将应用发来的能力调用请求中携带的开放装置URL地址,替换成第三方能力平台的URL地址,将替换后的能力调用请求发给与所述第三方能力平台相连的适配模块202。
适配模块202,将所述替换后的能力调用请求发给所述第三方能力平台。
可见,应用可以直接向开放装置发送能力调用请求,然后由开放装置根据第三方能力平台的能力注册参数,将该能力调用请求路由到相应的第三方能力平台,不需要应用维护多个第三方能力平台的URL,降低了应用的管理成本。
另外,一个能力常常有多种操作,当一个能力有多种操作时,所述能力注册参数还包括能力的各项操作名称,相应地,应用发来的能力调用请求中还携带有能力的操作名称,用于调用能力的该项操作。
具体地,第三方能力平台接收到能力调用请求后,根据该能力调用请求中携带的操作名称,执行能力的相应操作。
如果第三方能力平台提供异步的能力调用服务,那么,第三方能力平台的能力注册参数还包括:开放装置接收该第三方能力平台的回调请求的URL。
图3是本发明提供的异步的能力调用流程图。
如图3所示,该流程包括:
步骤301,开放装置接收应用发来的需要异步处理的能力调用请求,该能力调用请求中包含该应用接收回调请求的URL。
步骤302,开放装置在接收的所述能力调用请求中,加入开放装置接收第三方能力平台的回调请求的URL,然后将能力调用请求路由至第三方能力平台。
步骤303,第三方能力平台从接收的能力调用请求中解析出应用接收回调请求的URL、和开放装置接收该第三方能力平台的回调请求的URL,在回调请求中携带所述应用接收回调请求的URL,根据所述开放装置接收该第三方能力平台的回调请求的URL,将所述回调请求发给所述开放装置。
步骤304,所述开放装置解析所述回调请求,得到应用接收回调请求的URL,根据应用接收回调请求的URL,将所述回调请求发给应用。
图4是本发明提供的用于提供第三方能力的开放装置结构图。
如图4所示,该开放装置包括接入模块401、能力注册管理模块402和路由模块403。
接入模块401,用于与适配模块相连,通过该适配模块,与第三方能力平台交互数据流,接收应用的能力调用请求。
能力注册管理模块402,用于接收第三方能力平台的能力注册参数。
路由模块403,用于根据所述第三方能力平台的能力注册参数,生成能力路由表,根据所述能力调用请求,查询能力路由表,将该能力调用请求路由到第三方能力平台,其中,所述第三方能力平台通过所述适配模块接入到所述开放装置。
其中,接入模块401可以包括REST接口。
所述能力注册参数包括:能力名称和第三方能力平台的URL地址;所述能力调用请求中携带有能力名称,路由模块403包括能力路由表维护模块和路由查询模块。
所述能力路由表维护模块,根据第三方能力平台的能力注册参数,为所述能力注册参数中的能力名称生成能力平台标识ID,将所述能力名称和所述能力平台ID的对应关系存储在能力信息配置表中,将所述能力平台ID和所述第三方能力平台的URL地址存储在能力平台路由信息表中。
所述路由查询模块,根据能力调用请求中携带的能力名称,查询能力信息配置表,得到该能力名称对应的能力平台ID,根据所述能力平台ID查询能力平台路由信息表,得到第三方能力平台的URL地址,向所述第三方能力平台发送能力调用请求。
所述路由查询模块,将应用发来的能力调用请求中携带的开放装置URL地址,替换成第三方能力平台的URL地址,将替换后的能力调用请求发给与所述第三方能力平台相连的适配模块,通过所述适配模块,将所述替换后的能力调用请求发给所述第三方能力平台。
第三方能力平台的能力注册参数还包括:开放装置接收该第三方能力平台的回调请求的URL。
所述路由查询模块,接收需要异步处理的能力调用请求,该能力调用请求中包含该应用接收回调请求的URL,在接收的所述能力调用请求中,加入开放装置接收第三方能力平台的回调请求的URL,然后将能力调用请求路由至第三方能力平台,接收该第三方能力平台根据所述开放装置接收该第三方能力平台的回调请求的URL返回的回调请求,解析所述回调请求,得到应用接收回调请求的URL,根据应用接收回调请求的URL,将所述回调请求发给应用。
所述开放装置还可以包括事务处理模块。
路由模块403,用于接收能力调用请求,向事务处理模块发送计费请求,通过解析批价响应确定是否需要计费确认,在需要计费确认时,接收到调用响应或回调请求后,向事务处理模块发送计费确认。
所述事务处理模块,用于接收计费请求,进行批价处理,向所述路由模块返回批价响应,在该批价响应中携带是否需要计费确认的字段,在需要计费确认时,接收到计费确认后,进行计费,在不需要计费确认时,根据批价处理结果直接计费。
其中,当需要计费确认时,如果路由模块403接收到了调用响应,并根据调用响应的状态向事务处理模块发送了计费确认(一般在调用响应成功时发送计费确认),所述事务处理模块接收到该计费确认之后,进行了计费,则实现了同步计费;如果路由模块403接收到了回调请求,并根据回调请求的状态向事务处理模块发送了计费确认(一般在回调请求成功时发送计费确认),所述事务处理模块接收到该计费确认之后,进行了计费,则实现了异步计费。
如果事务处理模块不需要计费确认,而是根据批价处理结果直接计费,则实现了直接计费。
其中的事务处理模块,还可以用于生成事务标识、事务状态标识和响应状态标识,在相应消息中携带事务标识、事务状态标识或响应状态标识,以便开放装置能够对同一事务的不同消息进行关联。
图5是本发明提供第三方能力的方法流程图。
如图5所示,该流程包括:
步骤501,开放装置接收应用的能力调用请求。
步骤502,开放装置根据该能力调用请求,查询能力路由表。
其中的能力路由表,是由开放装置根据第三方能力平台的能力注册参数生成的。
步骤503,开放装置根据能力路由表的查询结果,将该能力调用请求路由到第三方能力平台。
其中,所述能力注册参数包括:能力名称;应用发给开放装置的能力调用请求中携带有能力名称。
开放装置根据能力注册参数生成能力路由表具体包括:
开放装置根据第三方能力平台的能力注册参数,为所述能力注册参数中的能力名称生成能力平台标识ID,将所述能力名称和所述能力平台ID的对应关系存储在能力信息配置表中,将所述能力平台ID和所述第三方能力平台的URL地址存储在能力平台路由信息表中。
可见,能力路由表包括能力信息配置表和能力平台路由信息表。
开放装置查询能力路由表,根据查询结果将该能力调用请求路由到第三方能力平台具体包括:
开放装置根据能力调用请求中携带的能力名称,查询能力信息配置表,得到该能力名称对应的能力平台ID,根据所述能力平台ID查询能力平台路由信息表,得到第三方能力平台的URL地址,根据第三方能力平台的URL地址向所述第三方能力平台发送能力调用请求。
开放装置根据第三方能力平台的URL地址,向所述第三方能力平台发送能力调用请求具体包括:
开放装置将应用发来的能力调用请求中携带的开放装置URL地址,替换成第三方能力平台的URL地址,将替换后的能力调用请求发给与所述第三方能力平台相连的适配模块,通过所述适配模块,将所述替换后的能力调用请求发给所述第三方能力平台。
如果第三方能力平台提供的能力有多种操作,那么,该第三方能力平台的能力注册参数还包括能力的各项操作名称,相应地,应用发给开放装置的能力调用请求中还携带有能力的操作名称,第三发明能力平台接收的能力调用请求中也携带有能力的操作名称,第三方名利平台解析能力调用请求,从中提取操作名称,执行能力的相应操作。
如果第三方能力平台提供异步的能力调用服务,那么,该第三方能力平台的能力注册参数还包括:开放装置接收该第三方能力平台的回调请求的URL。
关于开放装置提供的异步的能力调用流程,具体请参见图3,此处不赘述。
下面举几个具体的例子,对本发明提供的***、开放装置和方法,进行示例性说明。
一、对能力注册过程的举例说明:
例如,对于手机支付能力平台,能力提供商需要注册手机支付能力的名称,假设手机支付能力的名称为mobilePay,还需要注册手机支付能力的各项操作的名称,假设有一项操作为页面支付的操作,操作名称为pagePay,手机支付能力平台还需要注册回调地址mobilePayCallBack和手机支付能力平台的URL:http://www.mobilepay.com;至此,手机支付能力平台完成注册。其中,所述回调地址用于提供能力平台向开放装置发送消息的接口。
在能力提供商完成以上注册操作后,开放装置即为该手机支付能力自动生成能力ID,形成调用手机支付能力页面支付操作的URL:
http://omp.chinamobile.com/adapter/mobilePay/pagePayHTTP/1.1。
开放装置还生成手机支付能力平台的回调地址URL:
http://www.mobilepay.com/mobilePayCallBack。
二、对路由流程的举例说明:
应用调用能力过程中的路由包括两种:
其一是能力调用请求的路由过程,包括能力调用请求从应用到开放装置,再从开放装置到能力平台的过程。
其二是回调请求的路由过程,包括回调请求从能力平台到开放装置,再从开放装置到应用的过程。
其中,路由过程中用到的能力路由表是根据能力注册过程中配置的能力注册参数完成的,包括两张表:能力信息配置表和能力平台路由信息表。
其中,能力信息配置表中至少包括能力名称和能力平台ID,还可以包括开放装置接收能力平台的回调请求的URL地址、能力平台名称等,具体参见表1。
能力平台路由信息表中至少包括能力平台ID和能力平台的URL,具体参见表2。
表1
表2
能力平台ID | 能力平台URL |
900001 | http://www.smsPlatform.com |
800002 | http://www.mobilePay.com |
图6是能力调用请求的路由处理流程图。
如图6所示,该流程包括:
步骤601,应用将能力调用请求发送到开放装置。
步骤602,开放装置收到能力请求后,解析请求URL,并从中提取“能力名称”部分,并根据能力名称查询能力信息配置表,得到能力平台ID。
步骤603,开放装置根据能力平台ID查询能力平台路由信息表,得到能力平台的URL。
步骤604,开放装置将能力调用请求的请求URL替换成为能力平台URL。
步骤605,开放装置对能力调用请求的其他部分处理完毕后,将能力调用请求根据能力平台URL发送到能力平台。
其中,能力调用请求的路由消息示例如下:
能力调用请求从应用发到开放装置的路由消息示例:
能力调用请求从开放装置发到能力平台的路由消息示例:
可见,将http://www.omp.com/services/mobilePay/pagePay中的www.omp.com/services替换成www.mobilePay.com,就得到了http://www.mobilePay.com/mobilePay/pagePay。
图7是回调请求的路由处理流程图。
图7适用于应用向能力平台发送一个需要异步处理的调用请求,能力平台在接收到调用请求后,需要通过一个回调请求返回给应用相应的处理结果。
如图7所示,该流程包括:
步骤701,应用发送一个需要异步处理的能力调用请求到开放装置,在这个能力调用请求消息中包含应用接收回调请求的URL。
其中,所述URL可以放在能力调用请求消息的Header或者Body中。
步骤702,开放装置在能力调用请求中加入Header:OMP_CallbackURL,并将开放装置接收该能力的回调请求的URL填入OMP_CallbackURL中,之后将能力调用请求路由至能力平台。
步骤703,能力平台解析能力调用请求,从Header或Body中解析出应用的回调URL;并从Header:OMP_CallbackURL中提取开放装置接收回调请求的URL。
步骤704,能力平台构造回调请求,并将应用的回调URL写入到Header:APP_CallbackURL,之后根据开放装置接收回调请求的URL将回调请求路由到开放装置。
步骤705,开放装置解析回调请求的Header:APP_CallbackURL,提取出应用接收回调请求的URL,并根据这个URL将回调请求发送到应用。
其中,回调请求的路由消息示例如下:
能力调用请求从应用发到开放装置的消息如下:
可见,应用发给开放装置的能力调用请求中携带有应用的回调地址:<callbackURL>http://app1.callback.com</callbackURL>
能力调用请求从开放装置发到能力平台的消息如下:
可见,开放装置在能力调用请求中加入了开放装置接收能力平台的回调请求的地址:OMP_CallbackURL:http://omp.chinamobile.com/callback/mobilePay。
回调请求从能力平台发送到开放装置的消息如下:
可见,能力平台将回调请求发到开放装置接收该能力平台的回调请求的地址http://www.omp.com/callback/mobilePay上,并且其中携带有应用的回调地址:APP_CallbackURL:http://app1.callback.com。
回调请求从开放装置发到应用的消息如下:
可见,开放装置根据应用的回调地址http://app1.callback.com/,将回调请求发给应用。
本发明中,开放装置的计费方式可以包括同步计费、异步计费和直接计费。
在同步计费方式下,能力调用请求为同步模式,即通过对应的响应即可判断调用是否成功。对应于同步计费方式,就是根据能力调用的响应来决定是否执行计费。
在异步计费方式下,能力调用请求为异步模式,即能力调用的结果不是通过响应,而是通过一个单独的回调请求通知应用。对应于异步计费方式,就是根据回调请求的状态来决定是否执行计费。
在直接计费方式下,无论能力调用是同步模式还是异步模式,只要开放装置接收到能力调用请求,无论结果是成功还是失败,都进行计费。
图8是同步计费方式下的业务流程图。
如图8所示,该流程包括:
步骤801,开发者的应用连接开放装置,调用其业务能力。
步骤802,开放装置的路由模块生成MsgID(用于开放装置内部模块间标识和识别相关联的消息),然后向事务处理模块触发计费的请求。
步骤803,事务处理模块进行批价,并向路由模块返回响应,在响应中通过needcnfm字段通知路由模块是否需要批价确认,在同步不计费模式下是需要的。
步骤804,为了关联能力平台向开放装置的回调请求,路由模块产生一个事务标识TransactionID。
其中,在同步计费模式下并不需要这个参数,本步骤仅为了统一处理机制。
步骤805,路由模块携带TransactionID向适配模块发出请求;不同的能力平台对应不同的适配模块,路由模块把请求路由到相应的适配模块。
步骤806,适配模块调用相关联的业务能力平台。
步骤807,适配模块向开放装置返回响应,并在响应中通过字段need_callback字段通知路由模块是否需要等待回调请求。
在同步计费模式下不需要等待回调请求,如果需要等待回调相应,则路由模块将响应前传给应用。
步骤808,开放装置的路由模块根据响应的状态向鉴权模块发送计费确认消息:如果成功发送计费确认消息;如果失败则撤销计费。
图9是异步计费方式下的业务流程图。
如图9所示,该流程包括:
步骤901,开发者的应用连接开放装置的路由模块,调用其业务能力。
步骤902,路由模块产生MsgID(用于开放装置内部模块间标识和识别相关联的消息),然后向事务处理模块触发计费的请求。
步骤903,事务处理模块进行批价。
步骤904,事务处理模块向路由模块返回响应,在响应中通过needcnfm字段通知路由模块是否需要批价确认,在异步计费模式下是需要的。
步骤905,为了关联能力平台向开发平台的结果通知,路由模块产生一个标识TransactionID.
步骤906,路由模块携带TransactionID向适配模块发出请求;不同的能力平台对应不同的适配模块,路由模块把请求路由到相应的适配模块。
步骤907,适配模块调用相关联的业务能力平台。
步骤908,适配模块向开放装置返回响应,并在响应中通过字段need_callback字段通知路由模块是否需要等待回调请求,在这种模式下需要等待回调请求;然后路由模块将响应前传给应用。
步骤909,适配模块通过开放装置的路由模块向应用返回回调信息。
步骤910,开放装置的路由模块根据回调信息的结果向鉴权模块发送计费确认消息:如果成功发送计费确认消息;如果失败则撤销计费。
图10是直接计费方式下的业务流程图。
如图10所示,该流程包括:
步骤1001,开发者的应用连接开放装置的路由模块,调用其业务能力。
步骤1002,开放装置的路由模块产生MsgID,然后向事务处理模块触发计费的请求。
步骤1003,事务处理模块进行批价,并且向路由模块返回响应,在响应中通过needcnfm字段通知路由模块是否需要批价确认,在这种模式下是不需要的。
步骤1004,路由模块向适配模块发出能力调用请求。不同的能力平台对应不同的适配模块,路由模块把请求路由到相应的适配模块。
步骤1005,适配模块调用相关联的业务能力平台。
步骤1006,适配模块向开放装置返回响应,路由模块将响应前传给应用;
可见,本发明具有以下优点:
其一,对于第三方能力的接入,对于主流REST方式来提供服务的第三方能力提供商平台,提供可配置的能力接入机制,无需对第三方能力提供商平台进行改造;对于非主流REST方式提供服务的第三方能力提供商平台,可提供标准接入方式,由第三方能力提供商根据自身情况组织开发,能力接入的进度不会受限于平台运营方的开发资源,降低接入难度,提高第三方能力提供商对接入开放装置的积极性。
其二,对开发者调用应用的接入点进行统一,所有能力都通过开放装置来提供,用户只感知开放装置,且调用的URL统一,提升用户感知。
其三,采用直接对能力调用业务流进行调用和管理的架构,使所有的能力调用业务流都经由开放装置才可完成,这样可以随时监控调用请求和调用结果,防止第三方能力的计费欺诈。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (12)
1.一种用于提供第三方能力的***,其特征在于,该***包括开放装置和适配模块,所述开放装置包括接入模块、能力注册管理模块和路由模块;
所述适配模块,与第三方能力平台相连,将第三方能力平台的数据流适配成符合预定协议的数据流,与开放装置的接入模块相连,通过该接入模块,在开放装置和第三方能力平台之间传输数据流;
所述能力注册管理模块,用于接收第三方能力平台的能力注册参数;
所述路由模块,用于根据所述第三方能力平台的能力注册参数,生成能力路由表,根据应用的能力调用请求,查询能力路由表,将该能力调用请求路由到第三方能力平台;
该***还包括第三方能力平台;第三方能力平台的能力注册参数包括:开放装置接收该第三方能力平台的回调请求的URL;
开放装置接收应用发来的需要异步处理的能力调用请求,该能力调用请求中包含该应用接收回调请求的URL;
开放装置在接收的所述能力调用请求中,加入开放装置接收第三方能力平台的回调请求的URL,然后将能力调用请求路由至第三方能力平台;
第三方能力平台从接收的能力调用请求中解析出应用接收回调请求的URL、和开放装置接收该第三方能力平台的回调请求的URL,在回调请求中携带所述应用接收回调请求的URL,根据所述开放装置接收该第三方能力平台的回调请求的URL,将所述回调请求发给所述开放装置;
所述开放装置解析所述回调请求,得到应用接收回调请求的URL,根据应用接收回调请求的URL,将所述回调请求发给应用。
2.根据权利要求1所述的***,其特征在于,所述能力注册参数包括:能力名称和第三方能力平台的URL地址;所述能力调用请求中携带有能力名称,所述路由模块包括能力路由表维护模块和路由查询模块;
所述能力路由表维护模块,根据第三方能力平台的能力注册参数,为所述能力注册参数中的能力名称生成能力平台标识ID,将所述能力名称和所述能力平台ID的对应关系存储在能力信息配置表中,将所述能力平台ID和所述第三方能力平台的URL地址存储在能力平台路由信息表中;
所述路由查询模块,根据能力调用请求中携带的能力名称,查询能力信息配置表,得到该能力名称对应的能力平台ID,根据所述能力平台ID查询能力平台路由信息表,得到第三方能力平台的URL地址,将能力调用请求中携带的开放装置URL地址,替换成第三方能力平台的URL地址,将替换后的能力调用请求发给与所述第三方能力平台相连的适配模块;
所述适配模块,将所述替换后的能力调用请求发给所述第三方能力平台。
3.根据权利要求2所述的***,其特征在于,该***还包括第三方能力平台;所述能力注册参数还包括能力的各项操作名称;应用发来的能力调用请求中还携带有能力的操作名称;
第三方能力平台根据能力调用请求中携带的操作名称,执行能力的相应操作。
4.一种用于提供第三方能力的开放装置,其特征在于,该开放装置包括接入模块、能力注册管理模块和路由模块;
所述接入模块,用于与适配模块相连,通过该适配模块,与第三方能力平台交互数据流,接收应用的能力调用请求;
所述能力注册管理模块,用于接收第三方能力平台的能力注册参数;
所述路由模块,用于根据所述第三方能力平台的能力注册参数,生成能力路由表,根据所述能力调用请求,查询能力路由表,将该能力调用请求路由到第三方能力平台,其中,所述第三方能力平台通过所述适配模块接入到所述开放装置;
第三方能力平台的能力注册参数包括:开放装置接收该第三方能力平台的回调请求的URL;
路由查询模块,接收需要异步处理的能力调用请求,该能力调用请求中包含该应用接收回调请求的URL,在接收的所述能力调用请求中,加入开放装置接收第三方能力平台的回调请求的URL,然后将能力调用请求路由至第三方能力平台,接收该第三方能力平台根据所述开放装置接收该第三方能力平台的回调请求的URL返回的回调请求,解析所述回调请求,得到应用接收回调请求的URL,根据应用接收回调请求的URL,将所述回调请求发给应用。
5.根据权利要求4所述的开放装置,其特征在于,所述能力注册参数包括:能力名称和第三方能力平台的URL地址;所述能力调用请求中携带有能力名称,所述路由模块包括能力路由表维护模块和路由查询模块;
所述能力路由表维护模块,根据第三方能力平台的能力注册参数,为所述能力注册参数中的能力名称生成能力平台标识ID,将所述能力名称和所述能力平台ID的对应关系存储在能力信息配置表中,将所述能力平台ID和所述第三方能力平台的URL地址存储在能力平台路由信息表中;
所述路由查询模块,根据能力调用请求中携带的能力名称,查询能力信息配置表,得到该能力名称对应的能力平台ID,根据所述能力平台ID查询能力平台路由信息表,得到第三方能力平台的URL地址,向所述第三方能力平台发送能力调用请求。
6.根据权利要求5所述的开放装置,其特征在于,
所述路由查询模块,将能力调用请求中携带的开放装置URL地址,替换成第三方能力平台的URL地址,将替换后的能力调用请求发给与所述第三方能力平台相连的适配模块,通过所述适配模块,将所述替换后的能力调用请求发给所述第三方能力平台。
7.根据权利要求4所述的开放装置,其特征在于,该开放装置还包括事务处理模块;
所述路由模块,用于接收能力调用请求,向事务处理模块发送计费请求,通过解析批价响应确定是否需要计费确认,在需要计费确认时,接收到调用响应或回调请求后,向事务处理模块发送计费确认;
所述事务处理模块,用于接收计费请求,进行批价处理,向所述路由模块返回批价响应,在该批价响应中携带是否需要计费确认的字段,在需要计费确认时,接收到计费确认后,进行计费,在不需要计费确认时,根据批价处理结果直接计费。
8.根据权利要求7所述的开放装置,其特征在于,
所述事务处理模块,用于生成事务标识、事务状态标识和响应状态标识,在相应消息中携带事务标识、事务状态标识或响应状态标识。
9.一种提供第三方能力的方法,其特征在于,该方法包括:
开放装置接收应用的能力调用请求;
开放装置根据该能力调用请求,查询能力路由表;
开放装置根据能力路由表的查询结果,将该能力调用请求路由到第三方能力平台;
其中,所述能力路由表由开放装置根据第三方能力平台的能力注册参数生成;
第三方能力平台的能力注册参数包括:开放装置接收该第三方能力平台的回调请求的URL;该方法还包括:
开放装置接收应用发来的需要异步处理的能力调用请求,该能力调用请求中包含该应用接收回调请求的URL;
开放装置在接收的所述能力调用请求中,加入开放装置接收第三方能力平台的回调请求的URL,然后将能力调用请求路由至第三方能力平台;
第三方能力平台从接收的能力调用请求中解析出应用接收回调请求的URL、和开放装置接收该第三方能力平台的回调请求的URL,在回调请求中携带所述应用接收回调请求的URL,根据所述开放装置接收该第三方能力平台的回调请求的URL,将所述回调请求发给所述开放装置;
所述开放装置解析所述回调请求,得到应用接收回调请求的URL,根据应用接收回调请求的URL,将所述回调请求发给应用。
10.根据权利要求9所述的方法,其特征在于,所述能力注册参数包括:能力名称;所述能力调用请求中携带有能力名称;
所述生成能力路由表包括:
开放装置根据第三方能力平台的能力注册参数,为所述能力注册参数中的能力名称生成能力平台标识ID,将所述能力名称和所述能力平台ID的对应关系存储在能力信息配置表中,将所述能力平台ID和所述第三方能力平台的URL地址存储在能力平台路由信息表中;
所述查询能力路由表,将该能力调用请求路由到第三方能力平台包括:
开放装置根据能力调用请求中携带的能力名称,查询能力信息配置表,得到该能力名称对应的能力平台ID,根据所述能力平台ID查询能力平台路由信息表,得到第三方能力平台的URL地址,向所述第三方能力平台发送能力调用请求。
11.根据权利要求10所述的方法,其特征在于,所述向所述第三方能力平台发送能力调用请求包括:
开放装置将应用发来的能力调用请求中携带的开放装置URL地址,替换成第三方能力平台的URL地址,将替换后的能力调用请求发给与所述第三方能力平台相连的适配模块,通过所述适配模块,将所述替换后的能力调用请求发给所述第三方能力平台。
12.根据权利要求9所述的方法,其特征在于,所述能力注册参数还包括能力的各项操作名称;应用发来的能力调用请求中还携带有能力的操作名称;该方法还包括:
第三方能力平台根据能力调用请求中携带的操作名称,执行能力的相应操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110424265.0A CN103166936B (zh) | 2011-12-15 | 2011-12-15 | 一种用于提供第三方能力的***、开放装置和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110424265.0A CN103166936B (zh) | 2011-12-15 | 2011-12-15 | 一种用于提供第三方能力的***、开放装置和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103166936A CN103166936A (zh) | 2013-06-19 |
CN103166936B true CN103166936B (zh) | 2016-01-27 |
Family
ID=48589682
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110424265.0A Active CN103166936B (zh) | 2011-12-15 | 2011-12-15 | 一种用于提供第三方能力的***、开放装置和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103166936B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104808973A (zh) * | 2014-01-24 | 2015-07-29 | 阿里巴巴集团控股有限公司 | 截屏***和实现截屏的方法 |
CN104732331B (zh) | 2015-02-13 | 2017-04-12 | 腾讯科技(深圳)有限公司 | 分组管理方法、装置和*** |
CN112073925A (zh) | 2015-12-31 | 2020-12-11 | 华为技术有限公司 | 处理数据包的方法及装置 |
CN105930194A (zh) * | 2016-05-12 | 2016-09-07 | 中国联合网络通信集团有限公司 | 能力应用***及其能力应用方法 |
CN108156122B (zh) * | 2016-12-06 | 2021-08-13 | 中移(杭州)信息技术有限公司 | 能力开放平台的能力引入方法、***及设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1275292A (zh) * | 1998-08-10 | 2000-11-29 | 电话通有限公司 | 在网关和服务中心之间进行路由确定的方法和装置 |
CN101014045A (zh) * | 2007-02-02 | 2007-08-08 | 清华大学 | 服务承载网中服务管理的分布式方法 |
CN101014046A (zh) * | 2007-02-02 | 2007-08-08 | 清华大学 | 服务承载网中服务定位和服务质量路由的集成方法 |
CN102004777A (zh) * | 2010-11-19 | 2011-04-06 | 中国科学院软件研究所 | 一种可定制的Web信息集成方法及*** |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8620948B2 (en) * | 2010-02-18 | 2013-12-31 | Alon Atsmon | System and method for crowdsourced template based search |
-
2011
- 2011-12-15 CN CN201110424265.0A patent/CN103166936B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1275292A (zh) * | 1998-08-10 | 2000-11-29 | 电话通有限公司 | 在网关和服务中心之间进行路由确定的方法和装置 |
CN101014045A (zh) * | 2007-02-02 | 2007-08-08 | 清华大学 | 服务承载网中服务管理的分布式方法 |
CN101014046A (zh) * | 2007-02-02 | 2007-08-08 | 清华大学 | 服务承载网中服务定位和服务质量路由的集成方法 |
CN102004777A (zh) * | 2010-11-19 | 2011-04-06 | 中国科学院软件研究所 | 一种可定制的Web信息集成方法及*** |
Non-Patent Citations (1)
Title |
---|
基于移动网络的聚合应用的研究与设计;高超;《中国优秀硕士学位论文全文数据库 信息科技辑(2010年)》;20100415(第04期);正文第3.10.2节、第3.1-3.9节、第3.10.2-3.10.3节、第4.2-4.2.4节、图3-1、图3-2、图4-1 * |
Also Published As
Publication number | Publication date |
---|---|
CN103166936A (zh) | 2013-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7882245B2 (en) | Presence service access device, presence service system and method for publishing and acquiring presence information | |
CA2561985C (en) | Service broker integration layer for supporting telecommunication client service requests | |
RU2388179C2 (ru) | Система мультимедийных сообщений и способ отправки мультимедийных сообщений | |
JP5144541B2 (ja) | 携帯放送システムにおけるサービスガイド又はサービスガイドフラグメントを要請する方法及びシステム | |
RU2411696C2 (ru) | Способ и система для подписывания коротких сообщений и устройство обработки коротких сообщений | |
CN103166936B (zh) | 一种用于提供第三方能力的***、开放装置和方法 | |
US20050277407A1 (en) | Method and device for providing mobile services with virtual number | |
CN100430920C (zh) | 代理内容服务器、互联网业务供应***和访问内容服务器的方法 | |
US20090144167A1 (en) | System and method for managing data and voice connectivity for wireless devices | |
CN102695167A (zh) | 移动用户身份标识管理方法和装置 | |
WO2017107653A1 (zh) | 移动支付方法、相关装置及*** | |
CN1968090B (zh) | 实现数据业务服务中心获得用户终端鉴权信息的方法及*** | |
KR101867576B1 (ko) | LoRaWAN 네트워크 서버와 oneM2M 플랫폼 연동 시스템 및 방법 | |
CN101848441B (zh) | 可疑短信暂缓发送方法、装置、以及*** | |
CN111866781B (zh) | 基于区块链的漫游结算方法及漫游结算节点 | |
CN109309907A (zh) | 用于流量计费的方法、装置及其相关设备 | |
RU2532875C2 (ru) | Способ, устройство и система представления услуги | |
JP2010206341A (ja) | 通信方法、通信システム、サービス提供基盤アクセス方法 | |
CN101835130A (zh) | 通过移动通信网络认证与授权互联网通信的***和方法 | |
CN104104662B (zh) | 一种处理会话业务连接的方法和装置 | |
CN113726731A (zh) | 基于tcp实现终端app与服务器实时通讯的方法与*** | |
KR101435475B1 (ko) | 청구서 서비스 시스템 및 방법 | |
CN102413454B (zh) | 一种数据传输的方法及aog*** | |
KR100773788B1 (ko) | 선불 사용자를 위한 유무선 연동 서비스 통합인증 방법,시스템 및 서버 | |
CN101489100A (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 |