CN101977361A - 一种批量短信预处理方法 - Google Patents

一种批量短信预处理方法 Download PDF

Info

Publication number
CN101977361A
CN101977361A CN2010105073284A CN201010507328A CN101977361A CN 101977361 A CN101977361 A CN 101977361A CN 2010105073284 A CN2010105073284 A CN 2010105073284A CN 201010507328 A CN201010507328 A CN 201010507328A CN 101977361 A CN101977361 A CN 101977361A
Authority
CN
China
Prior art keywords
note
sends
batch
client
data
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.)
Pending
Application number
CN2010105073284A
Other languages
English (en)
Inventor
洪侠
张代军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHENZHEN DUOYING SOFTWARE TECHNOLOGY Co Ltd
Original Assignee
SHENZHEN DUOYING SOFTWARE TECHNOLOGY Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SHENZHEN DUOYING SOFTWARE TECHNOLOGY Co Ltd filed Critical SHENZHEN DUOYING SOFTWARE TECHNOLOGY Co Ltd
Priority to CN2010105073284A priority Critical patent/CN101977361A/zh
Publication of CN101977361A publication Critical patent/CN101977361A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种批量短信预处理方法,包括步骤:A1、短信发送客户端对短信发送数据进行分组;A2、短信发送客户端将分组后的所述短信发送数据进行压缩;A3、短信发送客户端将压缩后的所述短信发送数据发送到缓存服务器;A4、缓存服务器将所述短信发送数据解压缩;A5、缓存服务器将解压缩后的所述短信发送数据存储到缓存目录中并建立相应的索引文件;A6、缓存服务器将所述短信发送数据发送到短信代理商服务器。本发明批量短信预处理方法使短信发送客户端提交短信时间大大缩短,极大的提高了提交效率,即使在网络状态不好的情况下也能持续地完成短信提交任务,保证了短信提交的实时性和稳定性。

Description

