CN103685421B - 跨数据源的数据提交***、装置及方法 - Google Patents
跨数据源的数据提交***、装置及方法 Download PDFInfo
- Publication number
- CN103685421B CN103685421B CN201210357151.3A CN201210357151A CN103685421B CN 103685421 B CN103685421 B CN 103685421B CN 201210357151 A CN201210357151 A CN 201210357151A CN 103685421 B CN103685421 B CN 103685421B
- Authority
- CN
- China
- Prior art keywords
- service platform
- data
- open service
- server
- user
- 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
- Information Transfer Between Computers (AREA)
Abstract
本发明提出了一种跨数据源的数据提交***,包括:客户端,用于向服务器发送数据发布消息;服务器,用于根据目标信息从多个开放服务平台中选择目标服务平台,并根据数据发布消息中的动作字段将内容信息在目标服务平台中发布,以及在满足预设条件之后将内容信息提交至多个开放服务平台中的至少部分开放服务平台;多个开放服务平台,多个开放服务平台中的每一个开放服务平台用于提供数据发布服务。本发明还提出了一种服务器、客户端、跨数据源的数据提交方法。本发明利用云服务器进行自动排序、比较、拼装等计算任务,实现了应对用户各种需要的智能转发功能,节省了用户的时间,提高了用户体验。
Description
技术领域
本发明涉及互联网云服务平台技术领域,特别涉及一种跨数据源的数据提交***、服务器、客户端及方法。
背景技术
随着互联网的发展,云服务平台的应用越来越普及。目前云服务平台的开放API接口(Application Programming Interface,应用程序编程接口),普遍是采用Rest风格设计,根据用户请求的一个URL(Uniform/Universal Resource Locator,统一资源定位符),来实现用户信息的发布。现在,越来越多的用户使用不止一个社交网络,但是在现有技术中,各社交网络的api接口并不具备自动转发等功能。如果用户想进行转发消息时,则只能自己手动转发。
发明内容
本发明的目的旨在至少解决所述技术缺陷之一。
为此,本发明的第一个目的在于提出一种跨数据源的数据提交***,利用云服务器进行自动排序、比较、拼装等计算任务,实现了应对用户各种需要的智能转发功能,节省了用户的时间,提高了用户体验。本发明的第二个目的在于提出一种服务器。本发明的第三个目的在于提出一种客户端。本发明的第四个目的在于提出一种跨数据源的数据提交方法。
为达到上述目的,本发明第一方面的实施例公开了一种跨数据源的数据提交***,包括:客户端、服务器和多个开放服务平台,其中,所述多个开放服务平台,所述多个开放服务平台中的每一个开放服务平台用于提供数据发布服务;所述客户端,用于向所述服务器发送数据发布消息,所述数据发布消息包括动作字段、内容信息、目标信息和用户的身份信息;所述服务器,用于根据所述目标信息从所述多个开放服务平台中选择目标服务平台,并根据所述数据发布消息中的动作字段将所述内容信息在所述目标服务平台中发布,以及在满足预设条件之后,将所述内容信息提交至所述多个开放服务平台中的至少部分开放服务平台。
根据本发明实施例的跨数据源的数据提交***,利用云服务器进行自动排序、比较、拼装等计算任务,实现了应对用户各种需要的智能转发功能,节省了用户的时间,提高了用户体验。
在本发明的一个实施例中,所述服务器根据所述用户的身份信息获得所述至少部分开放服务平台中每个所对应的令牌和查询参数,并根据所述令牌和查询参数从所述至少部分开放服务平台获得所述数据。
在本发明的一个实施例中,所述令牌包括私人令牌或公共令牌。
在本发明的一个实施例中,所述数据发布消息还包括发布条件,所述预设条件根据所述发布条件设置。
在本发明的一个实施例中,所述发布条件为在经过预设时间之后,所述服务器将所述内容信息提交至所述多个开放服务平台中的至少部分开放服务平台。
在本发明的一个实施例中,所述发布条件为在所述目标服务平台中对所述发布的内容信息回复数量,但所述回复数量达到阈值时,所述服务器将所述内容信息提交至所述多个开放服务平台中的至少部分开放服务平台。
在本发明的一个实施例中,所述至少部分开放服务平台由所述客户端在所述数据发布消息中指定。
在本发明的一个实施例中,所述客户端还用于向所述服务器发送抓取目标,所述服务器在所述抓取目标的内容更新之后,将所述抓取目标的更新内容发布至所述用户的至少一个开放服务平台。
本发明第二方面的实施例公开了一种服务器,包括:数据管理模块,用于接收客户端发送的数据发布消息,其中,所述数据发布消息包括动作字段、内容信息、目标信息和用户的身份信息;解析模块,用于对所述数据发布消息中的目标信息进行解析,以从多个开放服务平台中选择目标服务平台;发布模块,用于根据所述数据发布消息中的动作字段将所述内容信息在所述目标服务平台中发布,以及在满足预设条件之后,将所述内容信息提交至所述多个开放服务平台中的至少部分开放服务平台。
根据本发明实施例的服务器,利用云服务器进行自动排序、比较、拼装等计算任务,实现了应对用户各种需要的智能转发功能,节省了用户的时间,提高了用户体验。
在本发明的一个实施例中,所述服务器还包括:数据获取模块,用于根据所述用户的身份信息获取所述用户的身份信息获得所述至少部分开放服务平台中每个所对应的令牌和查询参数,并根据所述令牌和查询参数从所述至少部分开放服务平台获得所述数据。
在本发明的一个实施例中,所述令牌包括私人令牌或公共令牌。
在本发明的一个实施例中,所述数据发布消息还包括发布条件,所述预设条件根据所述发布条件设置。
在本发明的一个实施例中,所述发布条件为在经过预设时间之后,所述服务器将所述内容信息提交至所述多个开放服务平台中的至少部分开放服务平台。
在本发明的一个实施例中,所述发布条件为在所述目标服务平台中对所述发布的内容信息回复数量,但所述回复数量达到阈值时,所述服务器将所述内容信息提交至所述多个开放服务平台中的至少部分开放服务平台。
在本发明的一个实施例中,所述数据管理模块还用于接收客户端发送的抓取目标,在所述抓取目标的内容更新之后,所述发布模块将将所述抓取目标的更新内容发布至所述用户的至少一个开放服务平台。
本发明第三方面的实施例公开了一种客户端,包括:发送模块,用于向服务器发送器发送数据发布消息,所述数据发布消息包括动作字段、内容信息、目标信息和用户的身份信息;接收模块,用于从所述服务器接收所述服务器根据所述数据请求消息返回的数据。
根据本发明实施例的客户端,可以提交数据发布请求使云服务器进行自动排序、比较、拼装等计算任务,实现了应对用户各种需要的智能转发功能,节省了用户的时间,提高了用户体验。
在本发明的一个实施例中,所述发送模块在所述数据发布消息中指定所述至少部分开放服务平台。
在本发明的一个实施例中,所述发送模块还用于向所述服务器发送抓取目标,所述服务器在所述抓取目标的内容更新之后,将所述抓取目标的更新内容发布至所述用户的至少一个开放服务平台。
本发明第四方面实施例公开了一种跨数据源的数据提交方法,包括以下步骤:接收客户端发送的数据发布消息,其中,所述数据发布消息包括动作字段和用户的身份信息;根据所述数据获取指令的目标信息从所述多个开放服务平台中选择至少部分开放服务平台;根据所述数据发布消息中的动作字段将所述内容信息在所述目标服务平台中发布;在满足预设条件之后,将所述内容信息提交至所述多个开放服务平台中的至少部分开放服务平台。
根据本发明实施例的跨数据源的数据提交方法,利用云服务器进行自动排序、比较、拼装等计算任务,实现了应对用户各种需要的智能转发功能,节省了用户的时间,提高了用户体验。
在本发明的一个实施例中,所述根据所述数据获取指令的目标信息从所述多个开放服务平台中选择至少部分开放服务平台进一步包括:根据所述用户的身份信息获得所述至少部分开放服务平台中每个所对应的令牌和查询参数;根据所述令牌和查询参数从所述至少部分开放服务平台获得所述数据。
在本发明的一个实施例中,所述令牌包括私人令牌或公共令牌。
在本发明的一个实施例中,所述数据发布消息还包括发布条件,所述预设条件根据所述发布条件设置。
在本发明的一个实施例中,所述发布条件为在经过预设时间之后,所述服务器将所述内容信息提交至所述多个开放服务平台中的至少部分开放服务平台。
在本发明的一个实施例中,所述发布条件为在所述目标服务平台中对所述发布的内容信息回复数量,但所述回复数量达到阈值时,所述服务器将所述内容信息提交至所述多个开放服务平台中的至少部分开放服务平台。
在本发明的一个实施例中,所述至少部分开放服务平台由所述客户端在所述数据发布消息中指定。
在本发明的一个实施例中,所述客户端还用于向所述服务器发送抓取目标,所述服务器在所述抓取目标的内容更新之后,将所述抓取目标的更新内容发布至所述用户的至少一个开放服务平台。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明所述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为根据本发明实施例的跨数据源的数据提交***的示意图;
图2为根据本发明一个实施例的跨数据源的数据提交***的数据流向示意图;
图3为根据本发明实施例的服务器的示意图;
图4为根据本发明实施例的客户端的示意图;
图5为根据本发明一个实施例的跨数据源的数据提交方法的流程图;以及
图6为根据本发明另一个实施例的跨数据源的数据提交方法的流程图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
如图1所示,本发明第一方面实施例的跨数据源的数据提交***包括:客户端101、服务器102和多个开放服务平台103。
具体地,客户端101用于向服务器102发送数据发布消息,数据发布消息包括动作字段、内容信息、目标信息和用户的身份信息。服务器102用于对根据目标信息从多个开放服务平台103中选择目标服务平台103,并根据数据发布消息中的动作字段将内容信息在目标服务平台103中发布,以及在满足预设条件之后,将内容信息提交至多个开放服务平台中的至少部分开放服务平台103。多个开放服务平台103中的每一个开放服务平台用于提供数据发布服务。在本发明的一个实施例中,与服务器102相连的会有多个开放服务平台(API)103,但是服务器每次根据客户端101的需求可能会仅从多个开放服务平台中选择一部分开放服务平台,例如服务器102对于需要查询的开放服务平台进行功能筛选,例如,只选其中用户关注的renren和sina,腾讯微博,但是不要开心网的信息。
在本发明的一个实施例中,服务器102根据用户的身份信息获得至少部分开放服务平台103中每个所对应的令牌(token)和查询(query)参数,并根据令牌和查询参数从至少部分开放服务平台103获得数据。其中,令牌包括私人令牌或公共令牌。
根据本发明实施例的跨数据源的数据提交***,可以针对各类现有的api接口,比如人人网api,新浪微博api,腾讯微博api,将各不同api框架的数据平台分别作为独立的数据源进行管理,进行query和submit(提交),同时将query结果进行合并等操作。
在本发明的一个实施例中,服务器102接收数据消息后,按照动作字段user,选择SNS(Social Network Site,社交网站)等用户关系类开放服务平台103的api,将id转换为各个平台对应的token和query参数,将数据请求的结果按照语义进行拼装、整合,完成在对应开放服务平台103的发布之后,向客户端101返回,具体如下:
数据发布url为:
http://api.***.com/user?id=123&action=submit_msg&msg=hello&plat=renren,sina
如上述url所示,在数据发布请求中包括了user字段、action字段、plat字段。各字段配置如下:
user字段配置:
api框架对user进行配置,对于每个user分配一个id
Api框架提供id对应的平台关系表,该表记录了该user对于所有授权过的平台的token和授权信息以及那些平台可以推送等信息,user可以指的是一个用户,也可以是一个组织,由开发者进行注册,授权一次后由api框架进行维护。
action字段配置:
action字段可以由开发者进行添加,默认支持提交文字类submit_msg,社交分享转发类submit_share,提交图片类submit_photo等所有已知提交类操作。
plat字段配置:
plat字段支持对所有想转发的平台的定制,如用户a关联了renren,weibo,qq 3个平台,只想发布到renren和sina,则写成plat=renren,sina。如果不填该字段,则采用该用户的默认设置,例如向该用户关联的所有平台发送信息。
本实施例中,当数据发布url为:
http://api.***.com/user?id=123&action=submit_msg&msg=hello&plat=renren,sina时,***按照目标信息字段plat,请求renren和sina微博开放平台返回的结果为:
renren平台api返回:
Sinaweibo平台api返回:
{
errNo:-1
}
将结果进行合并,得到:
在进行上述合并过程时,默认设置下,应保留合并前的结果的全部内容,只进行拼装操作。合并结果统一为json格式标准,便于各开放平台及客户端读取。
使用本***提供的api框架,可以实现同时提交或者推送服务,比如用户a在Sinaweibo api发布的数据希望可以实时或异步发送到多个平台,则***会自动提交该信息到renren,qq等平台。
本发明实施例为上一实施例的变型,用户需要更加详细的设置,于是可在发布请求url中加入提交内容(source)字段和限制(limit)字段,此时数据发布url变为:
http://api.***.com/user?id=123&action=submit_msg&source={plat:renren,id:456}&limit={wait:10,replayNum:10}&plat=qq,sina
其中,source字段配置:
source标识需要异步同步消息的id,比如设置为上述url中renren平台的456。这时***会在满足limit条件时将renren中id为456的消息同步到qq,sina(依据plat字段控制)。配置后,使用本***提供的api框架,可以实现异步同步服务,比如用户a希望自己在sinaweibo发布的数据可以在2小时后将该信息和该信息的回复都同步到qqweibo,或者在2小时后向周边其他平台进行同步。需要理解的是,上述2小时的时间长度只是为了便于说明,而不应理解为对本发明的限制。
limit字段配置:
上述url中定义的limit={wait:10,replayNum:10},表示等待10分钟且回复达到10个后在进行消息提交,limit字段中的限制条件可以任意增加配置,***会从第一个条件依次进行判断,只有都满足时才会发出,默认的超时时间为24小时,用户可以在limit增加timeout字段进行自定义(默认单位为分钟)。配置后,使用本***提供的api框架,可以实现智能提交服务,例如用户a希望自己在sinaweibo提交的信息,当回复人超过10人时才被认为是一条需要同步转发的信息,此时才同步到其他平台。
在等待10分钟,且回复人超过10人时,上述url对应的各开放平台的返回值变为:
qq平台api返回:
sina平台api返回:
合并结果:
收到结果后,api回调用户信息处理的钩子函数通知用户发布成功。
在本发明的一个实施例中,用户a希望实现关注另一用户b,当用户b的微博发出新消息的时候同步到用户a自己的微博上,在实际应用中,可以通过设置抓取目标字段来实现这一功能。此时,数据发布url为:
http://api.***.com/user?id=123&action=submit_msg&source={user:b,id:234}&plat=qq,sina
其中plat字段表示用户希望同步到的开放平台,source字段表示b和b在框架中的id:234,
设置成功后返回结果为:
{
errNo:0
}
每当b有新微博发出时,框架回调每次同步的结果为:
在该情况下,同样可以添加limit字段来控制b的微博延迟预设时间后进行转发。
根据本发明实施例的跨数据源的数据提交***,利用云服务器进行自动排序、比较、拼装等计算任务,实现了应对用户各种需要的智能转发功能,节省了用户的时间,提高了用户体验。
如图3所示,本发明第二方面实施例的服务器,包括:数据管理模块301、解析模块302和发布模块303。
数据管理模块301用于接收客户端发送的数据发布消息,其中,数据发布消息包括动作字段和用户的身份信息。解析模块302用于对数据发布消息中的目标信息进行解析,以从多个开放服务平台中选择目标服务平台,其中解析方法可包括语义解析等方法。发布模块303用于根据数据发布消息中的动作字段将内容信息在目标服务平台中发布,以及在满足预设条件之后,将内容信息提交至多个开放服务平台中的至少部分开放服务平台。
在本发明的一个实施例中,还包括数据获取模块304。数据管理模块301接收来自客户端的数据发布url为:
http://api.***.com/user?id=123&action=submit_msg&msg=hello&plat=renren,sina,其中,用户身份信息字段为user,动作字段为action,解析模块302将目标信息字段plat解析为人人网和新浪微博,数据获取模块304选择SNS(Social NetworkSite,社交网站)等用户关系类开放服务平台的api,将id转换为各个平台对应的令牌和查询参数,之后由发布模块303根据数据发布消息中的动作字段将内容信息在目标服务平台中发布,以及在满足预设条件之后,将内容信息提交至多个开放服务平台中的至少部分开放服务平台。具体执行结果如下:
renren平台api返回:
Sina weibo平台api返回:
{
errNo:-1
}
将结果进行合并,得到:
在进行上述合并过程时,默认设置下,应保留合并前的结果的全部内容,只进行拼装操作。合并结果统一为json格式标准,便于各开放平台及客户端读取。
使用本***提供的api框架,可以实现同时提交或者推送服务,比如用户a在Sinaweibo api发布的数据希望可以实时或异步发送到多个平台,则***会自动提交该信息到renren,qq等平台。
本发明实施例为上一实施例的变型,用户需要更加详细的设置,于是可在发布请求url中加入提交内容(source)字段和限制(limit)字段,此时数据发布url变为:
http://api.***.com/user?id=123&action=submit_msg&source={plat:renren,id:456}&limit={wait:10,replayNum:10}&plat=qq,sina
其中,source字段配置:
source标识需要异步同步消息的id,比如设置为上述url中renren平台的456。这时***会在满足limit条件时将renren中id为456的消息同步到qq,sina(依据plat字段控制)。配置后,使用本***提供的api框架,可以实现异步同步服务,比如用户a在sinaweibo发布的数据可以由发布模块303在2小时后将该信息和该信息的回复都同步到qqweibo,或者在2小时后向周边其他平台进行同步。需要理解的是,上述2小时的时间长度只是为了便于说明,而不应理解为对本发明的限制。
limit字段配置:
上述url中定义的limit={wait:10,replayNum:10},表示等待10分钟且回复达到10个后在进行消息提交,limit字段中的限制条件可以任意增加配置,***会从第一个条件依次进行判断,只有都满足时才会发出,默认的超时时间为24小时,用户可以在limit增加timeout字段进行自定义(默认单位为分钟)。配置后,使用本***提供的api框架,可以实现智能提交服务,例如用户a希望自己在sinaweibo提交的信息,当回复人超过10人时才被认为是一条需要同步转发的信息,此时发布模块303才将该消息同步到其他平台。
在等待10分钟,且回复人超过10人时,上述url对应的各开放平台的返回值变为:
qq平台api返回:
sina平台api返回:
合并结果:
收到结果后,api回调用户信息处理的钩子函数通知用户发布成功。
在本发明的一个实施例中,用户a希望实现关注另一用户b,当用户b的微博发出新消息的时候,同步到用户a自己的微博上,在实际应用中,可以通过设置抓取目标字段后,由发布模块303来实现这一功能。此时,数据发布url为:
http://api.***.com/user?id=123&action=submit_msg&source={user:b,id:234}&plat=qq,sina
其中plat字段表示用户希望同步到的开放平台,source字段表示b和b在框架中的id:234,
设置成功后返回结果为:
{
errNo:0
}
每当b有新微博发出时,框架回调每次同步的结果为:
在该情况下,同样可以添加limit字段来控制b的微博延迟预设时间后进行转发。
根据本发明实施例的服务器,利用云服务器进行自动排序、比较、拼装等计算任务,实现了应对用户各种需要的智能转发功能,节省了用户的时间,提高了用户体验。
如图4所示,本发明第三方面的实施例的客户端包括:发送模块401和接收模块402。发送模块401用于向服务器发送器发送数据发布消息,其中数据发布消息包括动作字段、内容信息、目标信息和用户的身份信息。接收模块402用于从服务器接收服务器根据数据发布消息返回的数据。
在本发明的一个实施例中,发送模块发送的数据发布url为:http://api.***.com/user?id=123&action=submit_msg&msg=hello&plat=renren,sina,在该数据发布url中指定的部分开放服务平台为renren,sina微博。
发送模块还用于向服务器发送抓取目标,服务器在抓取目标的内容更新之后,将抓取目标的更新内容发布至所述用户的至少一个开放服务平台。具体实施例如下:
用户a希望实现关注另一用户b,当用户b的微博发出新消息的时候同步到用户a自己的微博上,在实际应用中,可以通过设置抓取目标字段来实现这一功能。此时,数据发布url为:
http://api.***.com/user?id=123&action=submit_msg&source={user:b,id:234}&plat=qq,sina
其中plat字段表示用户希望同步到的开放平台,source字段表示b和b在框架中的id:234,
设置成功后返回结果为:
{
errNo:0
}
每当b有新微博发出时,框架回调每次同步的结果为:
根据本发明实施例的客户端,可以提交数据请求使云服务器进行自动排序、比较、拼装等计算任务,实现了应对用户各种需要的智能转发功能,节省了用户的时间,提高了用户体验。
如图5所示,本发明第四方面实施例的跨数据源的数据提交方法,包括以下步骤:
S501:接收客户端发送的数据发布消息,其中,所述数据发布消息包括动作字段和用户的身份信息。
S502:根据数据发布消息中的目标信息从多个开放服务平台中选择目标服务平台。
S503:根据数据发布消息中的动作字段将内容信息在目标服务平台中发布。
S504:在满足预设条件之后,将内容信息提交至多个开放服务平台中的至少部分开放服务平台。
根据本发明实施例的跨数据源的数据提交方法,可以针对各类现有的api接口,比如人人网api,新浪微博api,腾讯微博api,将各不同api框架的数据平台分别作为独立的数据源进行管理,进行query和submit(提交),同时将query结果进行合并等操作。
在本发明的一个实施例中,服务器接收数据消息后,按照动作字段user,选择SNS(Social Network Site,社交网站)等用户关系类开放服务平台的api,将id转换为各个平台对应的令牌(token)和查询(query)参数,将数据请求的结果按照语义进行拼装、整合,向客户端返回,其中令牌包括私人令牌或公共令牌。具体如下:
数据请求url为:
http://api.***.com/user?id=123&action=submit_msg&msg=hello&plat=renren,sina时,***按照目标信息字段plat,请求renren和sina微博开放平台返回的结果为:
renren平台api返回:
Sinaweibo平台api返回:
{
errNo:-1
}
对结果进行合并,得到:
在进行上述合并过程时,默认设置下,应保留合并前的结果的全部内容,只进行拼装操作。合并结果统一为json格式标准,便于各开放平台及客户端读取。
使用本***提供的api框架,可以实现同时提交或者推送服务,比如用户a在Sinaweibo api发布的数据希望可以实时或异步发送到多个平台,则***会自动提交该信息到renren,qq等平台。
本发明实施例为上一实施例的变型,用户需要更加详细的设置,于是可在发布请求url中加入提交内容(source)字段和限制(limit)字段,此时数据发布url变为:
http://api.***.com/user?id=123&action=submit_msg&source={plat:renren,id:456}&limit={wait:10,replayNum:10}&plat=qq,sina
其中,source字段配置:
source标识需要异步同步消息的id,比如设置为上述url中renren平台的456。这时***会在满足limit条件时将renren中id为456的消息同步到qq,sina(依据plat字段控制)。配置后,使用本***提供的api框架,可以实现异步同步服务,比如用户a希望自己在sinaweibo发布的数据可以在2小时后将该信息和该信息的回复都同步到qqweibo,或者在2小时后向周边其他平台进行同步。需要理解的是,上述2小时的时间长度只是为了便于说明,而不应理解为对本发明的限制。
limit字段配置:
上述url中定义的limit={wait:10,replayNum:10},表示等待10分钟且回复达到10个后在进行消息提交,limit字段中的限制条件可以任意增加配置,***会从第一个条件依次进行判断,只有都满足时才会发出,默认的超时时间为24小时,用户可以在limit增加timeout字段进行自定义(默认单位为分钟)。配置后,使用本***提供的api框架,可以实现智能提交服务,例如用户a希望自己在sinaweibo提交的信息,当回复人超过10人时才被认为是一条需要同步转发的信息,此时才同步到其他平台。
在等待10分钟,且回复人超过10人时,上述url对应的各开放平台的返回值变为:
qq平台api返回:
sina平台api返回:
合并结果:
收到结果后,api回调用户信息处理的钩子函数通知用户发布成功。
在本发明的一个实施例中,用户a希望实现关注另一用户b,当用户b的微博发出新消息的时候同步到用户a自己的微博上,在实际应用中,可以通过设置抓取目标字段来实现这一功能。此时,数据发布url为:
http://api.***.com/user?id=123&action=submit_msg&source={user:b,id:234}&plat=qq,sina
其中plat字段表示用户希望同步到的开放平台,source字段表示用户b和b在框架中的id:234,
设置成功后返回结果为:
{
errNo:0
}
每当用户b有新微博信息发出时,框架回调每次同步的结果为:
在该情况下,同样可以添加limit字段来控制用户b的微博延迟预设时间后,转发到用户a的微博上。
在本发明的一个实施例中,数据发布请求中包括提交内容字段和限制字段,跨数据源的数据提交方法的流程如图6所示:
S601:根据用户需要在数据请求中组合请求参数,在动作字段之外,还可选择性加入提交内容字段和限制字段。提交内容字段、限制字段应根据用户需求而定义。
S602:对数据请求进行语义分析,根据动作字段,按照筛选规则从所有api库中选出api库。
S603:提交到轮询控制器,向客户端返回提交成功的信息。
S604:轮询控制器控制向多api提交数据,。
S605:判断是否所有提交已经成功完成,如果是,执行S605;如果尚未全部完成,重新执行S604。
S606:将转发已全部提交完成的信息返回给客户端。
根据本发明实施例的跨数据源的数据提交方法,利用云服务器进行自动排序、比较、拼装等计算任务,实现了应对用户各种需要的智能转发功能,节省了用户的时间,提高了用户体验。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行***、装置或设备(如基于计算机的***、包括处理器的***或其他可以从指令执行***、装置或设备取指令并执行指令的***)使用,或结合这些指令执行***、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行***、装置或设备或结合这些指令执行***、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行***执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对所述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。在本发明中,术语“多个”是指两个或两个以上。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同限定。
Claims (14)
1.一种跨数据源的数据提交***,其特征在于,包括客户端、服务器和多个开放服务平台,其中,
所述多个开放服务平台,所述多个开放服务平台中的每一个开放服务平台用于提供数据发布服务;
所述客户端,用于向所述服务器发送数据发布消息,所述数据发布消息包括动作字段、内容信息、目标信息和用户的身份信息;
所述服务器,用于根据所述目标信息从所述多个开放服务平台中选择目标服务平台,并根据所述数据发布消息中的动作字段将所述内容信息在所述目标服务平台中发布,以及在满足预设条件之后,将所述内容信息提交至所述多个开放服务平台中的至少部分开放服务平台,其中,
所述数据发布消息还包括发布条件,所述预设条件根据所述发布条件设置,所述发布条件为在经过预设时间之后,所述服务器将所述内容信息提交至所述多个开放服务平台中的至少部分开放服务平台,或者,
所述发布条件为在所述目标服务平台中对所述发布的内容信息回复数量,当所述回复数量达到阈值时,所述服务器将所述内容信息提交至所述多个开放服务平台中的至少部分开放服务平台。
2.如权利要求1所述的跨数据源的数据提交***,其特征在于,所述服务器根据所述用户的身份信息获得所述至少部分开放服务平台中每个所对应的令牌和查询参数,并根据所述令牌和查询参数从所述至少部分开放服务平台获得所述数据。
3.如权利要求2所述的跨数据源的数据提交***,其特征在于,所述令牌包括私人令牌或公共令牌。
4.如权利要求1所述的跨数据源的数据提交***,其特征在于,所述至少部分开放服务平台由所述客户端在所述数据发布消息中指定。
5.如权利要求1所述的跨数据源的数据提交***,其特征在于,所述客户端还用于向所述服务器发送抓取目标,所述服务器在所述抓取目标的内容更新之后,将所述抓取目标的更新内容发布至所述用户的至少一个开放服务平台。
6.一种服务器,其特征在于,包括:
数据管理模块,用于接收客户端发送的数据发布消息,其中,所述数据发布消息包括动作字段、内容信息、目标信息和用户的身份信息;
解析模块,用于对所述数据发布消息中的目标信息进行解析,以从多个开放服务平台中选择目标服务平台;以及
发布模块,用于根据所述数据发布消息中的动作字段将所述内容信息在所述目标服务平台中发布,以及在满足预设条件之后,将所述内容信息提交至所述多个开放服务平台中的至少部分开放服务平台,其中,
所述数据发布消息还包括发布条件,所述预设条件根据所述发布条件设置,所述发布条件为在经过预设时间之后,所述服务器将所述内容信息提交至所述多个开放服务平台中的至少部分开放服务平台,或者,
所述发布条件为在所述目标服务平台中对所述发布的内容信息回复数量,当所述回复数量达到阈值时,所述服务器将所述内容信息提交至所述多个开放服务平台中的至少部分开放服务平台。
7.如权利要求6所述的服务器,其特征在于,还包括:数据获取模块,用于根据所述用户的身份信息获取所述用户的身份信息获得所述至少部分开放服务平台中每个所对应的令牌和查询参数,并根据所述令牌和查询参数从所述至少部分开放服务平台获得所述数据。
8.如权利要求7所述的服务器,其特征在于,所述令牌包括私人令牌或公共令牌。
9.如权利要求6所述的服务器,其特征在于,所述数据管理模块还用于接收客户端发送的抓取目标,在所述抓取目标的内容更新之后,所述发布模块将将所述抓取目标的更新内容发布至所述用户的至少一个开放服务平台。
10.一种跨数据源的数据提交方法,其特征在于,包括:
接收客户端发送的数据发布消息,其中,所述数据发布消息包括动作字段和用户的身份信息;
根据数据获取指令的目标信息从所述多个开放服务平台中选择至少部分开放服务平台;
根据所述数据发布消息中的动作字段将所述内容信息在所述目标服务平台中发布;以及
在满足预设条件之后,将所述内容信息提交至所述多个开放服务平台中的至少部分开放服务平台,其中,
所述数据发布消息还包括发布条件,所述预设条件根据所述发布条件设置,所述发布条件为在经过预设时间之后,所述服务器将所述内容信息提交至所述多个开放服务平台中的至少部分开放服务平台,或者,
所述发布条件为在所述目标服务平台中对所述发布的内容信息回复数量,当所述回复数量达到阈值时,所述服务器将所述内容信息提交至所述多个开放服务平台中的至少部分开放服务平台。
11.如权利要求10所述的跨数据源的数据提交方法,其特征在于,所述根据所述数据获取指令的目标信息从所述多个开放服务平台中选择至少部分开放服务平台进一步包括:
根据所述用户的身份信息获得所述至少部分开放服务平台中每个所对应的令牌和查询参数;以及
根据所述令牌和查询参数从所述至少部分开放服务平台获得所述数据。
12.如权利要求11所述的跨数据源的数据提交方法,其特征在于,所述令牌包括私人令牌或公共令牌。
13.如权利要求10所述的跨数据源的数据提交方法,其特征在于,所述至少部分开放服务平台由所述客户端在所述数据发布消息中指定。
14.如权利要求10所述的跨数据源的数据提交方法,其特征在于,所述客户端还用于向所述服务器发送抓取目标,所述服务器在所述抓取目标的内容更新之后,将所述抓取目标的更新内容发布至所述用户的至少一个开放服务平台。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210357151.3A CN103685421B (zh) | 2012-09-21 | 2012-09-21 | 跨数据源的数据提交***、装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210357151.3A CN103685421B (zh) | 2012-09-21 | 2012-09-21 | 跨数据源的数据提交***、装置及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103685421A CN103685421A (zh) | 2014-03-26 |
CN103685421B true CN103685421B (zh) | 2017-06-20 |
Family
ID=50321717
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210357151.3A Active CN103685421B (zh) | 2012-09-21 | 2012-09-21 | 跨数据源的数据提交***、装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103685421B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104317922A (zh) * | 2014-10-29 | 2015-01-28 | 中国农业银行股份有限公司 | 一种数据推送***和方法 |
CN105868383A (zh) * | 2016-04-11 | 2016-08-17 | 北京华网汇通技术服务有限公司 | 一种多渠道信息发布方法及*** |
CN108022184A (zh) * | 2017-12-14 | 2018-05-11 | 史琦 | 一种旅游体验、社交和代购服务平台及方法 |
CN110968744B (zh) | 2018-09-30 | 2023-09-05 | ***通信有限公司研究院 | 一种资源查询方法及装置、设备、存储介质 |
CN111159585B (zh) * | 2018-11-07 | 2023-09-22 | ***通信集团重庆有限公司 | 自动提交数据的方法、装置、设备及介质 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4339557B2 (ja) * | 2002-07-05 | 2009-10-07 | 富士通株式会社 | 情報共有方法、情報共有装置及び情報共有プログラム |
CN101383839A (zh) * | 2007-09-04 | 2009-03-11 | 阿里巴巴集团控股有限公司 | 基于数据服务器的数据分发***及其实现方法 |
CN102087641A (zh) * | 2009-12-08 | 2011-06-08 | 北大方正集团有限公司 | 一种网络信息的发布方法及*** |
CN102375856B (zh) * | 2010-08-23 | 2016-08-31 | 腾讯科技(深圳)有限公司 | 一种商品搜索方法和装置 |
CN102402522A (zh) * | 2010-09-09 | 2012-04-04 | ***通信集团上海有限公司 | 数据查询***及方法 |
CN101957844B (zh) * | 2010-09-17 | 2011-11-23 | 百度在线网络技术(北京)有限公司 | 一种在线应用***及其实现方法 |
CN101969475A (zh) * | 2010-11-15 | 2011-02-09 | 张军 | 基于云计算的商业数据可控分发与融合应用*** |
CN102684950A (zh) * | 2011-03-09 | 2012-09-19 | 中兴通讯股份有限公司 | 一种物联网和互联网服务结合的方法和*** |
CN102780711B (zh) * | 2011-05-09 | 2016-03-30 | 腾讯科技(深圳)有限公司 | 一种sns应用数据访问方法及其装置和*** |
CN102546623A (zh) * | 2011-12-30 | 2012-07-04 | 成都市华为赛门铁克科技有限公司 | 加速提供互联网应用资源的方法、资源管理服务器及*** |
-
2012
- 2012-09-21 CN CN201210357151.3A patent/CN103685421B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN103685421A (zh) | 2014-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109587044B (zh) | 群组创建、消息交互方法和装置 | |
US9641470B2 (en) | Channel based communication and transaction system | |
CN105530175B (zh) | 一种消息处理方法、装置及*** | |
CN103685421B (zh) | 跨数据源的数据提交***、装置及方法 | |
US10404631B2 (en) | Creating groups in a messaging system | |
CN102571857B (zh) | 一种实现登录xmpp服务器的方法和*** | |
US20170289069A1 (en) | Selecting an Autonomous Software Agent | |
US20120215865A1 (en) | Method and system for interconnecting social networks | |
US20120317213A1 (en) | Transmitting instant messages | |
WO2017172652A1 (en) | Supplying context data to a servicing entity | |
CN101127767A (zh) | 一种创建网络聊天平台的方法及*** | |
CN104135429B (zh) | 一种信息推送方法和装置 | |
CN103347065A (zh) | 一种服务信息处理***及方法 | |
CN106411694B (zh) | 用于使用xmpp将内容广播到接收方装置的***和方法 | |
CN108353018A (zh) | 发送消息的方法、设备和*** | |
CN114697282B (zh) | 消息的处理方法及***、存储介质、电子装置 | |
CN105528550B (zh) | 一种信息显示控制方法和装置 | |
TW201504960A (zh) | 用於整合行事曆系統及雲端儲存系統之整合設備及其整合方法 | |
CN109040331B (zh) | 电子名片的处理方法、装置、计算设备和存储介质 | |
WO2023155685A1 (zh) | 通信方法、***、装置、存储介质以及处理器 | |
US20160330151A1 (en) | Method and system for managing an informational site using a social networking application | |
CN109525488A (zh) | 即时消息发布方法、装置、终端、服务器及存储介质 | |
CN102905232B (zh) | 基于移动通讯终端通讯录联系人网络的方法、装置及*** | |
US20140287787A1 (en) | Connection System and Method to Dynamically Create and Collect a Group of Contextual Contacts | |
US20220210159A1 (en) | Method and apparatus for managing user profile |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |