基于IMS通信能力开放AS平台的呼叫信息推送方法及其系统技术方案

技术编号:32182623 阅读:11 留言:0更新日期:2022-02-08 15:45
本发明专利技术公开基于IMS通信能力开放AS平台的呼叫信息推送方法及其系统,设计一可按客户区分的推送队列模型,将不同的客户消息在源头上进行区隔,避免了不同客户之间的相互影响。设计了延迟队列,允许推送失败的呼叫信息进行多次重新推送,不仅提高了效率,也大大降低了系统的消耗。本发明专利技术将不同的功能进行模块化,从而可以根据AS平台呼叫量实时的增减推送能力。这种性能的可伸缩性,可以颗粒化到单个客户级别。本发明专利技术适用于实时的、高并发、多用户的数据推送场景,且使用方便,配置灵活,能够满足绝大多数业务需求。多数业务需求。多数业务需求。

【技术实现步骤摘要】
基于IMS通信能力开放AS平台的呼叫信息推送方法及其系统


[0001]本专利技术涉及IMS通信
,尤其涉及基于IMS通信能力开放AS平台的呼叫信息推送方法及其系统。

技术介绍

[0002]在IMS通信能力开放AS平台中,当客户(SP)调用平台api发起一通呼叫后,平台需要将这通呼叫在整个呼叫过程中产生的呼叫信息实时的推送到SP登记在平台上的接收服务。
[0003]现有平台的推送系统,通常存在以下问题:1、在呼叫高峰期时,发生推送能力不足,出现推送任务积压的时候,无法实时动态增加推送能力;2、当某个SP的接受服务或者网络出现问题,会影响整个平台的呼叫信息推送,从而影响到其他SP用户;3、重推功能是通过将失败的呼叫信息赞成存到数据库中来实现,消耗很大。

技术实现思路

