一种短信的调度方法和系统 【技术领域】
本发明涉及移动通信技术, 尤其是指一种短信的调度方法和系统。背景技术 随着现代通信技术的快速发展, 短信 (SMS, Short message service) 业务的出现 给人们的日常生活带来了极大的便利, 因此已经被越来越多的用户所使用, 短信业务也已 经成为现代通信网络中一种十分重要的业务。在现有条件下, 上述的短信业务已经可以利 用现有飞速发展的互联网 (Internet) 和移动网资源, 为各种企业提供全面的内外信息服 务。
在现有技术中, 短信业务的基本解决方案一般都采用具有四层结构的方案。图 1 为现有技术中短信业务的基本解决方案的结构示意图。如图 1 所示, 上述的解决方案中可 包括如下的四层结构 :
1) 业务应用层 ;
所述业务应用层主要是指各种应用环境下的处理层。 该业务应用层主要用于向用 户提供基本的业务逻辑和业务功能。 具体来说, 所述的业务应用层可以是 : 各种行业服务应 用系统、 集团客户 (EC, Enterprise Customer)、 服务提供商 (SP, Service Provider) 等。
2) 网络接入层 ;
所述网络接入层主要用于将各个行业应用系统接入到运营商网络中。具体来说, 所述的网络接入层可以是 : 短信网关 (ISMG, Internet Short MessageGateway)、 行业网关 (IAGW) 或 IAGW 的业务接入代理部分 (IAGW-A, 即 IAGW 的 A 模块 ) 等。其中, 所述的短信网 关可以是现有技术中的梦网网关。
3) 业务管理层 ;
所述业务管理层 ( 也称为网络管理层 ) 主要用于运营商对服务项目和订购关系的 管理。 具体来说, 所述的业务管理层可以是 : 移动信息服务中心 (MISC, Mobile Information Service Center) 或 IAGW 的业务治理部分 (IAGW-M, 即 IAGW 的 M 模块 ) 等。
4) 网络下发层 ;
所述网络下发层主要是指用于收发短信的设备, 具体来说, 所述的网络下发层可 以是 : 短信中心 (SMSC, Short Message Service Center)、 无线网络等。
如图 1 所示, 在上述的短信业务的基本解决方案中, 上述网络接入层和业务管理 层可以设置在不同的设备中, 也可以集成于同一个设备 ( 例如, IAGW 和 / 或 ISMG) 中。 因此, 可以将上述的网络接入层和业务管理层统称为通信网络系统中的接入模块 ( 例如, IAGW、 ISMG 等 ), 而将上述的网络下发层称为通信网络系统中的下发模块 ( 例如, SMSC 等 )。
在现有技术中, 上述短信网关 / 行业网关 ( 即短信网关和 / 或行业网关, 下同 ) 一 般都可根据预先设定的条件或预先设置的策略为不同的用户设置不同的优先级。优先级 高的用户所提交的短信具有高的优先级, 因此该短信将被优先尝试提交到短信中心进行下 发, 从而使得高优先级的行业客户所提交的短信在短信网关 / 行业网关上获得了差异化的
服务。但是, 在现有的技术方案中, 虽然短信网关 / 行业网关与短信中心可通过标准的对等 点短信 (SMPP, Short Message Peer to Peer) 协议进行通信, 但短信网关 / 行业网关与短 信中心在用户优先级的控制上是互相分离、 彼此独立的, 短信网关 / 行业网关并不将其所 设置的用户优先级发送至短信中心, 因此, 在短信网关 / 行业网关上具有高优先级的用户 在短信中心上无法继续获得差异化的服务, 当通信网络中出现消息下发成功率低、 消息限 流等影响网络正常运营的现象时, 上述具有高优先级的用户在消息下发成功率等重要指标 上无法和低优先级的用户区别开来, 从而影响了高优先级用户的用户体验, 引起了高优先 级用户在一定程度上的不满。
其次, 短信网关、 行业网关和短信中心中一般都具有相应的重发调度机制。其中, 短信网关和行业网关仅针对少数的几种错误 ( 例如, 接口无应答、 接口出错等 ) 进行重发 ; 短信中心的重发调度机制虽然相对比较较为完善, 针对 1 ~ 255 号错误都可以配置重发策 略, 但依然存在进行优化的空间。
再次, 现有技术中的短信网关、 行业网关、 短消息中心等网元都是独立的提供错误 跟踪和分析机制, 而且各个网元的错误码也是独立定义的, 因此在实际的维护工作中, 很难 清晰地定位出问题出现在哪个环节。 另外, 现有技术中的短信网关、 行业网关、 短消息中心等网元的报表也是彼此独 立, 并不统一, 每个网元的报表也仅能反映当前网元的消息状态, 而不能反映整体的运行状 态, 从而无法控制短信发送过程中短信的发送速度, 也无法实现测试短信的发送速度的调 节配置, 以满足不同业务的实际测试要求。
发明内容
有鉴于此, 本发明实施例的目的在于提供一种短信的调度方法和系统, 从而对用 户的短信下发进行统一地调度。
为达到上述目的, 本发明实施例中的技术方案是这样实现的 :
一种短信的调度方法, 该方法包括 :
分别为接入模块和下发模块设置与该用户对应的调度类 ;
将所设置的调度类分别发送给接入模块、 下发模块和核心调度模块 ;
所述核心调度模块根据所接收到的调度类, 控制所述接入模块和下发模块分别根 据所接收到的调度类对该调度类对应的用户所发送的短信进行统一地调度。
所述分别为接入模块和下发模块设置与该用户对应的调度类包括 :
为接入模块设置与该用户对应的接入模块调度类, 为下发模块设置与该用户对应 的下发模块调度类 ;
所述接入模块调度类与下发模块调度类是相同的调度类或不同的调度类 ;
所述将所设置的调度类分别发送给接入模块、 下发模块和核心调度模块包括 :
将所述接入模块调度类发送给接入模块和核心调度模块, 并将所述下发模块调度 类发送给下发模块和核心调度模块。
所述分别为接入模块和下发模块设置与用户对应的调度类包括 :
根据用户的优先级分别为接入模块和下发模块设置与该用户对应的调度类。
所述根据用户的优先级分别为接入模块和下发模块设置与该用户对应的调度类包括 :
预先设置一种或多种调度类 ; 确定不同优先级的用户与所设置的调度类之间的对应关系 ; 根据所述对应关系分别为接入模块和下发模块设置与各个用户所对应的调度类。 所述调度类包括 : 两个以上的预先设置的调度动作以及与各调度动作相关的调度策略 ; 其中, 所述调度策略为该调度类中的各个调度动作的执行信息。
所述预先设置的调度动作为下述调度动作中的任意一个 :
调度动作 1 : 使用常规的短信下发方法下发短信 ;
调度动作 2 : 以闪电短信的形式下发原始短信 ;
调度动作 3 : 以闪电短信的形式下发提示短信 ;
调度动作 4 : 通过交互语音应答系统主动呼叫接收端用户, 提醒接收端用户进行 原始短信的聆听 ;
调度动作 5 : 通过交互语音应答系统主动呼叫接收端用户, 提醒接收端用户进行 提示短信的聆听 ;
调度动作 6 : 通过人工坐席系统发送原始短信 ;
调度动作 7 : 通过电子邮件系统转发原始短信 ;
调度动作 8 : 通过即时消息系统转发原始短信 ;
调度动作 9 : 通过接收端用户的办公系统转发原始短信 ;
调度动作 10 : 成功结束 ;
调度动作 11 : 失败结束 ;
且任意一个调度类中包括所述调度动作 10 和调度动作 11 中的任意一个或两个。
所述调度类中的调度动作包括 : 调度动作 1、 调度动作 2、 调度动作 4、 调度动作 6、 调度动作 10 和调度动作 11 ;
所述调度类中的调度策略为 :
首先执行调度动作 1,
如果调度动作 1 成功, 则执行调度动作 10 ; 如果调度动作 1 失败, 则根据调度动作 1 失败的原因选择并执行下一个调度动作 ;
所述根据调度动作 1 失败的原因选择并执行下一个调度动作包括 :
当调度动作 1 失败的原因为接收端的内存满时, 执行调度动作 2 或调度动作 4 ;
当调度动作 1 失败的原因为接收端出现其它错误时, 执行调度动作 4 ;
当调度动作 1 失败的原因为网络出现错误时, 执行调度动作 11 ;
其中,
如果调度动作 2 成功, 则执行调度动作 10 ; 如果调度动作 2 失败, 则执行调度动作 4;
如果调度动作 4 成功, 则延迟预定的时间后, 执行调度动作 1 ; 如果调度动作 4 失 败, 则执行调度动作 6 ;
如果调度动作 6 成功, 则执行调度动作 10 ; 如果调度动作 6 失败, 则执行调度动作 11。
所述调度类中的调度动作包括 : 调度动作 1、 调度动作 10 和调度动作 11 ;
所述调度类中的调度策略为 :
首先执行调度动作 1,
如果调度动作 1 成功, 则执行调度动作 10 ; 如果调度动作 1 失败, 则判断是否满足 预先设置的终止条件, 如果是, 则执行调度动作 11 ; 如果否, 则延迟预定的时间后, 再次执 行调度动作 1。
所述调度类中的调度动作包括 : 调度动作 1、 调度动作 6、 调度动作 10 和调度动作 11 ;
所述调度类中的调度策略为 :
首先执行调度动作 1,
如果调度动作 1 成功, 则执行调度动作 10 ;
如果调度动作 1 失败, 则根据调度动作 1 失败的原因选择并执行下一个调度动 作;
所述根据调度动作 1 失败的原因选择并执行下一个调度动作包括 :
当调度动作 1 失败的原因为接收端出现错误时, 执行调度动作 6 ; 当调度动作 1 失败的原因为除接收端出现错误之外的原因时, 则判断是否满足预 先设置的终止条件, 如果是, 则执行调度动作 11 ; 如果否, 则延迟预定的时间后, 再次执行 调度动作 1。
所述终止条件为 : 对调度动作 1 的重复执行次数的限制 ; 或对该调度类的执行时 间的限制。
所述核心调度模块根据所接收到的调度类, 控制所述接入模块和下发模块分别根 据所接收到的调度类对该调度类对应的用户所发送的短信进行统一地调度包括 :
所述核心调度模块根据所接收到的接入模块调度类向接入模块发送相应的接入 指令, 通过该接入指令控制所述接入模块根据其所接收到的接入模块调度类对该调度类对 应的用户所发送的短信进行调度 ;
所述核心调度模块根据所接收到的下发模块调度类向下发模块发送相应的下发 指令, 通过该下发指令控制所述下发模块根据其所接收到的下发模块调度类对该调度类对 应的用户所发送的短信进行调度。
该方法还进一步包括 :
当所述调度类中的调度动作失败时, 该调度动作的执行者将向所述核心调度模块 发送相应的失败信息 ; 所述失败信息中至少包含与该调度动作失败相关的信息。
本发明的实施例中还提供了一种短信的调度系统, 该系统包括 : 门户模块、 核心调 度模块、 接入模块和下发模块 ;
所述门户模块, 用于分别为接入模块和下发模块设置与该用户对应的调度类 ; 将 所设置的调度类分别发送给所述接入模块、 下发模块和核心调度模块 ;
所述核心调度模块, 用于根据所接收到的调度类, 通过接入指令和下发指令分别 控制所述接入模块和下发模块根据所接收到的调度类对该调度类对应的用户所发送的短 信进行统一地调度 ;
所述接入模块, 用于根据所述接入指令以及所接收到的调度类对该调度类对应的
用户所发送的短信进行调度 ;
所述下发模块, 用于根据所述下发指令以及所接收到的调度类对该调度类对应的 用户所发送的短信进行调度。
该系统还进一步包括 : 备用下发模块 ;
所述核心调度模块, 还用于通过定制接口与所述备用下发模块进行通信, 并通过 备用下发指令控制所述备用下发模块对相应的短信进行调度 ;
所述备用下发模块, 用于根据所述备用下发指令对该指令所对应的短信进行调 度。
所述备用下发模块中包括 :
交互语音应答系统、 人工座席系统、 电子邮件系统、 即时消息系统、 接收端用户的 办公系统中的任意一个或多个系统。
综上可知, 本发明的实施例中提供了一种短信的调度方法和系统。在上述的方法 和系统中, 由于可分别为接入模块和下发模块设置与该用户对应的接入模块调度类和下发 模块调度类, 且核心调度模块可根据所接收到的接入模块调度类和下发模块调度类对所述 的接入模块和下发模块分别进行控制, 从而可实现对同一个用户的短信下发的统一调度。 附图说明
图 1 为现有技术中短信业务的基本解决方案的结构示意图。 图 2 为本发明实施例中短信的调度系统的结构示意图。 图 3 为本发明实施例中短信的调度方法的流程图。具体实施方式
为使本发明的目的、 技术方案和优点表达得更加清楚明白, 下面结合附图及具体 实施例对本发明再作进一步详细的说明。
在本发明的实施例中, 提供了一种短信的调度系统。图 2 为本发明实施例中短信 的调度系统的结构示意图。如图 2 所示, 该系统包括 : 门户 (Portal) 模块、 核心调度模块 (Kerne-Schedule)、 接入模块和下发模块。
所述门户模块, 用于分别为接入模块和下发模块设置与该用户对应的调度类 ; 将 所设置的调度类分别发送给所述接入模块、 下发模块和核心调度模块 ;
所述核心调度模块, 用于根据所接收到的调度类, 通过接入指令和下发指令分别 控制所述接入模块和下发模块根据所接收到的调度类对该调度类对应的用户所发送的短 信进行统一地调度 ;
所述接入模块, 用于根据所述接入指令以及所接收到的调度类对该调度类对应的 用户所发送的短信进行调度 ;
所述下发模块, 用于根据所述下发指令以及所接收到的调度类对该调度类对应的 用户所发送的短信进行调度。
另外, 所述短信的调度系统中还可包括一个备用下发模块。所述核心调度模块可 通过定制接口与所述备用下发模块进行通信, 并通过备用下发指令控制所述备用下发模块 对相应的短信进行调度 ;而所述备用下发模块, 则用于根据所述备用下发指令对该指令所对应的短信进行调度。 在本发明的实施例中, 所述核心调度模块可通过 SMPP 协议与所述接入模块和下 发模块通信 ; 而所述备用下发模块中可以包括 : 交互语音应答 (IVR, Interactive Voice Response) 系统、 人工座席系统、 电子邮件系统、 即时消息系统、 接收端用户的办公系统等系 统中的任意一个或多个系统。以图 2 所示为例, 图 2 中的备用下发模块包括 IVR 系统和人 工座席系统。
此外, 上述根据用户的优先级分别为接入模块和下发模块设置与该用户对应的调 度类的具体实现方式, 以及核心调度模块控制所述接入模块和下发模块根据所接收到的调 度类对该调度类对应的用户所发送的短信进行统一地调度的具体实现方式将在随后的对 本发明的实施例中所提供的一种短信的调度方法的描述中进行详细地介绍。
基于上述的短信的调度系统, 在本发明的实施例中, 还提供了一种短信的调度方 法。 在该调度方法中, 可首先分别为接入模块和下发模块设置与该用户对应的调度类 ; 然后 将所设置的调度类分别发送给接入模块、 下发模块和核心调度模块 ; 所述核心调度模块根 据所接收到的调度类, 控制所述接入模块和下发模块分别根据所接收到的调度类对该调度 类对应的用户所发送的短信进行统一地调度。
图 3 为本发明实施例中短信的调度方法的流程图。如图 3 所示, 本发明实施例中 短信的调度方法包括如下所述的步骤 :
步骤 301, 分别为接入模块和下发模块设置与该用户对应的调度类。
在常用的通信网络系统中, 一般都是通过短信通道来下发用户所需发送的短信 息, 当通过上述短信通道下发短信失败时, 系统可根据具体的错误原因采用多种技术手段 来对上述发送失败的短信息进行处理。 例如, 短信网关和行业网关可针对接口无应答、 接口 出错等错误提示重新发送上述发送失败的短信息, 而短信中心则可针对 1 ~ 255 号错误分 别配置相对应的重发策略。一般来说, 可将上述各种发送短信息的技术手段统称为调度动 作。
在本发明的实施例中, 可以使用多种预先设置的调度动作来实现对用户短信的调 度。例如, 对于用户 ( 例如, 高优先级的集团用户 ) 下发的给接收端用户的短消息 ( 即 MT 业务, 如短信群发业务等 ), 当用户所需发送的短信在短信通道下发失败时, 可根据错误原 因对所述下发失败的短信进行调度。在本发明的实施例中, 进行上述调度时所使用的调度 动作包括 :
1) 调度动作 1(Action1) : 使用常规的短信下发方法下发短信。
在该调度动作 1 中, 可使用本领域中常规的短信下发方法, 直接通过接入模块和 下发模块将用户所需发送的短信下发给相应的接收端用户。
2) 调度动作 2(Action2) : 以闪电短信 ( 即闪信 ) 的形式下发原始短信。
所述的闪电短信是中国移动推出的一项短信业务, 也称为免提短信。闪电短信与 普通短信的不同之处在于 : 当用户接收到闪电短信后, 该闪电短信的内容将直接显示在该 用户的移动终端 ( 例如, 手机 ) 的屏幕上, 用户无需通过操作进入相应的菜单来进行阅读。
在该调度动作 2 中, 将以闪电短信的方式将用户所需发送的原始短信下发给相应 的接收终端。例如, 如果由接入模块执行该调度动作 2, 则接入模块将该原始短信以闪电短
信的形式下发给下发模块, 再由下发模块将该闪电短信下发给该原始短信的接收端用户 ; 如果是由下发模块执行该调度动作 2, 则该下发模块直接将该原始短信以闪电短信的形式 下发给该原始短信的接收端用户。
3) 调度动作 3(Action3) : 以闪电短信的形式下发提示短信。
在该调度动作 3 中, 将使用闪电短信的方式将与用户所需发送的原始短信相对应 的提示短信下发给相应的接收终端, 提醒接收终端接收上述的原始短信。 其中, 接入模块和 下发模块执行调度动作 3 的方式与上述执行调度动作 2 的方式相类似, 在此不再赘述。
4) 调度动作 4(Action4) : 通过 IVR 系统主动呼叫接收端用户, 提醒接收端用户进 行原始短信的聆听。
在该调度动作 4 中, 将通过上述的 IVR 系统主动呼叫接收端用户, 提醒接收端用户 进行原始短信的聆听, 所述原始短信的聆听即 IVR 系统直接将原始短信的内容通过语音的 形式播放, 使得接收端用户获知该原始短信的内容。
因此, 在该调度动作 4 中, 可通过上述的 IVR 系统主动呼叫接收端用户, 直接将原 始短信内容通过语音的形式播放, 使该用户得到原始信息内容。 例如, 如果由接入模块执行 该调度动作 4, 则接入模块可将该原始短信发送给核心调度模块, 由核心调度模块通过定制 接口将原始短信以及相关指令发送给 IVR 系统, 使得该 IVR 系统主动呼叫接收端用户, 直接 将该原始短信内容通过语音的形式播放 ; 同理, 如果是由下发模块执行该调度动作 4, 则该 下发模块可将该原始短信发送给核心调度模块, 由核心调度模块通过定制接口将原始短信 以及相关指令发送给 IVR 系统, 使得该 IVR 系统主动呼叫接收端用户, 直接将该原始短信内 容通过语音的形式播放。 5) 调度动作 5(Action5) : 通过 IVR 系统主动呼叫接收端用户, 提醒接收端用户进 行提示短信的聆听。
在该调度动作 5 中, 可通过上述的 IVR 系统主动呼叫接收端用户, 提醒接收端用户 进行提示短信的聆听, 所述提示短信的聆听即 IVR 系统直接将提示短信的内容通过语音的 形式播放, 提示接收端用户接收原始短信。其中, 接入模块和下发模块执行调度动作 5 的方 式与上述执行调度动作 4 的方式相类似, 在此不再赘述。
6) 调度动作 6(Action6) : 通过人工坐席系统发送原始短信。
在该调度动作 6 中, 可将上述原始短信转发给人工座席系统, 由人工座席系统通 过人工的方式 ( 例如, 电话通知、 书面通知或人工通知等 ) 将原始短信发送给该原始短信的 接收端用户。其中, 接入模块和下发模块执行调度动作 6 的方式与上述执行调度动作 4 的 方式相类似, 在此不再赘述。
7) 调度动作 7(Action7) : 通过电子邮件 (E-Mail) 系统转发原始短信。
在该调度动作 7 中, 可将上述原始短信转发给电子邮件系统, 由该电子邮件系统 通过电子邮件将原始短信发送给该原始短信的接收端用户。其中, 接入模块和下发模块执 行调度动作 7 的方式与上述执行调度动作 4 的方式相类似, 在此不再赘述。
8) 调度动作 8(Action8) : 通过即时消息 (IM) 系统转发原始短信。
在该调度动作 8 中, 可将上述原始短信转发给即时消息系统, 由该即时消息系统 通过即时消息的方式将原始短信发送给该原始短信的接收端用户。其中, 接入模块和下发 模块执行调度动作 8 的方式与上述执行调度动作 4 的方式相类似, 在此不再赘述。
9) 调度动作 9(Action9) : 通过接收端用户的办公 (OA) 系统转发原始短信。
当该原始短信的接收端用户具有相应的办公系统时, 可使用该调度动作 9, 即可将 上述原始短信转发给该接收端用户的办公系统, 由该办公系统通过即时消息、 内部邮件等 各种方式将原始短信发送给该接收端用户。其中, 接入模块和下发模块执行调度动作 9 的 方式与上述执行调度动作 4 的方式相类似, 在此不再赘述。
10) 调度动作 10(Action10) : 成功结束。
当执行调度动作 10 时, 可输出成功计费话单, 并结束整个流程。当上述原始短信 被接收端用户成功接收时, 可使用该调度动作 10。
11) 调度动作 11(Action11) : 失败结束。
当执行调度动作 11 时, 可输出失败计费话单, 并结束整个流程。当上述原始短信 在下发过程中出现错误, 使得该原始短信未被接收端用户成功接收时, 可使用该调度动作 11。
以上所列为本发明的具体实施例中常用的几种调度方式。在本发明的技术方案 中, 还可以根据实际需要设置其他的调度动作, 在此不再赘述。
另外, 在本发明的实施例中, 如果某个调度动作失败, 即未能完成对短信的调度 ( 例如, 重发短信失败等 ), 则该调度动作还可根据实际情况的需要, 向系统中的相应模块 ( 例如, 接入模块、 下发模块、 核心调度模块等 ) 返回一个失败信息 ( 例如, 失败原因等信 息 ), 从而便于系统来定位错误出现的位置和原因。 在现有技术中, 通信网络系统中的接入模块 ( 例如, 短信网关、 行业网关等 ) 和下 发模块 ( 例如, 短信中心等 ) 在用户优先级的控制上是互相分离、 彼此独立的, 即接入模块 和下发模块均使用各自独立的调度动作。
在本发明的实施例中, 可预先设置多种调度动作, 并分别为上述的接入模块和下 发模块设置与该用户对应的调度类, 从而对用户短信的下发实现统一地调度。 较佳的, 在本 发明的实施例中, 还可预先设置多种调度动作, 并根据用户的优先级分别为上述的接入模 块和下发模块设置与该用户对应的调度类, 从而对用户短信的下发实现统一地调度。所述 的调度类可以包括两个以上的调度动作以及与各调度动作相关的调度策略, 而所述的调度 策略为该调度类中的各个调度动作的执行信息。 其中, 所述执行信息可以包括 : 调度类中的 各个调度动作的执行顺序、 执行条件和 / 或执行时间等信息。调度类中的各个调度动作可 根据相应的调度策略顺序执行, 因此, 在本发明的实施例中, 也可将调度类看成是由多个调 度动作串联 ( 所述的串联用于表示各个调度动作之间执行顺序的先后关系 ) 而成的调度动 作集合。 其中, 调度类中的各个调度动作可以部分相同或全部相同, 也可以是完全不同的调 度动作 ; 但是, 任意一个调度类中都必然包括调度动作 10 和调度动作 11 中的任意一个或两 个, 以结束整个流程。在本发明的实施例中, 同一个调度类中最多可包括 255 个调度动作, 即最多可支持 255 个调度动作的串联。
为了对本发明的技术方案进行更加清楚的介绍, 以下将以本发明的实施例中几种 调度类为例进行说明。
一、 第一种调度类。
在该调度类中, 可以包括 6 种调度动作 : 上述的调度动作 1、 调度动作 2、 调度动作 4、 调度动作 6、 调度动作 10 和调度动作 11。
在该调度类中, 所述的调度策略为 : 首先执行调度动作 1, 并根据后续出现的实际 情况确定后续所执行的调度动作。
具体来说 :
1、 对于调度动作 1 :
1.1) 如果调度动作 1 成功, 则执行调度动作 10。
即如果使用常规的短信下发方法下发短信成功, 则执行调度动作 10, 结束整个流 程, 并输出成功计费话单。
1.2) 如果调度动作 1 失败, 则根据失败的原因选择并执行下一个调度动作 ; 具体 来说, 包括 :
1.2.1) 当失败原因为接收端的内存满时, 执行调度动作 2, 即以闪电短信的形式 将原始短信下发给接收端用户 ;
另外, 在本发明的另一实施例中, 当失败原因为接收端的内存满时, 也可执行调度 动作 4, 即以 IVR 系统中的主动呼叫方式, 提醒接收端用户删除接收端的内存中的短信, 以 留出适当的存储空间接收即将下发给该接收端用户的短信 ;
1.2.2) 当失败原因为接收端出现其它错误 ( 例如, 接收端的信号较差 ) 时, 执行调 度动作 4, 即以 IVR 系统中的主动呼叫方式, 提醒接收端用户进行原始短信聆听 ;
1.2.3) 当失败原因为下发短信的网络出现错误时, 执行调度动作 11, 即结束整个 流程, 并输出失败计费话单和失败的相关信息 ;
2、 对于调度动作 2 :
2.1) 如果调度动作 2 成功, 则执行调度动作 10。
即如果使用闪电短信的形式下发原始短信成功, 则执行调度动作 10, 结束整个流 程, 并输出成功计费话单。
2.2) 如果调度动作 2 失败, 则执行调度动作 4 ;
即如果使用闪电短信的形式下发原始短信失败, 则执行调度动作 4, 即以 IVR 系统 中的主动呼叫方式, 提醒接收端用户进行原始短信聆听。
3、 对于调度动作 4 :
3.1) 如果调度动作 4 成功, 则延迟预定的时间后, 执行调度动作 1。
如果调度动作 4 成功, 即接收端用户接收到了 IVR 系统的主动呼叫, 则在延迟预定 的时间 ( 例如, 5 分钟 ) 后, 执行调度动作 1, 即使用常规的短信下发方法再次将原始短信下 发给接收端用户。
3.2) 如果调度动作 4 失败, 则执行调度动作 6 ;
如果调度动作 4 失败, 即 IVR 系统的主动呼叫接收端用户未成功, 则执行调度动作 6, 即通过人工坐席方式将原始短信下发给接收端用户。
4、 对于调度动作 6 :
4.1) 如果调度动作 6 成功, 则执行调度动作 10。
如果调度动作 6 成功, 即通过人工坐席方式将原始短信成功下发给接收端用户, 则执行调度动作 10, 即输出成功计费话单, 并结束整个流程。
4.2) 如果调度动作 6 失败, 则执行调度动作 11。
如果调度动作 6 失败, 即通过人工坐席方式将原始短信下发给接收端用户失败,则执行调度动作 11, 即输出失败计费话单, 并结束整个流程。
5、 对于调度动作 10 :
根据调度动作 10 的内容可知, 在执行调度动作 10 后, 将输出成功计费话单, 并结 束整个流程。
6、 对于调度动作 11 :
根据调度动作 11 的内容可知, 在执行调度动作 11 后, 将输出失败计费话单, 并结 束整个流程。 此外, 在该调度动作 11 中, 还可根据实际情况的需要输出失败的相关信息 ( 例 如, 失败原因等信息 )。
二、 第二种调度类。
在该调度类中, 可以包括 : 调度动作 1、 调度动作 10 和调度动作 11 ; 而该调度类中 的调度策略为 : 首先执行调度动作 1, 并根据后续出现的实际情况执行相应的调度动作。具 体来说 :
对于调度动作 1 :
1.1) 如果调度动作 1 成功, 则执行调度动作 10。
即如果使用常规的短信下发方法下发短信成功, 则执行调度动作 10, 结束整个流 程, 并输出成功计费话单。
1.2) 如果调度动作 1 失败, 则判断是否满足终止条件, 如果是, 则执行调度动作 11 ; 如果否, 则延迟预定的时间 ( 例如, 5 分钟 ) 后, 再次执行调度动作 1。
其中, 所述终止条件可以根据实际应用情况预先进行设置。 在本发明的实施例中, 所述的终止条件可以是对调度动作 1 的重复执行次数的限制 ( 例如, 当已经重复执行了 5 次调度动作 1 时, 视为该终止条件得到满足 ), 也可以是对该调度类的执行时间的限制 ( 例 如, 从该调度类第一次执行调度动作 1 开始计时, 当计时超过预定时限时, 视为该终止条件 得到满足 ), 还可以是其它的限制条件, 在此不再一一赘述。
因此, 在本调度类中, 当调度动作 1 失败, 且不满足终止条件时, 将在延迟预定的 时间后, 重复执行调度动作 1 ; 而当调度动作 1 失败, 且满足终止条件时, 则执行调度动作 11, 结束整个流程, 并输出失败计费话单。
由上可知, 在该调度类中, 当接收端用户未成功接收到上述原始短信时, 可在间隔 一定时间后, 重复执行调度动作 1, 直到接收端用户成功地接收到上述原始短信或满足终止 条件为止。
三、 第三种调度类。
在该调度类中, 可以包括 : 调度动作 1、 调度动作 6、 调度动作 10 和调度动作 11 ; 而 该调度类中的调度策略为 : 首先执行调度动作 1, 并根据后续出现的实际情况执行相应的 调度动作。具体来说 :
对于调度动作 1 :
1.1) 如果调度动作 1 成功, 则执行调度动作 10。
1.2) 如果调度动作 1 失败, 则根据失败原因选择并执行下一个调度动作 ; 具体来 说, 包括 :
1.2.1) 当调度动作 1 失败的原因为接收端出现错误 ( 例如, 接收端的内存满 ) 时, 执行调度动作 6, 即直接通过人工坐席方式将原始短信下发给接收端用户 ;1.2.2) 当调度动作 1 失败的原因为除接收端出现错误之外的原因 ( 例如, 下发 短信的网络出现错误 ) 时, 则判断是否满足预先设置的终止条件, 如果是, 则执行调度动作 11 ; 如果否, 则延迟预定的时间 ( 例如, 5 分钟 ) 后, 再次执行调度动作 1, 即再次使用常规的 短信下发方法再次将原始短信下发给接收端用户。
以上所述为本发明的具体实施例中可能用到的几种调度类, 系统可分别为接入模 块和下发模块设置与用户对应的调度类。例如, 系统可根据用户的优先级的高低分别为接 入模块和下发模块设置与用户对应的调度类。 具体来说, 在本发明的实施例中, 可根据实际 需求预先设置一种或多种调度类, 并确定不同优先级的用户与上述所设置的调度类之间的 对应关系, 从而可根据上述对应关系分别为接入模块和下发模块设置与各个用户所对应的 调度类。
以上述所介绍的三种调度类为例, 当根据上述的方法预先设置了上述三种调度类 之后, 可预先设置具有不同优先级的用户与上述三种调度类之间的对应关系, 例如, 所述的 对应关系为 : 具有高优先级的用户对应于第三种调度类, 具有中优先级的用户对应于第一 种调度类, 而具有低优先级的用户对应于第二种调度类。 因此, 如果发送的短信的用户为具 有高优先级的用户, 则系统将分别为接入模块和下发模块设置与该用户所对应的第三种调 度类 ; 如果发送的短信的用户为具有中优先级的用户, 则系统将分别为接入模块和下发模 块设置与该用户所对应的第一种调度类 ; 如果发送的短信的用户为具有低优先级的用户, 则系统将分别为接入模块和下发模块设置与该用户所对应的第二种调度类。 此外, 在具体的实际应用中, 还可根据用户的需求以及用户的优先级设置其它种 类的调度类, 具体的设置方式以及调度类的具体内容在此不再赘述。
在本发明的实施例中, 可根据用户的优先级分别为上述的接入模块和下发模块设 置与该用户对应的调度类, 从而对用户短信的下发实现统一地调度。 其中, 可将为所述接入 模块设置的调度类称为接入模块调度类, 将为所述下发模块设置的调度类称为下发模块调 度类, 即可根据用户的优先级为接入模块设置与该用户对应的接入模块调度类, 而根据用 户的优先级为下发模块设置与该用户对应的下发模块调度类。 所述接入模块调度类和下发 模块调度类可以使用上述介绍的三种调度类, 也可以使用其它的根据实际情况设置的调度 类; 另外, 对于同一个用户, 所设置的接入模块调度类和下发模块调度类可以是相同的调度 类, 也可以是不同的调度类。
步骤 302, 将所设置的调度类分别发送给接入模块、 下发模块和核心调度模块。
在本步骤中, 当接入模块调度类和下发模块调度类是相同的调度类时, 可将该调 度类直接分别发送给接入模块、 下发模块和核心调度模块 ; 而当接入模块调度类和下发模 块调度类是不同的调度类时, 则可将所述接入模块调度类发送给接入模块和核心调度模 块, 并将所述下发模块调度类发送给下发模块和核心调度模块。
步骤 303, 所述核心调度模块根据所接收到的调度类, 控制所述接入模块和下发模 块分别根据所接收到的调度类对该调度类对应的用户所发送的短信进行统一地调度。
在本发明的实施例中, 核心调度模块可用于根据所接收到的调度类对所述的接入 模块和下发模块分别进行控制, 从而实现对同一个用户的短信下发的统一调度。
具体来说, 所述核心调度模块可通过 SMPP 协议中的与所述接入模块进行通信, 并 根据所接收到的接入模块调度类向接入模块发送相应的接入指令 ( 例如, SMPP 协议中的某
些现有的指令或新设置的与上述接入模块调度类相应的指令 ), 从而通过该接入指令控制 所述接入模块根据其所接收到的接入模块调度类对该调度类对应的用户所发送的短信进 行调度, 即所述接入模块根据其所接收到的接入指令以及所接收到的接入模块调度类, 对 该调度类对应的用户所发送的短信执行该调度类中相应的调度动作 ; 同样, 所述核心调度 模块也可通过 SMPP 协议与所述下发模块进行通信, 并根据所接收到的下发模块调度类向 下发模块发送相应的下发指令 ( 例如, SMPP 协议中的某些现有的指令或新设置的与上述下 发模块调度类相应的指令 ), 从而通过该下发指令控制所述下发模块根据其所接收到的下 发模块调度类对该调度类对应的用户所发送的短信进行调度。通过上述的方式, 可通过上 述的核心调度模块实现对同一个用户的短信下发的统一调度。
另外, 由于上述所设置的调度类中的某些调度动作可能需要通过备用下发模块 ( 例如, IVR 系统、 人工座席系统等 ) 对短信进行调度, 因此, 所述核心调度模块还可根据相 应的调度类中的调度动作与所述备用下发模块通过定制接口进行通信, 并根据上述调度动 作向备用下发模块发送相应的备用下发指令 ( 例如, 预先设置的与上述调度动作相应的指 令 ), 从而通过该备用下发指令控制所述备用下发模块执行相应的调度动作, 并将所述备用 下发模块返回的相应信息 ( 例如, 调度动作成功或失败的信息 ) 发送给接入模块或下发模 块, 从而根据相应的调度类完成对短信的调度。 此外, 当上述的调度类中的调度动作失败时, 该调度动作的执行者 ( 例如, 接入模 块、 下发模块、 备用下发模块等 ) 将向核心调度模块发送相应的失败信息, 该失败信息中至 少包含与该调度动作失败的相关信息 ( 例如, 该调度失败发生的时间、 位置、 原因等信息 ), 因此, 所述核心调度模块可根据所述的失败信息获知错误出现的位置和原因。 例如, 当接入 模块中所执行的调度类中的某个调度动作失败时, 该接入模块将向核心调度模块发送相应 的失败信息 ; 同理, 核心调度模块也可接收到下发模块、 备用下发模块等其它模块所发送的 失败信息, 因此核心调度模块可根据实际需要快速定位出错的环节, 从而实现统一的全流 程跟踪。
在上述的短信调度方法中, 由于上述的接入模块调度类和下发模块调度类都是根 据同一用户分别为接入模块和下发模块设置的, 因此可对同一个用户的短信下发实现统一 的调度 ; 同时, 系统还可根据可根据用户的优先级对用户所需下发的短信进行不同的调度 ( 即使用不同的调度类进行调度 ), 从而可实现差异化服务, 尽量满足高优先级的用户的需 求, 提高高优先级用户的用户体验 ; 另外, 由于核心调度模块还可获得各个模块 ( 例如, 接 入模块、 下发模块、 备用下发模块等 ) 发送的失败信息, 因此还可根据实际需要快速定位出 错的环节和原因, 从而实现统一的全流程跟踪 ; 此外, 由于可通过核心调度模块对短信的下 发进行统一的调度, 因此核心调度模块还可根据对短信的调度情况生成统一的报表, 并通 过统一的报表获知整个系统的运行状态, 从而可以控制短信发送过程中短信的发送速度, 实现测试短信的发送速度的调节配置, 满足不同业务的实际测试要求。
以上所述, 仅为本发明的较佳实施例而已, 并非用于限定本发明的保护范围。 凡在 本发明的精神和原则之内, 所作的任何修改、 等同替换、 改进等, 均应包含在本发明的保护 范围之内。