
1.本技术涉及任务分发技术领域,特别涉及一种短信分发方法及装置、电子设备、存储介质。
背景技术:2.虽然当前个人使用短信的次数相对较少,都是对于企业依旧经常通过短信平台给用户发送短信,并且短信发送量比较大。所以为了提升稳定性和降低成本,短信平台一搬会接入多家短信服务商来同时发送短信,所以需要将短信以及需要发送短信的手机号码分发给各家短信服务商。
3.当前,为了能使得每家短信服务商都分配有一定的短信量,以能保持合作,又要使得分配结果满足自己的需求,所以当前主要预先设置符合需求的策略,然后由短信平台按照预设的策略确定各家短信服务商的短信发送量,然后按照各家短信服务商的短信发送量,为各家短信服务商分发短信和手机号码,以通过各家短信服务商进行短信发送。
4.但是现有的方式,在向各家短信服务商分发短信和手机号码,只考虑了各家短信服务商的短信发送量,并没有考虑到短信的发送成功率,所以无法有效保证短信的到达率。
技术实现要素:5.基于上述现有技术的不足,本技术提供了一种短信分发方法及装置、电子设备、存储介质,以解决现有技术无法有效保证短信的到达率的问题。
6.为了实现上述目的,本技术提供了以下技术方案:
7.本技术第一方面提供了一种短信分发方法,包括:
8.获取各个短信服务商的当前基础信息;
9.基于各个所述短信服务商的当前基础信息,计算得到各个所述短信服务商对应的当前短信量占比;
10.依次针对每个目标手机号码,基于各个所述短信服务商的历史短信到达率,从当前短信分配量未满足对应的所述当前短信量占比的各个所述短信服务商中,选取出所述目标手机号码的短信到达率最高的所述短信服务商,并将所述目标手机号码分配给选取出的所述短信服务商;
11.分别将各个所述目标手机号码以及待发送短信发送给所分配的所述短信服务商,以通过各个所述短信服务商向各个所述目标手机号码发送所述待发送短信。
12.可选地,在上述的短信分发方法中,所述依次针对每个目标手机号码,基于各个所述短信服务商的历史短信到达率,从当前的短信分配量未满足对应的所述当前短信量占比的各个所述短信服务商中,选取出所述目标手机号码的短信到达率最高的所述短信服务商,并将所述目标手机号码分配给选取出的所述短信服务商,包括:
13.从未被标记为已分配的各个所述目标手机号码中,选取一个所述目标手机号码作为当前手机号码;
14.查询各个当前服务商对所述当前手机号码的第一序列号的历史短信到达率;其中,所述第一序列号包括手机号码中的网络识别号和地区编码;所述当前服务商指代当前短信分配量未满足对应的所述当前短信量占比的所述短信服务商;所述当前服务商对一个所述第一序列号的历史短信到达率指代所述当前服务商过去向所述第一序列号的各个手机号码发送短信的到达率;
15.选取对所述当前手机号码的第一序列号的历史短信到达率最高的所述当前服务商,确定为当前最优服务商;
16.若未查询到任意一个所述当前服务商对所述当前手机号码的第一序列号的历史短信到达率,则查询各个所述当前服务商对所述当前手机号码的第二序列号的历史短信到达率;其中,所述第二序列号为手机号码中的网络识别号;所述当前服务商对一个所述第二序列号的历史短信到达率指代所述当前服务商过去向所述第二序列号的各个手机号码发送短信的到达率;
17.选取对所述当前手机号码的第二序列号的历史短信到达率最高的所述当前服务商,确定为所述当前最优服务商;
18.若未查询到任意一个所述当前服务商对所述当前手机号码的第二序列号的历史短信到达率,则选取历史整体短信到达率最高的所述当前服务商,确定为所述当前最优服务商;其中,一个所述当前服务商的所述历史整体短信到达率指代所述当前服务商向所有手机号码发送短信的到达率;
19.将所述当前手机号码分配给所述当前最优服务商;
20.将所述目标收集号码标记为已分配;
21.判断是否还存在未被标记为已分配的所述目标手机号码;其中,若判断出还存在未被标记为已分配的所述目标手机号码,则返回执行所述从未被标记为已分配的各个所述目标手机号码中,选取一个所述目标手机号码作为当前手机号码;
22.若判断不存在未被标记为已分配的所述目标手机号码,则反馈已分配完所有所述目标手机号码。
23.可选地,在上述的短信分发方法中,所述从未被标记为已分配的各个所述目标手机号码中,选取一个所述目标手机号码作为当前手机号码,包括:
24.确定当前未被标记为已分配的各个所述目标手机号码对应的目标短信到达率;其中,所述目标手机号码对应的目标短信到达率为各个所述当前服务商对所述目标手机号码的所述第一序列号的历史短信到达率中的最大值,或在不存在任意一个所述当前服务商对所述目标手机号码的所述第一序列号的历史短信到达率时,为各个所述当前服务商对所述目标手机号码的所述第二序列号的历史短信到达率中的最大值;
25.将未被标记为已分配的各个所述目标手机号码,按照在各个所述目标手机号码对应的当前短信到达率进行降序排列;
26.选取排序在第一位的所述目标手机号码作为所述当前手机号码。
27.可选地,在上述的短信分发方法中,所述从未被标记为已分配的各个所述目标手机号码中,选取一个所述目标手机号码作为当前手机号码之前,还包括:
28.创建与各个所述目标手机号码的总数量相等的格子;
29.按照各个所述短信服务商对应的当前短信量占比,为各个所述短信服务商分配所
述格子;
30.其中,所述将所述当前手机号码分配给所述当前最优服务商,包括:
31.将所述当前手机号码放置到所述当前最优服务商的一个未被占用的所述格子中。
32.可选地,在上述的短信分发方法中,所述分别将各个所述目标手机号码以及待发送短信发送给所分配的所述短信服务商之后,还包括:
33.接收各个所述短信服务商反馈的各个所述目标手机号码的短信到达结果;
34.基于各个所述目标手机号码的短信到达结果,计算每个所述短信服务商对各个所述目标手机号码的所述第一序列号的短信到达率、对各个所述目标手机号码的所述第二序列号的短信到达率以及各个所述短信服务商的整体短信到达率。
35.本技术第二方面提供了一种短信分发装置,包括:
36.信息获取单元,用于获取各个短信服务商的当前基础信息;
37.占比计算单元,用于基于各个所述短信服务商的当前基础信息,计算得到各个所述短信服务商对应的当前短信量占比;
38.分配单元,用于依次针对每个目标手机号码,基于各个所述短信服务商的历史短信到达率,从当前短信分配量未满足对应的所述当前短信量占比的各个所述短信服务商中,选取出所述目标手机号码的短信到达率最高的所述短信服务商,并将所述目标手机号码分配给选取出的所述短信服务商;
39.发送单元,用于分别将各个所述目标手机号码以及待发送短信发送给所分配的所述短信服务商,以通过各个所述短信服务商向各个所述目标手机号码发送所述待发送短信。
40.可选地,在上述的短信分发装置中,所述分配单元,包括:
41.第一选取单元,用于从未被标记为已分配的各个所述目标手机号码中,选取一个所述目标手机号码作为当前手机号码;
42.第一查询单元,用于查询各个当前服务商对所述当前手机号码的第一序列号的历史短信到达率;其中,所述第一序列号包括手机号码中的网络识别号和地区编码;所述当前服务商指代当前短信分配量未满足对应的所述当前短信量占比的所述短信服务商;所述当前服务商对一个所述第一序列号的历史短信到达率指代所述当前服务商过去向所述第一序列号的各个手机号码发送短信的到达率;
43.第二选取单元,用于选取对所述当前手机号码的第一序列号的历史短信到达率最高的所述当前服务商,确定为当前最优服务商;
44.第二查询单元,用于未查询到任意一个所述当前服务商对所述当前手机号码的第一序列号的历史短信到达率时,查询各个所述当前服务商对所述当前手机号码的第二序列号的历史短信到达率;其中,所述第二序列号为手机号码中的网络识别号;所述当前服务商对一个所述第二序列号的历史短信到达率指代所述当前服务商过去向所述第二序列号的各个手机号码发送短信的到达率;
45.第三选取单元,用于选取对所述当前手机号码的第二序列号的历史短信到达率最高的所述当前服务商,确定为所述当前最优服务商;
46.第四选取单元,用于在未查询到任意一个所述当前服务商对所述当前手机号码的第二序列号的历史短信到达率时,选取历史整体短信到达率最高的所述当前服务商,确定
为所述当前最优服务商;其中,一个所述当前服务商的所述历史整体短信到达率指代所述当前服务商向所有手机号码发送短信的到达率;
47.号码分配单元,用于将所述当前手机号码分配给所述当前最优服务商;
48.标记单元,用于将所述目标收集号码标记为已分配;
49.判断单元,用于判断是否还存在未被标记为已分配的所述目标手机号码;其中,若判断出还存在未被标记为已分配的所述目标手机号码,则返回所述第一选取单元;
50.反馈单元,用于在判断不存在未被标记为已分配的所述目标手机号码时,反馈已分配完所有所述目标手机号码。
51.可选地,在上述的短信分发装置中,所述第一选取单元,包括:
52.确定单元,用于确定当前未被标记为已分配的各个所述目标手机号码对应的目标短信到达率;其中,所述目标手机号码对应的目标短信到达率为各个所述当前服务商对所述目标手机号码的所述第一序列号的历史短信到达率中的最大值,或在不存在任意一个所述当前服务商对所述目标手机号码的所述第一序列号的历史短信到达率时,为各个所述当前服务商对所述目标手机号码的所述第二序列号的历史短信到达率中的最大值;
53.排序单元,用于将未被标记为已分配的各个所述目标手机号码,按照在各个所述目标手机号码对应的当前短信到达率进行降序排列;
54.第一选取子单元,用于选取排序在第一位的所述目标手机号码作为所述当前手机号码。
55.可选地,在上述的短信分发装置中,还包括:
56.创造单元,用于创建与各个所述目标手机号码的总数量相等的格子;
57.格子分配单元,用于按照各个所述短信服务商对应的当前短信量占比,为各个所述短信服务商分配所述格子;
58.其中,所述号码分配单元,包括:
59.号码分配子单元,用于将所述当前手机号码放置到所述当前最优服务商的一个未被占用的所述格子中。
60.可选地,在上述的短信分发装置中,还包括:
61.接收单元,用于接收各个所述短信服务商反馈的各个所述目标手机号码的短信到达结果;
62.统计单元,用于基于各个所述目标手机号码的短信到达结果,计算每个所述短信服务商对各个所述目标手机号码的所述第一序列号的短信到达率、对各个所述目标手机号码的所述第二序列号的短信到达率以及各个所述短信服务商的整体短信到达率。
63.本技术第三方面提供了一种电子设备,包括:
64.存储器和处理器;
65.其中,所述存储器用于存储程序;
66.所述处理器用于执行所述程序,所述程序被执行时,具体用于实现如上述任意一项所述的短信分发方法。
67.本技术第四方面提供了一种计算机存储介质,用于存储计算机程序,所述计算机程序被执行时,用于实现如上述任意一项所述的短信分发方法。
68.本技术实施例提供了一种短信分发方法,获取各个短信服务商的当前基础信息。
然后基于各个短信服务商的当前基础信息,计算得到各个短信服务商对应的当前短信量占比。依次针对每个目标手机号码,基于各个短信服务商的历史短信到达率,从当前短信分配量未满足对应的当前短信量占比的各个短信服务商中,选取出目标手机号码的短信到达率最高的短信服务商,并将目标手机号码分配给选取出的短信服务商。分别将各个目标手机号码以及待发送短信发送给所分配的短信服务商,以通过各个短信服务商向各个目标手机号码发送待发送短信。从而不仅保证了按照各个短信服务商的短信发送量进行分配,并且还基于各个短信服务商的历史短信到达率,将短信尽可能地分配给高到达率的短信服务商,进而还有效保证了短信的到达率。
附图说明
69.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
70.图1为本技术实施例提供的一种短信平台的架构示意图;
71.图2为本技术实施例提供的一种短信分发方法的流程图;
72.图3为本技术实施例提供的一种目标手机号码分配的方法的流程图;
73.图4为本技术实施例提供的一种选取当前手机号码的方法的流程图;
74.图5为本技术实施例提供的一种到达率统计方法的流程图;
75.图6为本技术实施例提供的一种短信分发装置的架构示意图;
76.图7为本技术实施例提供的一种电子设备的架构示意图。
具体实施方式
77.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
78.在本技术中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
79.本技术提供了一种短信分发方法,以解决现有技术无法有效保证短信的到达率的问题。
80.可选地,为了实现本技术提供的一种短信分发方法,本技术实施例提供了一种短信平台,如图1所示,包括:
81.短信接收后端、短信分配后端以及短信发送后端。
82.其中,短信接收后端主要分为短信发送渠道管理组件、短信发送渠道分量组件和短信发送信息录入组件。
83.短信发送渠道管理组件,用于记录短信平台对接的各个短信服务商的相关数据,比如,短息服务商名称、价格、指定时间成功率、短信发送接口地址、接口密钥等信息,以便于后续利用这些信息进行短信量占比的计算,以及短信的发送等。所以可以将签约的短信服务商的相关数据通过短信发送渠道管理组件,添加到短信品台中。
84.短信发送渠道分量组件,主要用于根据预先设定的算法,基于各个短信服务商的当前基础信息,计算各个短信服务商对应的当前短信量占比,从而可以保证各家短信服务商都能发送一定量的短信,也能满足降低成本等需求。
85.短信发送信息录入组件主要用于让用户填写需要发送的短信的相关新,例如,发送的手机号码以及短信发送的内容等。
86.短信分配后端,主要用于依据各个短信服务商的短信发送成功率,按照制定了短信细分配算法,将各个手机号码和短信分配给各家短信服务商进行短信发送,在让短信发送给各个短信服务商的量符合短信量占比的同时,使各个短信服务商的整体的短信到达率最高。
87.短信发送后端包括渠道方发送短信组件和记录短信成功率组件。
88.渠道方发送短信组件用于根据分配结果,将相应的手机号码以及短信作为参数,并且还可以带上对应的接口密钥,通过短信服务商的接口地址,发送给相应的短信服务商。
89.记录短信成功率组件,用于在短信发送完毕后,接收各个短信服务商绘制的短信发送的成功率,以及各个手机号码的发送情况,并利用接收到的信息计算前7位、手机号码前3位和整体的短信发送成功率。
90.基于上述提供的短信平台,本技术另一实施例提供了一种短信分发方法,如图2所示,包括以下步骤:
91.s201、获取各个短信服务商的当前基础信息。
92.其中,各个短信服务商的当前基础信息,具体可以包括短信服务商的名称、报价、各项成功率、接口地址以及密钥等。
93.s202、基于各个短信服务商的当前基础信息,计算得到各个短信服务商对应的当前短信量占比。
94.具体的,可以根据需求预先设置相应的算法,并基于预设的算法,利用各个短信服务商的当前基础信息中的数据,计算得到各个短信服务商对应的当前短信量占比。
95.可选地,若是先前计算过各个短信服务商对应的当前短信量占比,并且预设的算法和各个短信服务商的基础信息都没有变化,则说明各个短信服务商对应的当前短信量占比没有变化,此时可以直接读取先前计算得到的各个短信服务商对应的当前短信量占比。
96.s203、依次针对每个目标手机号码,基于各个短信服务商的历史短信到达率,从当前短信分配量未满足对应的当前短信量占比的各个短信服务商中,选取出目标手机号码的短信到达率最高的短信服务商,并将目标手机号码分配给选取出的短信服务商。
97.其中,目标手机号码指的是本次需要向其发送短信的手机号码。
98.需要说明的是,不同的短信服务商向不同类型的手机号码发送短信的到达率可能是不同的,例如,不同短信服务商向不同地区或者不同运营商的手机号码发送短信的到达
率是不相同的。
99.所以为了能保证短信的到达率。在本技术实施例中,会预先获取各个短信服务商的历史短信到达率,即各个短信服务商在过去向各个类型的手机号码发送短信的到达率。从而可以基于各个短信服务商的历史短信到达率,预测各个短信服务商对于目标手机号码的短信到达率,然后将目标手机号码分配给短信到达率最高的短信服务商,从而保证短信的到达率。
100.而为了使得,对于各个短信服务商的短信的分配量,需要符合步骤s202计算得到的当前短信量占比,所以每次需要从当前短信分配量未满足对应的当前短信量占比的各个短信服务商中选取短信服务商进行分配。
101.可选地,本技术另一实施例中,步骤s203的一种实施方式,如图3所示,包括:
102.s301、从未被标记为已分配的各个目标手机号码中,选取一个目标手机号码作为当前手机号码。
103.需要说明的是,在本技术实施例中,对于已经分配了短信服务商的目标手机号码会将其标记为目标手机号码,所以未被标记为已分配的目标手机号码即为未分配的目标手机号码。从未被标记为已分配的各个目标手机号码中,选取一个目标手机号码作为当前手机号码,以针对该当前手机号码执行后续的步骤。
104.由于每个短信服务商所能分配的手机号码是固定的,所以为了进一步提供短信到达率,避免将到达率相对较低的手机号码,分配给了某一个短信服务商,使得到达率较高的手机号码无法分配给该短信服务商,因此在本技术实施例中,需要先选取在各个还未分配满的短信服务商中到达率最高的目标手机号码进行处理。
105.例如,对于手机号码a和b,通过短信服务商p的发送短信的到达率都是最高的,即针对手机号码a和b执行后续步骤,确定出的最优服务商都是p。但是手机号码a通过短信服务商p发送短信的到达率为50%,而手机号码b则为90%,并且a和b通过其他短信服务商打算短信的到达率都比较低。若是先处理手机号码a,则其会分配给短信服务商p,而可能导致手机号码b无法分配给短信服务商,只能分配给其他短信服务商,从而在没有明显提高手机号码a的到达率的情况下,还大幅降低了手机号码b的到达率,进而降低了本次的整体的到达率。
106.因此,在本技术另一实施例中,步骤s301的一种具体实施方式,如图4所示,包括:
107.s401、确定当前未被标记为已分配的各个目标手机号码对应的目标短信到达率。
108.其中,目标手机号码对应的目标短信到达率为各个当前服务商对目标手机号码的第一序列号的历史短信到达率中的最大值。
109.当前服务商指代当前短信分配量未满足对应的当前短信量占比的短信服务商。起初所有短信服务商都属于当前服务商,并且可以每将一个目标手机号码分配到一个短信服务商中,则需要判断该短信服务商的当前短信分配量未满足对应的当前短信量占比,若是已满足,则不再将其作为当前服务商,即将其剔除出当前服务商的集合,避免分配量超标。
110.若是,不存在任意一个当前服务商对目标手机号码的第一序列号的历史短信到达率时,即各个当前服务商之前都未向具有目标手机号码的第一序列号的手机发送过短信,则将目标手机号码对应的目标短信到达率目标短信,确定为各个当前服务商对目标手机号码的第二序列号的历史短信到达率中的最大值。
111.需要说明的是,若是也不存在各个当前服务商对目标手机号码的第二序列号的历史短信到达率,则说明没有历史数据可以参考,则可以按照预设规则进行排序,例如,将这样的目标手机号码排序到最后。当然,也可以是将这样的手机号码的目标短信到达率设置为一个统一值。例如,各个当前服务商的历史整体短信到达率的均值等。
112.s402、将未被标记为已分配的各个目标手机号码,按照在各个目标手机号码对应的当前短信到达率进行降序排列。
113.s403、选取排序在第一位的目标手机号码作为当前手机号码。
114.由于是按照降序将排序,所以选取的第一位目标手机号码即为当前具有最高短信到达率的目标手机号码,从而可以有效保证当前具有最高短信到达率的目标手机号码,优先分配给相应的短信服务商,保证其短信到达率。
115.s302、查询各个当前服务商对当前手机号码的第一序列号的历史短信到达率。
116.其中,第一序列号包括手机号码中的网络识别号和地区编码。当前服务商指代当前短信分配量未满足对应的当前短信量占比的短信服务商。当前服务商对一个第一序列号的历史短信到达率指代当前服务商过去向该第一序列号的各个手机号码发送短信的到达率。
117.需要说明的是,网络识别号可以区分不同的运营商,而地区编码则可以区分不同的地区。对于我国的手机号码,前三位表示的是网络识别号,即可以区分不同的运营商,而第四到第七位为地区编码,所以对于我们的手机号码,第一序列号即为手机号码的前七位。而一个短信服务商向某一个运营商在某一个地区的手机号码发送短信的到达率是相对稳定的,所以可以通过各个当前服务商对当前手机号码的第一序列号的历史短信到达率,确定各个当前服务商向当前收集号码发送短信的到达率。
118.s303、判断是否未查询任意一个当前服务商对当前手机号码的第一序列号的历史短信到达率。
119.需要说明的是,考虑到各个当前服务商可能从未向第一序列号与当前手机号码相一致的其他手机号码发送过短信,所以可能会无法查询到任意一个当前服务商对当前手机号码的第一序列号的历史短信到达率,因此此时则执行步骤s305。相应的,若是判断出查询到任意一个当前服务商对当前手机号码的第一序列号的历史短信到达率,则可以执行步骤s304。
120.当然,这只是其中一种可选的方式,考虑到可能只查询到少部分的当前服务商对当前手机号码的第一序列号的历史短信到达率,并且查询到的历史短信到达率都低于阈值,则说明通过这些当前服务商发送短信的到达率太低,所以此时也可以执行步骤s305,以能进一步进行筛选。
121.s304、选取对当前手机号码的第一序列号的历史短信到达率最高的当前服务商,确定为当前最优服务商。
122.由于一个短信服务商向某一个运营商在某一个地区的手机号码发送短信的到达率是相对稳定的,所以其对当前手机号码的第一序列号的历史短信到达率,说明通过该短信服务商向当前手机号码发送短信的到达率越高,因此选取对当前手机号码的第一序列号的历史短信到达率最高的当前服务商,确定为当前最优服务商,以将该当前手机号码分配给该短信服务商。
123.可选地,若是对当前手机号码的第一序列号的历史短信到达率最高的当前服务商存在多个,即查询出的历史短信到达率中的最大值存在多个,此时可以从中随机选取出一个作为当前最优服务商,或者是选取出其中,还可以继续分配的数量最大的当前服务商作为当前最优服务商,又或者是进一步考虑这几个当前服务商对目标手机号码的第二序列号的历史短信到达率,若是还是存在多个相等的最大值时,还可以再进一步考虑相等的各个当前服务商历史整体短信到达率。当然,也可以采用其他的策略进行选取。
124.s305、查询各个当前服务商对当前手机号码的第二序列号的历史短信到达率。
125.其中,第二序列号为手机号码中的网络识别号,对于我国的收集号码即为手机号码的前三位。当前服务商对一个第二序列号的历史短信到达率指代当前服务商过去向该第二序列号的手机号码发送短信的到达率。
126.由于不同短信服务商向同一个运营商的手机号码发送短信的到达率也相对稳定,而此时又未查找到当前服务商对当前手机号码的第一序列号的历史短信到达率,所以只能退而求其次,考虑各个当前服务商对当前手机号码的第二序列号的历史短信到达率。
127.s306、判断是否未查询任意一个当前服务商对当前手机号码的第二序列号的历史短信到达率。
128.同样,考虑到各个当前服务商可能从未向第二序列号与当前手机号码相一致的其他手机号码发送过短信,所以可能也会无法查询到任意一个当前服务商对当前手机号码的第二序列号的历史短信到达率,因此进一步考虑另一项数据,所以此时执行步骤s308。若是判断出查询到任意一个当前服务商对当前手机号码的第二序列号的历史短信到达率,则可以执行步骤s307。
129.当然,这也只是其中一种可选的方式,同样考虑到可能只查询到少部分的当前服务商对当前手机号码的第二序列号的历史短信到达率,并且查询到的历史短信到达率都低于阈值,则说明通过这些当前服务商发送短信的到达率太低,所以此时也可以执行步骤s308,以能进一步进行筛选。
130.s307、选取对当前手机号码的第二序列号的历史短信到达率最高的当前服务商,确定为当前最优服务商。
131.同样,若是对当前手机号码的第二序列号的历史短信到达率最高的当前服务商存在多个,即步骤s305查询出的历史短信到达率中的最大值存在多个。此时可以从中随机选取出一个作为当前最优服务商,或者是选取出其中还可以继续分配的数量最大的当前服务商作为当前最优服务商,又或者是进一步考虑相等的各个当前服务商历史整体短信到达率,又或者采用其他的策略。
132.s308、选取历史整体短信到达率最高的当前服务商,确定为当前最优服务商。
133.其中,一个当前服务商的历史整体短信到达率指代当前服务商向所有手机号码发送短信的到达率。
134.同样可选地,多个当前服务商的历史整体短信到达率相同,此时可以从中随机选取出一个作为当前最优服务商,或者是选取出其中还可以继续分配的数量最大的当前服务商作为当前最优服务商,或采用其他的策略进行选取。
135.s309、将当前手机号码分配给当前最优服务商。
136.可选地,在本技术另一实施例中,为了能更好地管理分配给短信服务商的手机号
码,以及更好地确定短信服务商的当前短信分配量是否满足对应的当前短信量占比,所以在本技术另一实施例中,在执行步骤s301之前,还可以先执行:创建与各个目标手机号码的总数量相等的格子,并按照各个短信服务商对应的当前短信量占比,为各个短信服务商分配格子。
137.相应的,在本技术实施例中,步骤s308具体为:
138.将当前手机号码放置到当前最优服务商的一个未被占用的格子中。
139.从而可以更有序地对手机号码进行管理,并且通过判断格子是否被占满,就可以确定短信服务商的短信分配量是否已满足对应的当前短信量占比。
140.s310、将目标收集号码标记为已分配。
141.s311、判断是否还存在未被标记为已分配的目标手机号码。
142.其中,若判断出还存在未被标记为已分配的目标手机号码,则返回执行步骤s301。若判断不存在未被标记为已分配的目标手机号码,则执行步骤s312。
143.s312、反馈已分配完所有目标手机号码。
144.s204、分别将各个目标手机号码以及待发送短信发送给所分配的短信服务商,以通过各个短信服务商向各个目标手机号码发送待发送短信。
145.具体的,可以是将目标手机号码以及待发送短信,即待发送的短信内容作为参数,然后带上记录的短信服务商对应的接口密钥,并通过记录的接口地址发送给相应的短信服务商。
146.可选地,当步骤s203采用图3所示的实施方式,在本技术实施例中,在执行步骤s204之后,还可以进一步进行到达率统计。如图5所示,本技术实施例提供的一种到达率统计方法,包括:
147.s501、接收各个短信服务商反馈的各个目标手机号码的短信到达结果。
148.其中,短信到达结果中至少包括了短信是否成功到达目标手机号码。
149.s502、基于各个目标手机号码的短信到达结果,计算每个短信服务商对各个目标手机号码的第一序列号的短信到达率、对各个目标手机号码的第二序列号的短信到达率以及各个短信服务商的整体短信到达率。
150.在得到各个短信到达率后,后续再进行短信分发时,就可以作为历史短信达到率进行手机号码的分发。
151.本技术实施例提供了一种短信分发方法,获取各个短信服务商的当前基础信息。然后基于各个短信服务商的当前基础信息,计算得到各个短信服务商对应的当前短信量占比。依次针对每个目标手机号码,基于各个短信服务商的历史短信到达率,从当前短信分配量未满足对应的当前短信量占比的各个短信服务商中,选取出目标手机号码的短信到达率最高的短信服务商,并将目标手机号码分配给选取出的短信服务商。分别将各个目标手机号码以及待发送短信发送给所分配的短信服务商,以通过各个短信服务商向各个目标手机号码发送待发送短信。从而不仅保证了按照各个短信服务商的短信发送量进行分配,并且还基于各个短信服务商的历史短信到达率,将短信尽可能地分配给高到达率的短信服务商,进而还有效保证了短信的到达率。
152.本技术另一实施例提供了一种短信分发装置,如图6所示,包括:
153.信息获取单元601,用于获取各个短信服务商的当前基础信息。
154.占比计算单元602,用于基于各个短信服务商的当前基础信息,计算得到各个短信服务商对应的当前短信量占比。
155.分配单元603,用于依次针对每个目标手机号码,基于各个短信服务商的历史短信到达率,从当前短信分配量未满足对应的当前短信量占比的各个短信服务商中,选取出目标手机号码的短信到达率最高的短信服务商,并将目标手机号码分配给选取出的短信服务商。
156.发送单元604,用于分别将各个目标手机号码以及待发送短信发送给所分配的短信服务商,以通过各个短信服务商向各个目标手机号码发送待发送短信。
157.可选地,在本技术另一实施例提供的短信分发装置中,分配单元,包括:
158.第一选取单元,用于从未被标记为已分配的各个目标手机号码中,选取一个目标手机号码作为当前手机号码。
159.第一查询单元,用于查询各个当前服务商对当前手机号码的第一序列号的历史短信到达率。
160.其中,第一序列号包括手机号码中的网络识别号和地区编码。当前服务商指代当前短信分配量未满足对应的当前短信量占比的短信服务商。当前服务商对一个第一序列号的历史短信到达率指代当前服务商过去向第一序列号的各个手机号码发送短信的到达率。
161.第二选取单元,用于选取对当前手机号码的第一序列号的历史短信到达率最高的当前服务商,确定为当前最优服务商。
162.第二查询单元,用于未查询到任意一个当前服务商对当前手机号码的第一序列号的历史短信到达率时,查询各个当前服务商对当前手机号码的第二序列号的历史短信到达率。
163.其中,第二序列号为手机号码中的网络识别号。当前服务商对一个第二序列号的历史短信到达率指代当前服务商过去向第二序列号的各个手机号码发送短信的到达率。
164.第三选取单元,用于选取对当前手机号码的第二序列号的历史短信到达率最高的当前服务商,确定为当前最优服务商。
165.第四选取单元,用于在未查询到任意一个当前服务商对当前手机号码的第二序列号的历史短信到达率时,选取历史整体短信到达率最高的当前服务商,确定为当前最优服务商。
166.其中,一个当前服务商的历史整体短信到达率指代当前服务商向所有手机号码发送短信的到达率。
167.号码分配单元,用于将当前手机号码分配给当前最优服务商。
168.标记单元,用于将目标收集号码标记为已分配。
169.判断单元,用于判断是否还存在未被标记为已分配的目标手机号码。
170.其中,若判断出还存在未被标记为已分配的目标手机号码,则返回第一选取单元。
171.反馈单元,用于在判断不存在未被标记为已分配的目标手机号码时,反馈已分配完所有目标手机号码。
172.可选地,在本技术另一实施例提供的短信分发装置中,第一选取单元,包括:
173.确定单元,用于确定当前未被标记为已分配的各个目标手机号码对应的目标短信到达率。
174.其中,目标手机号码对应的目标短信到达率为各个当前服务商对目标手机号码的第一序列号的历史短信到达率中的最大值,或在不存在任意一个当前服务商对目标手机号码的第一序列号的历史短信到达率时,为各个当前服务商对目标手机号码的第二序列号的历史短信到达率中的最大值。
175.排序单元,用于将未被标记为已分配的各个目标手机号码,按照在各个目标手机号码对应的当前短信到达率进行降序排列。
176.第一选取子单元,用于选取排序在第一位的目标手机号码作为当前手机号码。
177.可选地,在本技术另一实施例提供的短信分发装置中,还包括:
178.创造单元,用于创建与各个目标手机号码的总数量相等的格子。
179.格子分配单元,用于按照各个短信服务商对应的当前短信量占比,为各个短信服务商分配格子。
180.其中,本技术实施例中的号码分配单元,包括:
181.号码分配子单元,用于将当前手机号码放置到当前最优服务商的一个未被占用的格子中。
182.可选地,在本技术另一实施例提供的短信分发装置中,还包括:
183.接收单元,用于接收各个短信服务商反馈的各个目标手机号码的短信到达结果。
184.统计单元,用于基于各个目标手机号码的短信到达结果,计算每个短信服务商对各个目标手机号码的第一序列号的短信到达率、对各个目标手机号码的第二序列号的短信到达率以及各个短信服务商的整体短信到达率。
185.需要说明的是,本技术上述实施例提供的各个单元具体可以是图1示出的各个后端的组件单元,并且各个单元的具体工作过程,可相应地参考上述方法实施例中的相应的步骤,此处不再赘述。
186.本技术另一实施例提供了一种电子设备,如图7所示,包括:
187.存储器701和处理器702。
188.其中,存储器701用于存储程序。
189.处理器702用于执行存储器701存储的程序,该程序被执行时,具体用于实现如上述任意一个实施例提供的短信分发方法。
190.本技术另一实施例提供了一种计算机存储介质,用于存储计算机程序,该计算机程序被执行时,用于实现如上述任意一个实施例提供的短信分发方法。
191.计算机存储介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
192.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些
功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
193.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本技术。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。