[0004]本专利技术的目的在于提供基于IMS通信能力开放AS平台的呼叫信息推送方法及其系统,引入消息队列中间件,分配通用队列、专属队列以及延迟队列,来提高系统的吞吐量和避免不同SP之间的影响;同时将功能模块化,实现推送能力的实时动态增减。
[0005]本专利技术采用的技术方案是:基于IMS通信能力开放AS平台的呼叫信息推送系统,其包括:呼叫信息收集模块:负责从能力开放AS平台收集到要推送的呼叫信息,格式化后存入呼叫信息消息队列中;任务工厂模块:负责从呼叫信息消息队列中取出呼叫信息,将呼叫信息根据系统配置生成推送任务,生成推送任务存入任务消息队列中;消息队列模块:使用业界成熟的消息队列中间件Rabbit mq作为系统的消息队列模块,实现各个模块之间的各种消息的传输、中转的功能;推送服务模块:负责从任务消息队列中取出推送任务,执行推送工作。并将推送结果存入到结果消息队列中;结果收集模块:负责从结果消息队列中取出推送接入,存入到mysql数据库中,以便后续业务统计分析。
[0006]进一步地,推送服务模块根据不同队列推送任务的数量实时动态增加或减少启动的数量,以控制平台的推送能力。
[0007]进一步地,结果收集模块根据推送任务的数量实时动态增加减少启动的数量,以控制平台的处理能力。
[0008]基于IMS通信能力开放AS平台的呼叫信息推送方法,其包括以下步骤:步骤1、呼叫信息收集模块从能力开放AS平台收集呼叫信息;步骤2、呼叫信息收集模块将收集到的呼叫信息格式化后实时存入呼叫信息队列;
步骤3、任务工厂模块从呼叫信息队列中取出呼叫信息;步骤4、任务工厂模块将呼叫信息根据系统配置生成推送任务存入对应SP客户的推送信息队列;步骤5、推送服务模块从推送信息队列中获取推送任务;步骤6、推送服务模块根据推送任务将呼叫信息推送到SP客户;步骤7、推送服务模块获取推送反馈信息并进行相应处理:当推送失败时,推送服务模块将该任务存入到延迟退队列中;当推送成功时,推送服务模块将该任务存入结果信息队列中;步骤8 、结果收集模块从结果信息队列中取出推送任务,并将推送结果入库保存;进一步地,呼叫信息和推送任务以json格式保存。
[0009]进一步地,步骤6中推送服务模块取出推送任务后,先判断ttl是否为0;是则,结束推送并将推送任务放入推送结果队列中;否则,将ttl做减1操作,接着根据地址(url)和内容(content)构建http请求,最后使用选定的post或者get方法执行http请求。
[0010]进一步地,步骤7中延迟队列中的消息在时间到达后,将重新回到推送队列,通过系统配置对应的循环次数。
[0011]本专利技术采用以上技术方案,将功能模块独立化,使得平台能够根据业务情况,实时控制平台的处理能力,使得平台具备更灵活的伸缩性,实现分布式部署。本专利技术的推送系统,将推送任务按照SP客户放入不同的推送队列中,从源头上隔绝了不同SP客户之间的影响,从而杜绝了因为某些SP客户接受服务的问题导致推送积压的想象。本专利技术的推送系统,引入Rabbit mq消息队列的死信队列作为推送任务的重推缓存,代替传统的数据库缓存方式,不仅提高了效率,而且大大降低了系统消耗。
附图说明
[0012]以下结合附图和具体实施方式对本专利技术做进一步详细说明;图1为本专利技术基于IMS通信能力开放AS平台的呼叫信息推送方法流程示意图。
具体实施方式
[0013]为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图对本申请实施例中的技术方案进行清楚、完整地描述。
[0014]如图1所示,本专利技术公开了基于IMS通信能力开放AS平台的呼叫信息推送系统,其包括:呼叫信息收集模块:负责从能力开放AS平台收集到要推送的呼叫信息,格式化后存入呼叫信息消息队列中;任务工厂模块:负责从呼叫信息消息队列中取出呼叫信息,将呼叫信息根据系统配置生成推送任务,生成推送任务存入任务消息队列中;消息队列模块:使用业界成熟的消息队列中间件Rabbit mq作为系统的消息队列模块,实现各个模块之间的各种消息的传输、中转的功能;推送服务模块:负责从任务消息队列中取出推送任务,执行推送工作。并将推送结果存入到结果消息队列中;
结果收集模块:负责从结果消息队列中取出推送接入,存入到mysql数据库中,以便后续业务统计分析。
[0015]进一步地,推送服务模块根据不同队列推送任务的数量实时动态增加或减少启动的数量,以控制平台的推送能力。
[0016]进一步地,结果收集模块根据推送任务的数量实时动态增加减少启动的数量,以控制平台的处理能力。
[0017]基于IMS通信能力开放AS平台的呼叫信息推送方法,其包括以下步骤:步骤1、呼叫信息收集模块从能力开放AS平台收集呼叫信息;步骤2、呼叫信息收集模块将收集到的呼叫信息格式化后实时存入呼叫信息队列;步骤3、任务工厂模块从呼叫信息队列中取出呼叫信息;步骤4、任务工厂模块将呼叫信息根据系统配置生成推送任务存入对应SP客户的推送信息队列;步骤5、推送服务模块从推送信息队列中获取推送任务;步骤6、推送服务模块根据推送任务将呼叫信息推送到SP客户;步骤7、推送服务模块获取推送反馈信息并进行相应处理:当推送失败时,推送服务模块将该任务存入到延迟退队列中;当推送成功时,推送服务模块将该任务存入结果信息队列中;步骤8 、结果收集模块从结果信息队列中取出推送任务,并将推送结果入库保存;进一步地,呼叫信息和推送任务以json格式保存。
[0018]进一步地,步骤6中推送服务模块取出推送任务后,先判断ttl是否为0;是则,结束推送并将推送任务放入推送结果队列中;否则,将ttl做减1操作,接着根据地址(url)和内容(content)构建http请求,最后使用选定的post或者get方法执行http请求。
[0019]进一步地,步骤7中延迟队列中的消息在时间到达后,将重新回到推送队列,通过系统配置对应的循环次数。
[0020]下面就本专利技术的具体工作原理做详细的说明:一、AS平台产生呼叫信息:1

1、AS平台在呼叫过程中,呼叫信息收集模块将呼叫信息实时存入R本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于IMS通信能力开放AS平台的呼叫信息推送系统,其特征在于:其包括:呼叫信息收集模块:负责从能力开放AS平台收集到要推送的呼叫信息,格式化后存入呼叫信息消息队列中;任务工厂模块:负责从呼叫信息消息队列中取出呼叫信息,将呼叫信息根据系统配置生成推送任务,生成推送任务存入任务消息队列中;消息队列模块:使用业界成熟的消息队列中间件Rabbit mq作为系统的消息队列模块,实现各个模块之间的各种消息的传输、中转的功能;推送服务模块:负责从任务消息队列中取出推送任务,执行推送工作。2.并将推送结果存入到结果消息队列中;结果收集模块:负责从结果消息队列中取出推送接入,存入到mysql数据库中,以便后续业务统计分析。3.根据权利要求1所述的基于IMS通信能力开放AS平台的呼叫信息推送系统,其特征在于:推送服务模块根据不同队列推送任务的数量实时动态增加或减少启动的数量,以控制平台的推送能力。4.根据权利要求1所述的基于IMS通信能力开放AS平台的呼叫信息推送系统,其特征在于:结果收集模块根据推送任务的数量实时动态增加减少启动的数量,以控制平台的处理能力。5.基于IMS通信能力开放AS平台的呼叫信息推送方法,采用权利要求1至3之一所述的基于IMS通信能力开放AS平台的呼叫信息推送系统,其特征在于:方法包括以下步骤:步骤1、呼叫信息收集模块从能力开放AS平台收集呼叫...

【专利技术属性】
技术研发人员:余强力叶先壹陈淼生林腾飞
申请(专利权)人:中电福富信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1