一种批量短信预处理方法
技术领域
本发明涉及移动通信技术领域,具体涉及一种批量短信预处理方法。
背景技术
现有技术短信发送业务多采用短信发送客户端与短信代理商进行直接交互发送,小批量短信提交到短信代理商服务器速度很快,遇到大批量短信(如广告类短信)提交时,会出现提交速度慢,等待时间长等问题,短信发送客户端往往会出现短信提交无响应的现象,用户体验很不友好。大批量短信提交时,短信数据量很大,若出现网络超时,则短信提交不能正常完成,此时需要用户在短信发送客户端将失败的号码重新提交发送,效率很低。现有技术的短信提交方式急需改进。
WebService服务是建立可互操作的分布式应用程序的新平台。WebService服务是一套标准,它定义了应用程序如何在Web上实现互操作性。你可以用任何你喜欢的语言,在任何你喜欢的平台上写WebService服务,只要我们可以通过WebService标准对这些服务进行查询和访问,WebService服务可以使用两种消息传递方式:One-Way messaging(单向消息传递)或者Request/Response messaging(请求/响应消息传递)。SOAP(Simple Object Access Protocol),是一种标准消息传递协议,是WebService服务的事实标准协议。SOAP是以XML为基础,SOAP消息格式是由XML Schema模式定义,通过XML命名空间使SOAP具有很强的扩展性。WebService服务放在Web服务器上,客户生成的SOAP请求会被嵌入在一个HTTP POST请求中,发送到Web服务器。Web服务器再把这些请求转发给WebService处理器。WebService处理器解析收到的SOAP请求,调用WebService服务应用程序,然后再生成相应的SOAP应答。Web服务器得到SOAP应答后,会再通过HTTP应答的方式把它送回到客户端。
发明内容
本发明要解决的技术问题是提供一种批量短信预处理方法,克服现有技术短信提交方式在大批量短信提交时提交速度慢、等待时间长、用户体验差、容易导致提交失败的缺陷。
本发明为解决上述技术问题所采用的技术方案为:
一种批量短信预处理方法,包括步骤:
A1、短信发送客户端对短信发送数据进行分组;
A2、短信发送客户端将分组后的所述短信发送数据进行压缩;
A3、短信发送客户端将压缩后的所述短信发送数据发送到缓存服务器;
A4、缓存服务器将所述短信发送数据解压缩;
A5、缓存服务器将解压缩后的所述短信发送数据存储到缓存目录中并建立相应的索引文件;
A6、缓存服务器将所述短信发送数据发送到短信代理商服务器。
所述的批量短信预处理方法,其中所述步骤A1包括步骤:短信发送客户端在对所述短信发送数据进行分组之前先进行手机号码合法性检查。
所述的批量短信预处理方法,其中所述步骤A1包括步骤:短信发送客户端对短信内容中是否包含非法词语进行检查。
所述的批量短信预处理方法,其中所述步骤A1包括步骤:短信发送客户端进行短信黑名单检查。
所述的批量短信预处理方法,其中所述步骤A2包括步骤:短信发送客户端调用Zlip库中的TCompressionStream类对所述短信发送数据进行压缩。
所述的批量短信预处理方法,其中所述步骤A3包括步骤:短信发送客户端将所述短信发送数据通过WebService服务发送到缓存服务器。
所述的批量短信预处理方法,其中所述步骤A5包括步骤:缓存服务器在数据库中建立所述索引文件。
所述的批量短信预处理方法,其中所述步骤A5包括步骤:在缓存服务器上设置缓存处理程序,所述缓存处理程序用于查找和发送所述短信发送数据,所述缓存处理程序采用多线程工作方式。
所述的批量短信预处理方法,其中所述步骤A5包括步骤:在缓存服务器上设置监控程序来对所述缓存处理程序进行监控。
本发明的有益效果:本发明批量短信预处理方法使短信发送客户端提交短信时间大大缩短(如20万条短信提交只需不到2秒),极大的提高了提交效率,即使在网络状态不好的情况下也能持续地完成短信提交任务,保证了短信提交的实时性和稳定性。
附图说明
本发明包括如下附图:
图1为本发明批量短信预处理方法流程示意图;
图2为本发明批量短信预处理方法短信发送客户端处理流程示意图;
图3为本发明批量短信预处理方法缓存服务器处理流程示意图
具体实施方式
下面根据附图和实施例对本发明作进一步详细说明:
如图1所示,短信发送客户端对短信发送数据进行分组和压缩;然后分批通过WebSevice服务将短信发送数据发送到缓存服务器;缓存服务器将短信发送数据解压缩,存储到缓存目录中并建立相应的索引文件,再启动缓存处理程序将短信发送数据发送到短信代理商服务器。
如图2和图3所示,短信发送客户端首先对短信发送数据进行合法性检查,检查完毕后,对短信内容进行分页,然后对短信号码进行分组,对不同页的短信内容分别获取短信分组号码,获取后组成发送的xml格式数据,压缩后发送给缓存服务器。缓存服务器对xml格式数据进行解压缩处理,启动多个缓存处理程序,获取相关的短信发送数据后,将短信发送数据发送到短信代理商服务器。
对于如下的短信发送数据:短信号码:200000个,短信内容:130字通过具体实施例说明其提交过程。
短信发送客户端
1、短信发送数据合法性检查。
a.检测发送的手机号码是否符合标准
移动:134,135,136,137,138,139,150,151,152,157,158,159,187,188
联通:130,131,132,155,156,185,186
电信:133,153,180,189
检测手机号码是否是11位的数字,并且数字的前3位是否在以上的号段中。号码检测正则表达式如下:\b((%s)\d{8})+\b|{11,}。
b.短信非法词语检测
将短信的内容存入到内存字符串smscon中,然后通过在短信发送客户端本地保存的非法词语数据库Seriousword.db中的数据表t_smsseriousword中检索,获取当前发送的短信内容是否有非法词语,具体的查询语句为:
select distinct word from t_smsseriousword where POSITION(word in′″+smscon+′″)>0″
返回的数据字段word不为空,表示有非法词语。
返回的word字段为空,则表示短信内容正常。
c.黑名单检测
将短信的号码保存到内存字符串smsno中,然后通过短信发送客户端本地保存的非法词语库BlackNo.db中的数据表t_BlackPhone中进行检索,获取当前发送的号码中是否有黑名单号码,具体的查询语句为:
select distinct Number from t_BlackPhonewhere POSITION(Number in′″+smsno+′″)>0″
返回的数据字段Number不为空,表示发送号码中含有黑名单号码。返回的Number字段为空,则表示发送的短信号码正常。
2、短信发送数据分组、压缩和发送
2-1:获取用户发送的号码个数
将用户录入的短信号码读取到内存列表NumberList中。通过访问NumberList.Count的属性来获取当前用户输入的短信号码个数。
NumberList.Count=200000;
按照分组最大个数10W/组
通过TIniFile类来读取本地的配置文件IMConfig.db
最大分组=TIinFile.ReadString(‘MaxGrp’,‘Sect’,‘100000’)分组数=Ceil(NumberList.Count/100000)(此处不足一页按照一页进行计算,计算结果:分组数=2组)
2-2:获取短信发送内容的页数
根据短信代理商提供的每条短信最多可容纳的字数来进行短信内容分页。此处示例为70字/页(具体数据从供应商处获得),先将短信内容通过Length函数来获取当前短信字数的个数,如:Length(短信内容)=130,然后用Ceil函数来进行分页数的计算:
页数=Ceil(Length(短信内容)/70),不足一页按照一页进行计算,将分页后的短信内容依次存入到内存列表ContentList中
2-3:读取短信发送数据
内存列表下标从0开始,0表示第一组,循环读取短信分页内容,短信内容此处分为两页。
ContentList中存储的短信内容:
第一页内容=ContentList[0];(对应短信内容的1-70字),
第二页内容=ContentList[1](对应短信内容的71-130字),
NumberList中存储的号码内容:
第一组号码=NumberList[0](对应号码为1-100000之间的号码),
第二组号码=NumberList[1](对应号码为100001-200000之间的号码),
2-4:组合短信发送数据
循环读取短信内容,并根据每次读取的短信内容,再依次去获取对应的发送号码后,再组合成需要发送的xml数据串。
对于以上的数据,此处组合为:
第一组:ContentList[0]+NumberList[0]
第二组:ContentList[0]+NumberList[1]
第三组:ContentList[1]+NumberList[0]
第四组:ContentList[1]+NumberList[1]
将以上的几组数据依次按照xml格式进行组合,然后将数据读取到内存流中(TMemoryStream),调用Zlip库中的TCompressionStream类来对数据进行压缩,最后通过WebService服务提供的接口DoAction(constActionCode:Integer;const ActionXML:WideString)(ActionCode=100)将短信发送数据发送给缓存服务器。
缓存服务器
1、数据接收处理
接收到短信发送客户端的短信发送数据后,缓存服务器对xml格式数据进行解压缩处理,通过Zlib库中的TDeCompressionStream类对短信发送数据进行解压缩,解压出的xml描述文件和目标号码,存储到文件***中的缓存目录下,同时在数据库中的索引文件中添加一条此发送包的索引,如MsgID、PID、AccessCode、发送总数、文件路径、提交时间等信息,索引信息存储到数据库***中可以方便对数据检索操作,同时避免文件***检索效率低的弊病。
2、缓存处理程序
短信发送数据存储完毕后,缓存服务器启动多个缓存处理程序,缓存处理程序对数据库中的索引文件进行读取,读取到相关的索引信息后根据索引信息在本地查找号码文件。获取到相关的短信发送数据后,将短信发送数据发送到短信代理商服务器。另外缓存处理程序采用多线程处理,避免在数据量过多时造成短信发送延迟。多个缓存处理程序在不停的运作过程中,可能会出现一些异常,此时若进行人工查看并处理会导致处理不及时。因此设置监控程序来对缓存处理程序进行监控,当发现某个缓存处理程序工作出现异常时可以对其进行重启,实时保证缓存处理程序处于正常运作状态。如果监控程序出现异常,会自动通过Email发送日志信息到***管理员处,***管理员可马上对其进行处理。
本领域技术人员不脱离本发明的实质和精神,可以有多种变形方案实现本发明,以上所述仅为本发明较佳可行的实施例而已,并非因此局限本发明的权利范围,凡运用本发明说明书及附图内容所作的等效结构变化,均包含于本发明的权利范围之内。

