发明内容
基于此,有必要针对现有的以AI任务驱动外呼任务的语音外呼方法存在的呼叫系统负载不均导致在外呼任务较多时,系统难以支撑的技术问题,提供一种语音外呼方法、装置、计算机设备和存储介质。
一种语音外呼方法,所述方法包括:
获取待呼叫号码;
将所述待呼叫号码发送至呼叫系统前置服务器;所述呼叫系统前置服务器用于根据所述待呼叫号码以及各个呼叫系统媒体机的负载信息,生成对应的外呼控制指令;所述外呼控制指令包括所述待呼叫号码和目标呼叫系统媒体机的媒体机标识;
根据所述呼叫系统前置服务器返回的所述外呼控制指令,将所述待呼叫号码发送至与所述媒体机标识对应的目标呼叫系统媒体机;所述目标呼叫系统媒体机用于执行所述待呼叫号码的语音外呼任务。
在其中一个实施例中,所述外呼控制指令还包括与所述待呼叫号码对应的随路数据,所述随路数据包括用于确定呼叫线路的主叫信息;
所述将所述待呼叫号码发送至与所述媒体机标识对应的目标呼叫系统媒体机,包括:
将所述待呼叫号码与所述随路数据发送至与所述媒体机标识对应的目标呼叫系统媒体机,以使所述目标呼叫系统媒体机通过所述主叫信息确定的呼叫线路,执行所述待呼叫号码的语音外呼任务。
在其中一个实施例中,所述根据所述呼叫系统前置服务器返回的所述外呼控制指令,将所述待呼叫号码发送至与所述媒体机标识对应的目标呼叫系统媒体机,包括:
通过负载均衡服务器,将所述外呼控制指令发送至呼叫系统的注册机,触发所述呼叫系统的注册机根据所述外呼控制指令,将所述待呼叫号码路由至与所述媒体机标识对应的目标呼叫系统媒体机。
一种语音外呼方法,所述方法包括:
接收智能交互终端发送的待呼叫号码,以及,采集各个呼叫系统媒体机的负载信息;
根据所述待呼叫号码以及各个所述呼叫系统媒体机的负载信息,生成对应的外呼控制指令;所述外呼控制指令包括所述待呼叫号码和目标呼叫系统媒体机的媒体机标识;
将所述外呼控制指令返回给所述智能交互终端;所述智能交互终端用于根据所述外呼控制指令,将所述待呼叫号码发送至与所述媒体机标识对应的目标呼叫系统媒体机;所述目标呼叫系统媒体机用于执行所述待呼叫号码的语音外呼任务。
在其中一个实施例中,所述根据所述待呼叫号码以及各个所述呼叫系统媒体机的负载信息,生成对应的外呼控制指令,包括:
从各个所述呼叫系统媒体机中,确定出所述负载信息符合设定条件的呼叫系统媒体机,作为目标呼叫系统媒体机;
获取所述目标呼叫系统媒体机的媒体机标识,根据所述待呼叫号码与所述媒体机标识,生成所述外呼控制指令。
在其中一个实施例中,所述负载信息包括所述呼叫系统媒体机的中央处理器性能、内存以及正在执行和/或待执行的语音外呼任务量中的至少一种;
所述从各个所述呼叫系统媒体机中,确定出所述负载信息符合设定条件的呼叫系统媒体机,作为目标呼叫系统媒体机,包括:
从各个所述呼叫系统媒体机中,确定出所述中央处理器性能最优的呼叫系统媒体机,作为目标呼叫系统媒体机;
和/或,
从各个所述呼叫系统媒体机中,确定出所述内存最多的呼叫系统媒体机,作为目标呼叫系统媒体机;
和/或,
从各个所述呼叫系统媒体机中,确定出所述语音外呼任务量最少的呼叫系统媒体机,作为目标呼叫系统媒体机。
一种语音外呼装置,所述装置包括:
号码获取模块,用于获取待呼叫号码;
第一发送模块,用于将所述待呼叫号码发送至呼叫系统前置服务器;所述呼叫系统前置服务器用于根据所述待呼叫号码以及各个呼叫系统媒体机的负载信息,生成对应的外呼控制指令;所述外呼控制指令包括所述待呼叫号码和目标呼叫系统媒体机的媒体机标识;
第二发送模块,用于根据所述呼叫系统前置服务器返回的所述外呼控制指令,将所述待呼叫号码发送至与所述媒体机标识对应的目标呼叫系统媒体机;所述目标呼叫系统媒体机用于执行所述待呼叫号码的语音外呼任务。
一种语音外呼装置,所述装置包括:
信息采集模块,用于接收智能交互终端发送的待呼叫号码,以及,采集各个呼叫系统媒体机的负载信息;
指令生成模块,用于根据所述待呼叫号码以及各个所述呼叫系统媒体机的负载信息,生成对应的外呼控制指令;所述外呼控制指令包括所述待呼叫号码和目标呼叫系统媒体机的媒体机标识;
指令发送模块,用于将所述外呼控制指令返回给所述智能交互终端;所述智能交互终端用于根据所述外呼控制指令,将所述待呼叫号码发送至与所述媒体机标识对应的目标呼叫系统媒体机;所述目标呼叫系统媒体机用于执行所述待呼叫号码的语音外呼任务。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取待呼叫号码;
将所述待呼叫号码发送至呼叫系统前置服务器;所述呼叫系统前置服务器用于根据所述待呼叫号码以及各个呼叫系统媒体机的负载信息,生成对应的外呼控制指令;所述外呼控制指令包括所述待呼叫号码和目标呼叫系统媒体机的媒体机标识;
根据所述呼叫系统前置服务器返回的所述外呼控制指令,将所述待呼叫号码发送至与所述媒体机标识对应的目标呼叫系统媒体机;所述目标呼叫系统媒体机用于执行所述待呼叫号码的语音外呼任务。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取待呼叫号码;
将所述待呼叫号码发送至呼叫系统前置服务器;所述呼叫系统前置服务器用于根据所述待呼叫号码以及各个呼叫系统媒体机的负载信息,生成对应的外呼控制指令;所述外呼控制指令包括所述待呼叫号码和目标呼叫系统媒体机的媒体机标识;
根据所述呼叫系统前置服务器返回的所述外呼控制指令,将所述待呼叫号码发送至与所述媒体机标识对应的目标呼叫系统媒体机;所述目标呼叫系统媒体机用于执行所述待呼叫号码的语音外呼任务。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
接收智能交互终端发送的待呼叫号码,以及,采集各个呼叫系统媒体机的负载信息;
根据所述待呼叫号码以及各个所述呼叫系统媒体机的负载信息,生成对应的外呼控制指令;所述外呼控制指令包括所述待呼叫号码和目标呼叫系统媒体机的媒体机标识;
将所述外呼控制指令返回给所述智能交互终端;所述智能交互终端用于根据所述外呼控制指令,将所述待呼叫号码发送至与所述媒体机标识对应的目标呼叫系统媒体机;所述目标呼叫系统媒体机用于执行所述待呼叫号码的语音外呼任务。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
接收智能交互终端发送的待呼叫号码,以及,采集各个呼叫系统媒体机的负载信息;
根据所述待呼叫号码以及各个所述呼叫系统媒体机的负载信息,生成对应的外呼控制指令;所述外呼控制指令包括所述待呼叫号码和目标呼叫系统媒体机的媒体机标识;
将所述外呼控制指令返回给所述智能交互终端;所述智能交互终端用于根据所述外呼控制指令,将所述待呼叫号码发送至与所述媒体机标识对应的目标呼叫系统媒体机;所述目标呼叫系统媒体机用于执行所述待呼叫号码的语音外呼任务。
上述语音外呼方法、装置、计算机设备和存储介质,通过获取待呼叫号码,将待呼叫号码发送至呼叫系统前置服务器,使呼叫系统前置服务器根据待呼叫号码以及各个呼叫系统媒体机的负载信息,生成对应的外呼控制指令;外呼控制指令包括待呼叫号码和目标呼叫系统媒体机的媒体机标识;最后根据呼叫系统前置服务器返回的外呼控制指令,将待呼叫号码发送至与媒体机标识对应的目标呼叫系统媒体机,使目标呼叫系统媒体机执行待呼叫号码的语音外呼任务。采用该方法可根据各个呼叫系统媒体机的负载信息生成最优的外呼控制指令,根据外呼控制指令选定目标呼叫系统媒体机执行待呼叫号码的语音外呼任务,而非随机选取一个呼叫系统媒体机,由此来均衡各个呼叫系统媒体机的负载情况,从而,解决了传统方法中存在的呼叫系统负载不均导致在外呼任务较多时,系统难以支撑的问题。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的语音外呼方法,可以应用于如图1所示的应用环境中。其中,智能交互终端102分别与呼叫系统前置服务器104和呼叫系统媒体机106通过网络进行通信,呼叫系统前置服务器104与呼叫系统媒体机106通过网络进行通信。在本申请提供的语音外呼方法的应用场景中,智能交互终端102获取待呼叫号码;将所述待呼叫号码发送至呼叫系统前置服务器104;所述呼叫系统前置服务器104用于根据所述待呼叫号码以及各个呼叫系统媒体机106的负载信息,生成对应的外呼控制指令;所述外呼控制指令包括所述待呼叫号码和目标呼叫系统媒体机的媒体机标识;根据所述呼叫系统前置服务器104返回的所述外呼控制指令,将所述待呼叫号码发送至与所述媒体机标识对应的目标呼叫系统媒体机;所述目标呼叫系统媒体机用于执行所述待呼叫号码的语音外呼任务。其中,智能交互终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,呼叫系统前置服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种语音外呼方法,以该方法应用于图1中的智能交互终端102为例进行说明,包括以下步骤:
步骤S202,获取待呼叫号码。
其中,待呼叫号码表示智能交互终端接收的外呼对象的号码。
其中,智能交互终端为语音外呼任务处理平台,用于提供人机交互服务。
具体实现中,在智能交互终端102获取待呼叫号码的同时,还可获取与待呼叫号码对应的随路数据,将待呼叫号码和随路数据作为语音外呼任务,发送至呼叫系统前置服务器104。
步骤S204,将待呼叫号码发送至呼叫系统前置服务器;呼叫系统前置服务器用于根据待呼叫号码以及各个呼叫系统媒体机的负载信息,生成对应的外呼控制指令;外呼控制指令包括待呼叫号码和目标呼叫系统媒体机的媒体机标识。
其中,呼叫系统前置(CAF-WAB)服务器用于提供与呼叫系统相关的基础查询服务。
其中,负载信息包括呼叫系统媒体机的中央处理器性能、内存以及正在执行和/或待执行的语音外呼任务量中的至少一种。
具体实现中,智能交互终端102在获取语音外呼任务后,通过http请求将包括待呼叫号码和随路数据的语音外呼任务发送至呼叫系统前置服务器104,呼叫系统前置服务器104接收语音外呼任务后,采集各个呼叫系统媒体机106的负载信息,根据各个呼叫系统媒体机106的负载信息从各个呼叫系统媒体机中确定出符合设定条件的呼叫系统媒体机,作为目标呼叫系统媒体机,并获取目标呼叫系统媒体机的媒体机标识,根据媒体机标识以及待呼叫号码生成外呼控制指令,从而外呼控制指令中便包括有目标呼叫系统媒体机的媒体机标识以及待呼叫号码,进一步,呼叫系统前置服务器104便可将生成的外呼控制指令返回给智能交互终端102。
步骤S206,根据呼叫系统前置服务器返回的外呼控制指令,将待呼叫号码发送至与媒体机标识对应的目标呼叫系统媒体机;目标呼叫系统媒体机用于执行待呼叫号码的语音外呼任务。
具体实现中,智能交互终端102接收到呼叫系统前置服务器104返回的外呼控制指令后,便可根据外呼控制指令中目标呼叫系统媒体机的媒体机标识将待呼叫号码发送至目标呼叫系统媒体机,使目标呼叫系统媒体机执行待呼叫号码的语音外呼任务。
进一步地,在一个实施例中,外呼控制指令还包括与待呼叫号码对应的随路数据,随路数据包括用于确定呼叫线路的主叫信息,在上述步骤S206中,还包括:将待呼叫号码与随路数据发送至与媒体机标识对应的目标呼叫系统媒体机,以使所述目标呼叫系统媒体机通过所述主叫信息确定的呼叫线路,执行所述待呼叫号码的语音外呼任务。
其中,呼叫线路为呼叫系统媒体机通过运营商线路管理服务器外呼至用户的线路。
其中,随路数据还包括如业务量的应用层数据,例如,当业务量为10时,表示需要执行10个待呼叫号码的外呼任务,则每个待呼叫号码可携带有1、2、3…等数据,作为随路数据,表征业务量的完成进度。
具体实现中,呼叫系统前置服务器104在生成外呼控制指令时,除了根据各个呼叫系统媒体机的负载信息和待呼叫号码外,还需根据与待呼叫号码对应的随路数据,一起生成外呼控制指令,以便于智能交互终端102将随路数据和待呼叫号码发送至目标呼叫系统媒体机,使目标呼叫系统媒体机可根据随路数据中的主叫信息确定目标呼叫线路,通过目标呼叫线路执行待呼叫号码的语音外呼任务,采用该方法,通过呼叫系统前置服务器接收随路数据,通过外呼控制指令携带随路数据,可解决传统通过多媒体协议(即使用SIP账号)对接呼叫系统的形式,难以携带随路数据的技术问题。
上述语音外呼方法中,通过获取待呼叫号码,将待呼叫号码发送至呼叫系统前置服务器,使呼叫系统前置服务器根据待呼叫号码以及各个呼叫系统媒体机的负载信息,生成对应的外呼控制指令;外呼控制指令包括待呼叫号码和目标呼叫系统媒体机的媒体机标识;最后根据呼叫系统前置服务器返回的外呼控制指令,将待呼叫号码发送至与媒体机标识对应的目标呼叫系统媒体机,使目标呼叫系统媒体机执行待呼叫号码的语音外呼任务。采用该方法可根据各个呼叫系统媒体机的负载信息生成最优的外呼控制指令,根据外呼控制指令选定目标呼叫系统媒体机执行待呼叫号码的语音外呼任务,而非随机选取一个呼叫系统媒体机,由此来均衡各个呼叫系统媒体机的负载情况,从而,解决了传统方法中存在的呼叫系统负载不均导致在外呼任务较多时,系统难以支撑的问题。
此外,通过上述方法仅需在呼叫系统前置服务器进行主叫配置以及在AI任务生成前确定主叫号码和主叫信息即可,无需在每个步骤均进行主叫配置,便于进行主叫管理,克服传统以AI任务驱动外呼任务的方法中主叫管理复杂且浪费时间的问题。并且,即使对于用户呼入的情况,也不需要变更AI任务的驱动方式,使用外呼控制指令的方式便可进行AI任务与呼入任务的路由衔接。
在一个实施例中,上述方法还包括:获取在呼叫系统的注册机上进行信息注册的注册结果标识;若注册结果标识为注册失败或未注册时,获取呼叫系统提供的注册账号;采用注册账号在呼叫系统的注册机上进行信息注册。
具体实现中,智能交互平台还需先通过SIP信令交互注册到负载均衡服务器,由负载均衡服务器分配到呼叫系统的注册机上进行信息注册,在信息注册完成后,才可通过负载均衡服务器将外呼控制指令发送至呼叫系统的注册机。因此,智能交互终端102在通过负载均衡服务器发送外呼控制指令之前,先获取在呼叫系统的注册机上进行信息注册的注册结果标识,若注册结果标识为注册失败或未注册时,则获取呼叫系统提供的注册账号(即SIP账号),采用该注册账号在呼叫系统的注册机上进行信息注册。若注册结果标识为已注册成功时,则可以通过负载均衡服务器将外呼控制指令分配到呼叫系统的注册机。
本实施例中,通过获取在呼叫系统的注册机上进行信息注册的注册结果标识,以便于根据注册结果标识确定是否需要进行信息注册,并且在注册失败或未注册时,获取呼叫系统提供的注册账号,在呼叫系统的注册机上完成信息注册,以便于智能交互终端可通过负载均衡服务器将外呼控制指令分配到呼叫系统的注册机。
在一个实施例中,上述步骤S206具体包括:通过负载均衡服务器,将外呼控制指令发送至呼叫系统的注册机,触发呼叫系统的注册机根据外呼控制指令,将待呼叫号码路由至与媒体机标识对应的目标呼叫系统媒体机。
其中,负载均衡服务器(LB)用于提供负载均衡服务。
其中,呼叫系统的注册机用于提供SIP(Session Initiation Protocol,会话初始协议,一种通用的多媒体通信协议。基于文本的应用层控制协议,用于创建、修改和释放一个或多个参与者的会话)账号的信息注册服务。
具体实现中,智能交互终端102将待呼叫号码发送至目标呼叫系统媒体机还需要通过负载均衡服务器和呼叫系统的注册机,如图3所示,为语音外呼方法中各个主体之间的交互时序图,图中包括多个智能交互终端、多个呼叫系统前置服务器和多个呼叫系统的注册机,其作用在于,分散各个智能交互终端、各个呼叫系统前置服务器和各个呼叫系统的注册机的负载,增加使用寿命。在图3中,智能交互终端102在接收到外呼控制指令后,根据外呼控制指令先通过SIP信令交互到负载均衡服务器,由负载均衡服务器将包括待呼叫号码、随路数据和目标呼叫系统媒体机的媒体机标识的外呼控制指令,分配至任意呼叫系统注册机,触发呼叫系统的注册机根据外呼控制指令中的媒体机标识,通过SIP信令交互,将待呼叫号码和随路数据路由至与媒体机标识对应的目标呼叫系统媒体机,进而,目标呼叫系统媒体机便可通过运营商线路管理服务器(Vos),选择随路数据中主叫信息对应的目标呼叫线路,外呼给真实用户。
本实施例中,通过智能交互终端、呼叫系统前置服务器、负载均衡服务器呼叫系统的注册机和呼叫系统媒体机之间的交互,实现待呼叫号码的语音外呼任务,该交互方法提高了呼叫系统负载均衡的便利度和可操作度,且可支持根据需求增加智能交互终端、呼叫系统前置服务器、呼叫系统注册机和呼叫系统媒体机等,以提高呼叫系统水平的扩容能力。
在一个实施例中,如图4所示,提供了一种语音外呼方法,以该方法应用于图1中的呼叫系统前置服务器104为例进行说明,包括以下步骤:
步骤S402,接收智能交互终端发送的待呼叫号码,以及,采集各个呼叫系统媒体机的负载信息。
具体实现中,由于智能交互终端102在获取待呼叫号码的同时,还可获取与待呼叫号码对应的随路数据,生成包括待呼叫号码和随路数据的语音外呼任务,发送至呼叫系统前置服务器104,因此,呼叫系统前置服务器104接收智能交互终端102发送的待呼叫号码时,还将接收与待呼叫号码对应的随路数据。并在接收到待呼叫号码和随路数据后,通过TCP长连接采集各个呼叫系统媒体机的中央处理器性能、内存以及正在执行和/或待执行的语音外呼任务量等负载信息。
步骤S404,根据待呼叫号码以及各个呼叫系统媒体机的负载信息,生成对应的外呼控制指令;外呼控制指令包括待呼叫号码和目标呼叫系统媒体机的媒体机标识。
具体实现中,呼叫系统前置服务器104除了根据待呼叫号码以及各个呼叫系统媒体机的负载信息外,还将根据所接收的待呼叫号码对应的随路数据,生成外呼控制指令,从而,外呼控制指令除了包括待呼叫号码和目标呼叫系统媒体机的媒体机标识外,还包括与待呼叫号码对应的随路数据。
步骤S406,将外呼控制指令返回给智能交互终端;智能交互终端用于根据外呼控制指令,将待呼叫号码发送至与媒体机标识对应的目标呼叫系统媒体机;目标呼叫系统媒体机用于执行待呼叫号码的语音外呼任务。
具体实现中,呼叫系统前置服务器104生成外呼控制指令后,便可将外呼控制指令返回给智能交互终端102,以使智能交互终端102根据外呼控制指令,将待呼叫号码发送至与媒体机标识对应的目标呼叫系统媒体机,触发目标呼叫系统媒体机执行待呼叫号码的语音外呼任务。
上述语音外呼方法中,通过呼叫系统前置服务器接收待呼叫号码,采集各个呼叫系统媒体机的负载信息,生成最优的外呼控制指令,发送给智能交互终端,使得智能交互终端可根据外呼控制指令选定目标呼叫系统媒体机执行待呼叫号码的语音外呼任务,而非随机选取一个呼叫系统媒体机,由此来均衡各个呼叫系统媒体机的负载情况,从而,解决了传统方法中存在的呼叫系统负载不均导致在外呼任务较多时,系统难以支撑的问题。此外,通过上述方法仅需在呼叫系统前置服务器进行主叫配置以及在AI任务生成前确定主叫号码和主叫信息即可,无需在每个步骤均进行主叫配置,便于进行主叫管理,克服传统以AI任务驱动外呼任务的方法中主叫管理复杂且浪费时间的问题。并且,即使对于用户呼入的情况,也不需要变更AI任务的驱动方式,使用外呼控制指令的方式便可进行AI任务与呼入任务的路由衔接。
在一个实施例中,如图5所示,上述步骤S404具体包括:
步骤S502,从各个呼叫系统媒体机中,确定出负载信息符合设定条件的呼叫系统媒体机,作为目标呼叫系统媒体机。
步骤S504,获取目标呼叫系统媒体机的媒体机标识,根据待呼叫号码与媒体机标识,生成外呼控制指令。
具体实现中,呼叫系统前置服务器104在得到各个呼叫系统媒体机的负载信息后,可将各个呼叫系统媒体机的负载信息进行对比,从中确定出符合设定条件的负载信息,将符合设定条件的负载信息对应的呼叫系统媒体机,作为目标呼叫系统媒体机,进一步获取目标呼叫系统媒体机的媒体机标识,根据待呼叫号码、媒体机标识以及待呼叫号码对应的随路数据生成外呼控制指令。
本实施例中,通过在采集各个呼叫系统媒体机的负载信息后,根据负载信息确定目标呼叫系统媒体机,使得可确定出最优的呼叫系统媒体机作为目标呼叫系统媒体机,从而使得根据目标呼叫系统媒体机的媒体机标识生成的外呼控制指令最优,从而可根据最优的外呼控制指令执行语音外呼任务,由此来均衡各个呼叫系统媒体机的负载情况。
在一个实施例中,负载信息包括呼叫系统媒体机的中央处理器性能、内存以及正在执行和/或待执行的语音外呼任务量中的至少一种;上述步骤S502还包括:从各个呼叫系统媒体机中,确定出中央处理器性能最优的呼叫系统媒体机,作为目标呼叫系统媒体机;和/或,从各个呼叫系统媒体机中,确定出内存最多的呼叫系统媒体机,作为目标呼叫系统媒体机;和/或,从各个呼叫系统媒体机中,确定出语音外呼任务量最少的呼叫系统媒体机,作为目标呼叫系统媒体机。
具体实现中,当负载信息为中央处理器性能时,呼叫系统前置服务器104可将各个呼叫系统媒体机按照中央处理器性能优劣程度进行排序,将中央处理器性能最优的呼叫系统媒体机,作为目标呼叫系统媒体机。当负载信息为内存时,可将各个呼叫系统媒体机按照内存的多少进行排序,将内存最多的呼叫系统媒体机,作为目标呼叫系统媒体机。当负载信息为语音外呼任务量时,可将各个呼叫系统媒体机按照语音外呼任务量的多少进行排序,将语音外呼任务量最少的呼叫系统媒体机,作为目标呼叫系统媒体机。
本实施例中,通过对各个呼叫系统媒体机的负载信息进行对比,确定出中央处理器性能最优或内存最多或语音外呼任务量最少的呼叫系统媒体机,作为目标呼叫系统媒体机,来减少其余呼叫系统媒体机的负载,以实现均衡呼叫系统媒体机负载的目的。
需要说明的是,上述图4的语音外呼方法为上述图2提供的语音外呼方法的对应方法,在上述图2提供的语音外呼方法的实施例阐述的技术特征及其有益效果均适用于图4提供的语音外呼方法的实施例中,具体内容可参见本申请应用于智能交互终端的方法实施例中的叙述,此处不再赘述,特此声明。
为了更清晰阐明本申请实施例提供的技术方案,以下将结合图3对该方案进行具体说明,该方法的具体流程如下:
(1)智能交互平台(Intelligence Interaction Platform,IIP,即智能交互终端)在接收到语音外呼任务(包括待呼叫号码和随路数据)时,先确定是否已完成在FS(Freeswitch,提供语音外呼服务)注册机上的账号注册,若未完成注册,则获取呼叫系统提供的SIP账号,并使用SIP账号注册到任意一个FS注册机。
(2)若已完成注册,则智能交互平台将接收到的语音外呼任务通过http请求发送给任意一个呼叫系统前置服务器(Caf-web);呼叫系统前置服务器接收语音外呼任务,采集各个FS媒体机的负载信息,根据各个FS媒体机的负载信息以及语音外呼任务生成外呼控制指令,将外呼控制指令返回给智能交互平台,其中,外呼控制指令包括目标FS媒体机的媒体机标识和目标运营商线路的信息、以及语音外呼任务中的待呼叫号码和随路数据。
(3)智能交互平台接收外呼控制指令,并通过底层SIP信令交互将外呼控制指令通过负载均衡服务器LB随机分配给任意一个FS注册机。
(4)FS注册机接收通过SIP信令发送的外呼控制指令后,根据外呼控制指令中的媒体机标识将外呼控制指令路由至对应的目标FS媒体机。
(5)目标FS媒体机接收外呼控制指令后,根据外呼控制指令中的主叫信息确定运行商呼叫线路,通过运营商呼叫线路执行待呼叫号码的外呼操作。
应该理解的是,虽然图2、图4和图5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、图4和图5中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图6所示,提供了一种语音外呼装置,包括:号码接收模块602、第一发送模块604和第二发送模块606,其中:
号码接收模块602,用于接收待呼叫号码;
第一发送模块604,用于将所述待呼叫号码发送至呼叫系统前置服务器;所述呼叫系统前置服务器用于根据所述待呼叫号码以及各个呼叫系统媒体机的负载信息,生成对应的外呼控制指令;所述外呼控制指令包括所述待呼叫号码和目标呼叫系统媒体机的媒体机标识;
第二发送模块606,用于根据所述呼叫系统前置服务器返回的所述外呼控制指令,将所述待呼叫号码发送至与所述媒体机标识对应的目标呼叫系统媒体机;所述目标呼叫系统媒体机用于执行所述待呼叫号码的语音外呼任务。
在一个实施例中,外呼控制指令还包括与所述待呼叫号码对应的随路数据,所述随路数据包括用于确定呼叫线路的主叫信息;上述第一发送模块604,还用于将所述待呼叫号码与所述随路数据发送至与所述媒体机标识对应的目标呼叫系统媒体机,以使所述目标呼叫系统媒体机通过所述主叫信息确定的呼叫线路,执行所述待呼叫号码的语音外呼任务。
在一个实施例中,上述第二发送模块606,还用于通过负载均衡服务器,将所述外呼控制指令发送至呼叫系统的注册机,触发所述呼叫系统的注册机根据所述外呼控制指令,将所述待呼叫号码路由至与所述媒体机标识对应的目标呼叫系统媒体机。
在一个实施例中,如图7所示,提供了一种语音外呼装置,包括:信息采集模块702、指令生成模块704和指令发送模块706,其中:
信息采集模块702,用于接收智能交互终端发送的待呼叫号码,以及,采集各个呼叫系统媒体机的负载信息;
指令生成模块704,用于根据待呼叫号码以及各个呼叫系统媒体机的负载信息,生成对应的外呼控制指令;外呼控制指令包括待呼叫号码和目标呼叫系统媒体机的媒体机标识;
指令发送模块706,用于将外呼控制指令返回给智能交互终端;智能交互终端用于根据外呼控制指令,将待呼叫号码发送至与媒体机标识对应的目标呼叫系统媒体机;目标呼叫系统媒体机用于执行待呼叫号码的语音外呼任务。
在一个实施例中,上述指令生成模块704,还用于从各个呼叫系统媒体机中,确定出负载信息符合设定条件的呼叫系统媒体机,作为目标呼叫系统媒体机;获取目标呼叫系统媒体机的媒体机标识,根据待呼叫号码与媒体机标识,生成外呼控制指令。
在一个实施例中,负载信息包括呼叫系统媒体机的中央处理器性能、内存以及正在执行和/或待执行的语音外呼任务量中的至少一种;上述指令生成模块704,还用于从各个呼叫系统媒体机中,确定出中央处理器性能最优的呼叫系统媒体机,作为目标呼叫系统媒体机;和/或,从各个呼叫系统媒体机中,确定出内存最多的呼叫系统媒体机,作为目标呼叫系统媒体机;和/或,从各个呼叫系统媒体机中,确定出语音外呼任务量最少的呼叫系统媒体机,作为目标呼叫系统媒体机。
需要说明的是,图6所示的语音外呼装置与上述图2提供的语音外呼方法一一对应,图7所示的语音外呼装置与上述图4提供的语音外呼方法一一对应,在上述图2提供的语音外呼方法的实施例阐述的技术特征及其有益效果均适用于图6所示的语音外呼装置的实施例中,在上述图4提供的语音外呼方法的实施例阐述的技术特征及其有益效果均适用于图7所示的语音外呼装置的实施例中,具体内容可参见本申请方法实施例中的叙述,此处不再赘述,特此声明。
此外,上述图6和图7所示的语音外呼装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种语音外呼方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。