Claims (9)

1.一种批量短信预处理方法,其特征在于,包括步骤:
A1、短信发送客户端对短信发送数据进行分组;
A2、短信发送客户端将分组后的所述短信发送数据进行压缩;
A3、短信发送客户端将压缩后的所述短信发送数据发送到缓存服务器;
A4、缓存服务器将所述短信发送数据解压缩;
A5、缓存服务器将解压缩后的所述短信发送数据存储到缓存目录中并建立相应的索引文件;
A6、缓存服务器将所述短信发送数据发送到短信代理商服务器。
2.根据权利要求1所述的批量短信预处理方法,其特征在于,所述步骤A1包括步骤:短信发送客户端在对所述短信发送数据进行分组之前先进行手机号码合法性检查。
3.根据权利要求2所述的批量短信预处理方法,其特征在于,所述步骤A1包括步骤:短信发送客户端对短信内容中是否包含非法词语进行检查。
4.根据权利要求3所述的批量短信预处理方法,其特征在于,所述步骤A1包括步骤:短信发送客户端进行短信黑名单检查。
5.根据权利要求1所述的批量短信预处理方法,其特征在于,所述步骤A2包括步骤:短信发送客户端调用Zlip库中的TCompressionStream类对所述短信发送数据进行压缩。
6.根据权利要求1所述的批量短信预处理方法,其特征在于,所述步骤A3包括步骤:短信发送客户端将所述短信发送数据通过WebService服务发送到缓存服务器。
7.根据权利要求1所述的批量短信预处理方法,其特征在于,所述步骤A5包括步骤:缓存服务器在数据库中建立所述索引文件。
8.根据权利要求7所述的批量短信预处理方法,其特征在于,所述步骤A5包括步骤:在缓存服务器上设置缓存处理程序,所述缓存处理程序用于查找和发送所述短信发送数据,所述缓存处理程序采用多线程工作方式。
9.根据权利要求8所述的批量短信预处理方法,其特征在于,所述步骤A5包括步骤:在缓存服务器上设置监控程序来对所述缓存处理程序进行监控。
CN2010105073284A 2010-10-13 2010-10-13 一种批量短信预处理方法 Pending CN101977361A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010105073284A CN101977361A (zh) 2010-10-13 2010-10-13 一种批量短信预处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010105073284A CN101977361A (zh) 2010-10-13 2010-10-13 一种批量短信预处理方法

Publications (1)

Publication Number Publication Date
CN101977361A true CN101977361A (zh) 2011-02-16

Family

ID=43577199

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010105073284A Pending CN101977361A (zh) 2010-10-13 2010-10-13 一种批量短信预处理方法

Country Status (1)

Country Link
CN (1) CN101977361A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102256228A (zh) * 2011-06-15 2011-11-23 金川集团有限公司 一种实现短信全网统一发送的方法
WO2013189335A3 (zh) * 2012-12-27 2014-02-13 中兴通讯股份有限公司 一种彩信转发方法及装置
GB2529174A (en) * 2014-08-12 2016-02-17 Ibm Batch compression management of messages
US9473514B1 (en) 2016-02-04 2016-10-18 International Business Machines Corporation Efficient sensor data delivery
CN106358165A (zh) * 2016-09-19 2017-01-25 北京集奥聚合科技有限公司 一种向客户发送短信的服务的控制方法及***
CN106713463A (zh) * 2016-12-27 2017-05-24 浪潮软件集团有限公司 一种高性能的跨网络数据传输及导入的方法
CN107404432A (zh) * 2017-09-02 2017-11-28 刘兴丹 一种结合多种网路群发信息的方法、装置
CN109101504A (zh) * 2017-06-20 2018-12-28 恒为科技(上海)股份有限公司 一种高效的日志压缩和索引方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1917667A (zh) * 2006-09-08 2007-02-21 华为技术有限公司 群发短消息业务中的号码处理***及处理方法
CN1968442A (zh) * 2006-04-14 2007-05-23 华为技术有限公司 ******及***方法
CN101431734A (zh) * 2008-11-07 2009-05-13 中兴通讯股份有限公司 一种短消息群发***及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1968442A (zh) * 2006-04-14 2007-05-23 华为技术有限公司 ******及***方法
CN1917667A (zh) * 2006-09-08 2007-02-21 华为技术有限公司 群发短消息业务中的号码处理***及处理方法
CN101431734A (zh) * 2008-11-07 2009-05-13 中兴通讯股份有限公司 一种短消息群发***及方法

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102256228A (zh) * 2011-06-15 2011-11-23 金川集团有限公司 一种实现短信全网统一发送的方法
WO2013189335A3 (zh) * 2012-12-27 2014-02-13 中兴通讯股份有限公司 一种彩信转发方法及装置
CN103906007A (zh) * 2012-12-27 2014-07-02 中兴通讯股份有限公司 一种彩信转发方法及装置
AU2013279963B2 (en) * 2012-12-27 2016-09-01 Zte Corporation Multimedia message forwarding method and device
US9794204B2 (en) 2012-12-27 2017-10-17 Xi'an Zhongxing New Software Co. Ltd. Method and apparatus for forwarding multimedia message
GB2529174A (en) * 2014-08-12 2016-02-17 Ibm Batch compression management of messages
US11146285B2 (en) 2014-08-12 2021-10-12 International Business Machines Corporation Batch compression management of messages
US10056918B2 (en) 2014-08-12 2018-08-21 International Business Machines Corporation Batch compression management of messages
US9762552B2 (en) 2016-02-04 2017-09-12 International Business Machines Corporation Efficient sensor data delivery
US10367790B2 (en) 2016-02-04 2019-07-30 International Business Machines Corporation Efficient sensor data delivery
US9473514B1 (en) 2016-02-04 2016-10-18 International Business Machines Corporation Efficient sensor data delivery
US11316836B2 (en) 2016-02-04 2022-04-26 Terrance Licensing LLC Efficient sensor data delivery
CN106358165A (zh) * 2016-09-19 2017-01-25 北京集奥聚合科技有限公司 一种向客户发送短信的服务的控制方法及***
CN106713463A (zh) * 2016-12-27 2017-05-24 浪潮软件集团有限公司 一种高性能的跨网络数据传输及导入的方法
CN109101504A (zh) * 2017-06-20 2018-12-28 恒为科技(上海)股份有限公司 一种高效的日志压缩和索引方法
CN109101504B (zh) * 2017-06-20 2023-09-19 恒为科技(上海)股份有限公司 一种日志压缩和索引方法
CN107404432A (zh) * 2017-09-02 2017-11-28 刘兴丹 一种结合多种网路群发信息的方法、装置

Similar Documents

Publication Publication Date Title
CN101977361A (zh) 一种批量短信预处理方法
CN110147398B (zh) 一种数据处理方法、装置、介质和电子设备
CN109947668B (zh) 存储数据的方法和装置
CN104125163B (zh) 一种数据处理方法、装置及终端
US9672826B2 (en) System and method for efficient unified messaging system support for speech-to-text service
CN106302595B (zh) 一种对服务器进行健康检查的方法及设备
CN108897854B (zh) 一种超时任务的监控方法和装置
US20160335243A1 (en) Webpage template generating method and server
CN108429777B (zh) 一种基于缓存的数据更新方法及服务器
CN112383533B (zh) 报文格式转换方法及装置
CN103401934A (zh) 获取日志数据的方法和***
CN105577772B (zh) 素材接收方法、素材上传方法及装置
CN108846100A (zh) 快速搜索寄宿应用的方法及设备
CN113010818A (zh) 访问限流方法、装置、电子设备及存储介质
WO2021189195A1 (zh) 数据查询方法、装置、服务器及存储介质
CN105227425A (zh) 聚合消息的方法、设备和网络社交***
CN110659971B (zh) 一种交易数据处理方法及装置
CN113886494A (zh) 即时通讯的消息存储方法、装置、设备及计算机可读介质
CN116049109A (zh) 一种基于过滤器的文件校验方法、***、设备和介质
CN114398520A (zh) 数据检索方法、***、装置、电子设备及存储介质
CN114385888A (zh) 一种客户端请求处理方法及相关设备
CN101778124A (zh) 移动客户端访问互联网的方法和页面访问服务器
CN111782428B (zh) 数据调用***以及方法
CN111881086B (zh) 大数据的存储方法、查询方法、电子装置及存储介质
CN111327511B (zh) 即时通讯方法、***、终端设备与存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent of invention or patent application
CB02 Change of applicant information

Address after: 518049 Guangdong city of Shenzhen province Futian District Meihua Road, building 105, 5 layers of technology from room 0504

Applicant after: Shenzhen win win E-Commerce Technology Co., Ltd.

Address before: 518049 Guangdong city of Shenzhen province Futian District Meihua Road, building 105, 5 layers of technology from room 0504

Applicant before: Shenzhen Duoying Software Technology Co., Ltd.

COR Change of bibliographic data

Free format text: CORRECT: APPLICANT; FROM: SHENZHEN DUOYING SOFTWARE TECHNOLOGY CO., LTD. TO: SHENZHEN DUOYING E-BUSINESS TECHNOLOGY CO., LTD.

DD01 Delivery of document by public notice

Addressee: Shenzhen win win E-Commerce Technology Co., Ltd.

Document name: Notification to Make Formalities Rectification

C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20110216