1 修改历史
版本 |
修改人 |
日期 |
描述 |
1.0.0 |
黄吉祥 |
2006/9/6 |
形成基本构架 |
|
|
|
|
2 构架简介
移动短信业务生成平台,以下简称为业务平台。由两部分组成:短信业务生成基础平台(以下简称为基础平台)、短信业务生成平台WEB管理系统(以下简称为WEB业务平台)。
基础平台对短信平台的上行短信进行业务分发,转发到对应的业务程序;把要业务程序生成的短信发送到短信平台;为了开发业务的方便,提供多种业务接口。
WEB管理平台根据基础平台提供的接口,提供多种业务模板,使用户只要先简单配置,就能自动处理对应的业务;或者配置后,能把业务分发到已有的业务处理程序上。
3 基础平台
基础平台为VC开发的GUI程序,通过ADO连接SQL Server2000数据和短信平台。
第三方业务接口通过SOCKET与基础平台连接,用于第三方和基础平台的短信交互。
基础平台提供的业务接口如下:
0? URL调用(HTTP)
1? SOCKET转发
2? 存储过程转发
3? DLL/EXE外部调用

(图1)
3.1 URL调用(HTTP)
- 按照指定格式,把MO数据打包成URL,通过调用公网上指定IP的WEB服务器的页面;
- 适合于不同公网IP之间一般流量的合作业务,通过WEB页面来实现的业务。WEB页面(主要是ASP页面)通过和SQL Server中存储过程的结合,可以快速实现流量不超过120条/分钟的复杂业务。合作业务可以借助WEB服务器和SQL服务器快速实现。
如果业务程序中接收MO的URL地址为: http://sms.3tong.net/xh/recv.jsp
配置如下:在图一所示的窗口中“数据发送格式”选择“0?? URL调用(HTTP)”,在标题为“路由参数”的空白处输入“http://sms.3tong.net/xh/recv.asp”。
传递的参数说明如下:
?spid=%s&mbid=%s&linkid=%s&msg=%s
参数名称 |
描述 |
字段值 |
spid |
上行号码 |
不空 |
mbid |
手机号码 |
不空 |
linkid |
鉴权字段 |
可空 |
msg |
上行内容 |
可空 |
注意:此URL开发语言不限,可以使用jsp、asp、php、asp.net等。
直接通过SOCKET 发送如下格式的XML数据包到短信平台的接收端口。
具体格式:
<HEAD>PACKLEN</HEAD><IPACK><SPID>下行号</SPID><MBID>手机号码</MBID><FEEID>付费号码</FEEID><SID>业务代码</SID><MSG>发送内容</MSG><LINKID></LINKID></IPACK>
|
描述 |
PACKLEN |
IPACK数据包的长度,3位,注意一定要填写成3位,如果长度18,也要写成018,即<HEAD>PACKLEN</HEAD>是数据包头,后面的IPACK数据包是数据包体。 |
SPID |
服务号码 |
MBID |
下发的手机号码 |
FEEID |
付费的手机号码,如果为空,付费号码就是手机号码 |
SID |
对应于业务代码的site_id |
MSG |
发送内容 |
LINKID |
用于移动CMPP3.0 |
短信平台的接收端口:28001(但具体端口要查看短信平台)
数据传输直接基于TCP/IP,采用Socket传输,数据以特定格式打包。
平台发送数据到合作方指定IP的端口,数据打包方式:
GET /recv.asp?spid=%s&mbid=%s&linkid=%s&msg=%s HTTP/1.1
%s 表示需要填写的对应值
参数名称 |
描述 |
字段值 |
spid |
上行号码 |
不空 |
mbid |
手机号码 |
不空 |
linkid |
鉴权字段 |
可空 |
msg |
上行内容 |
可空 |
如:GET /recv.asp?spid=208099&mbid=09312111111&linkid=&msg=测试 ??HTTP/1.1
(同前一发送方式)
直接通过SOCKET 发送如下格式的XML数据包到短信平台的接收端口。
具体格式:
<HEAD>PACKLEN</HEAD><IPACK><SPID>下行号</SPID><MBID>手机号码</MBID><FEEID>付费号码</FEEID><SID>业务代码</SID><MSG>发送内容</MSG><LINKID></LINKID></IPACK>
|
描述 |
PACKLEN |
IPACK数据包的长度,3位,注意一定要填写成3位,如果长度18,也要写成018,即<HEAD>PACKLEN</HEAD>是数据包头,后面的IPACK数据包是数据包体。 |
SPID |
服务号码 |
MBID |
下发的手机号码 |
FEEID |
付费的手机号码,如果为空,付费号码就是手机号码 |
SID |
对应于业务代码的site_id |
MSG |
发送内容 |
LINKID |
用于移动CMPP3.0 |
短信平台的接收端口:28001(但具体端口要查看短信平台)
3.3 存储过程转发
当业务数据库和平台数据库在同一服务器上时,可以采用存储过程来快速开发业务。平台在进行业务路由时,即分发短信时,将自动调用指定的存储过程,此存储过程根据业务逻辑生成相应的下发,调用生成下行的存储过程活直接写入下行表,再由平台将短信发送到运营商。
CREATE procedure proc_a @mbno? varchar(30),@spno varchar(30),@content varchar(200),@linkid varchar(21)=''
as
set nocount on
declare @site_id varchar(20),@sendcontent varchar(200),@s1 varchar(50),@i1 int
select @content = lower(ltrim(rtrim(@content)))
select @content = replace(@content,' ','')
select @content = replace(@content,'+','')
select @sendcontent='proc_a'+@content
--生成下行
exec proc_send @mbno,@spno,'help',@sendcontent,@linkid
GO
上行参数如下:
参数名称 |
描述 |
字段值 |
@spno |
上行号码 |
不空 |
@mbno |
手机号码 |
不空 |
@linkid |
鉴权字段 |
可空 |
@content |
上行内容 |
可空 |
CREATE procedure proc_test @mbno varchar(30),
@spno? varchar(30),
@content varchar(200),@linkid varchar(21)=''
as
? set nocount on
begin tran tran_compile_fail
declare @site_id varchar(20)
declare @sendcontent varchar(2000)
select @content = ltrim(rtrim(@content))
select @content = lower(@content)
select @content = replace(@content,' ','')
select @content = replace(@content,'+','')
if(@content ='cs')
begin
select @sendcontent = '生日秘密发送SC+生日,例如SC19800909;婚配测试发送HP+双方属相 ,例如HP羊虎;发送H帮助'
select @site_id ? = '0000'
exec proc_send @mbno,@spno,@site_id,@sendcontent,@linkid
if(@@error<>0) GOTO compile_fail
end
else if(left(@content,2) = 'sc')
begin
select @site_id ? = '0000'
declare @month int
declare @day?? int
select @month = convert(int,substring(@content,7,2))
if(@month > 12)
select @month = @month % 10
if(@month = 0)
select @month = 1
? select @day?? = convert(int,substring(@content,9,2))
if(@day >31 or @day = 0)
select @day = 20
? select @sendcontent = Description from Brithday where Month = @month and? Day = @day
--select @sendcontent
exec proc_send_many @mbno,@spno,@site_id,@sendcontent,@linkid
if(@@error<>0) GOTO compile_fail
end
else if(left(@content,2) = 'hp')
begin ?
select @site_id ? = 'jh_0'
declare @con varchar(10)
? select @con = right(@content,len(@content)-2)
select @sendcontent = Col001 from hunpei? where Col002 = @con
exec proc_send_many @mbno,@spno,@site_id,@sendcontent,@linkid
if(@@error<>0) GOTO compile_fail
end
else if(@content = 'h')
begin
select @sendcontent ='生日秘密送SC+生日,例如SC19800909;婚配测试发送HP+双方属相 ,例如HP羊虎;发送HH更多精彩节目'
select @site_id ? = '0000'
exec proc_send @mbno,@spno,@site_id,@sendcontent,@linkid
if(@@error<>0) GOTO compile_fail ?
end
else if(@content = 'hh')
begin
select @sendcontent ='回复CS命运测试'--JH炸金花,YB中秋抢月饼,LZ赛龙舟,DT趣味答题,复CS 命运测试,
select @site_id ? = '0000'
exec proc_send @mbno,@spno,@site_id,@sendcontent,@linkid
if(@@error<>0) GOTO compile_fail ?
end
else
begin
if left(@content,4)<>'0000' begin
select @sendcontent = '发送指令有错误,生日秘密送SC+生日,例如SC19800909;婚配测试发送HP+双方属相 ,例如HP羊虎'
select @site_id ? = '0000'
exec proc_send @mbno,@spno,@site_id,@sendcontent,@linkid
if(@@error<>0) GOTO compile_fail ?
end
end
commit tran tran_compile_fail?
return 100
compile_fail:
rollback tran tran_compile_fail
return -100
GO
大汉三通采用一个DLL动态链接库封装了数据包的传输过程,用户收发短信时只用调用DLL提供的方法。
也可以直接使用大汉三通提供的业务分发程序,来进行业务的开发。
3.4.1 业务分发程序使用说明
运营商在与第三方合作时,可以使用界面如下图所示的“3T-ISMG业务分发程序--外部调用”程序(程序名:3TI-DbOut .exe,下面简称为DB分发程序),简捷快速地实现远程业务与短信平台之间的短信的交互。

(图2)
运行方式:执行ChkDbOut.exe,这是一个运行监控程序,当程序3TI-DbOut .exe被用户无意关闭或异常关闭时,ChkDbOut能及时启动3TI-DbOut .exe。
实现方式:DB分发程序通过Socket与短信平台分发端口连接,可以获取短信平台转发的MO,并把内容写入smsIn表中;同时取出smsOut表中的记录,送到短信平台的分发接口。
所以与SP合作的第三方,开发业务时先读取smsIn表中的记录,处理后写入smsOut表。或者在smsIn上建立触发器,当写入数据时,自动执行指定的存储过程。
数据库连接采用ADO直接连接,设置好本地数据库的连接参数和短信平台的IP和分发端口,运行DB分发程序,就可以实现与短信平台之间的短信交互。
4 WEB管理平台
WEB管理平台为JAVA开发的Web程序,通过JDBC连接SQL Server2000数据。由六部分组成,其中业务模板是核心。

(图3)
5 业务模板
原理:基础平台在进行业务路由时,将自动调用指定的存储过程,此存储过程根据业务逻辑生成相应的下发,再调用生成下行的存储过程直接写入下行表。
在数据库中定义多种业务模板的存储过程、表等,在WEB中配置对应的业务路由规则,如下图所示;再配置相应的业务模版的业务参数即可。(假设接入号为01850)

(图4)
发送特定的字符到某一号码上,业务平台根据设定的分发规则和指定回复的内容,回复用户。
例1、发送A到0185001系统自动回复:“感谢你们参与活动….”
例2、发送B到0185001系统自动回复:“系统收到您的二次确认…..”
设计存储过程p_smsM_ReplyDir,先从t_sms_Router获取下发内容和site_id,用proc_send生成下行的短信。
页面功能:直接在“业务模板路由”页面中编辑
- 编辑上行短信的号码和指令,及对应的回复内容。
发送特定的字符到某一号码上,业务程序自动获取该业务中可用的下行内容,回复用户。可实现笑话等类似业务的自动点播,保障用户收到的不同内容的笑话。
例1、笑话节目:用户发送xh到01850021,第一次取第一条笑话发送给用户,第二次取第二条笑话发送给用户……
例2、英语学习:用户发送yy到01850022,第一次取第一条英语发送给用户,第二次取第二条英语笑话发送给用户……
页面功能:
- 编辑所属业务名称、上行短信的号码和指令;(在“业务模板路由”页面中编辑)
- 从Txt文本中导入下行内容,并选择业务;
- 编辑下行内容。
下行内容表CntList,字段为id,cnt,site_id,其中id为自增长编号
新建点播下行手机记录表t_smsM_RaMb,字段为tid,mbno,site_id,id,wtime,其中tid为自增长编号,id对应于CntList的id,wtime为默认值getdate(),一个mbno+site_id对应一条记录。
设计存储过程p_smsM_ReplyAuto,先从t_sms_Router获取site_id,根据表t_smsM_RaMb,从可用的短信中选取一条可用的编号最小的短信,同时更新表t_smsM_RaMb;proc_send生成下行的短信。
用户包月后,需下发包月短信。定时运行业务程序,业务程序将自动获取该业务中可用的下行内容,发送给用户。可实现笑话等包月业务的自动下发,保障用户收到的不同内容的笑话。
例1、笑话包月:用户发送xhby定购笑话包月后,第一次取第一条笑话发送给用户,第二次取第二条笑话发送给用户……
例2、英语包月:用户发送yyby定购英语包月后,第一次取第一条英语发送给用户,第二次取第二条英语笑话发送给用户……
页面功能:
- 编辑所属业务名称、下发时间;
- 从Txt文本中导入下行内容,并选择业务;
- 编辑下行内容。
下行内容表CntList,字段为id,cnt,site_id,其中id为自增长编号
新建包月下行手机记录表t_smsM_MaMb,字段为tid,mbno,site_id,id,wtime,其中tid为自增长编号,id对应于CntList的id,wtime为默认值getdate()
设计存储过程p_smsM_MonthAuto,根据表t_smsM_MaMb,从可用的短信中选取一条可用的编号最小的短信,同时更新表t_smsM_MaMb。
页面样式如下
运营商名称:
业务名称: (仅包月业务)
运行时间: 格式hhmm(时两位、分两位,如1805)
运行日期: 从星期一到星期日,对应值为0到7,列表框,可多选
备注:
新建包月下发运行时间表t_smsM_MaRun,字段为id, nTimer, exec_proc, rundate, memo, wtime,其中id为自增长编号,exec_proc值固定为p_smsM_ReplyAuto。
举行评选活动时,用户通过发送短信为所支持的目标进行投票。
例1、发送A1到01850041,为湖南卫视2006年超女厉娜投一票,系统自动回复:“感谢你厉娜的支持,请大力支持你的厉娜”
例2、发送A2到01850041,为湖南卫视2006年超女许飞投一票,系统自动回复:“感谢你许飞的支持,请大力支持你的许飞”
页面功能:
- 编辑上行短信的号码和指令,及对应的回复内容。(在“业务模板路由”页面中编辑,其中编号为t_smsM_VtObj中的id)
- 编辑评选对象
新建评选对象表t_smsM_VtObj,字段为id,name,itotal,memo,wtime,其中id为自增长编号,wtime为默认值getdate()
新建评选投票历史表t_smsM_VtMb,字段为tid,mbno,id,wtime,其中tid为自增长编号,id对应于t_smsM_VtObj的id,wtime为默认值getdate()
设计存储过程p_smsM_Vote,先从t_sms_Router获取下发内容,编号和site_id,用proc_send生成下行的短信,再插入评选投票历史表t_smsM_VtMb,并更新t_smsM_VtObj的票数。
页面样式如下
评选对象:
初时票数:
备注:
对应的表为t_smsM_VtObj,设计相应的存储过程来进行数据操作
发送短信可登记用户的需求,待核实后为用户开通用户所需的业务。
例1、来电提醒:用户发送ldtx到0185005,登记开通来电提醒
例2、来电畅听:用户发送ldct到0185005,登记开通来电畅听
页面功能:
- 编辑上行短信的号码和指令,及对应的回复内容。(在“业务模板路由”页面中编辑,其中编号为t_smsM_Breg中的id)
- 编辑业务登记种类。
新建业务登记种类表t_smsM_Breg,字段为id,name, memo,wtime,其中id为自增长编号,wtime为默认值getdate()
新建业务登记历史表t_smsM_BrMb,字段为tid,mbno,id,wtime,flag,其中tid为自增长编号,id对应于t_smsM_Breg的id,wtime为默认值getdate(),flag默认为0(0-待处理、1-已处理)
设计存储过程p_smsM_Breg,先从t_sms_Router获取下发内容,编号和site_id,用proc_send生成下行的短信,再插入评选投票历史表t_smsM_VtMb。
页面样式如下
业务登记种类:
备注:
对应的表为t_smsM_Breg,设计相应的存储过程来进行数据操作
用户发短信先进行抽奖登记,抽奖机构使用客户端通过互联网来提取数据,另用抽奖软件实现抽奖。
例1、明星签名照:用户发送mxqm到01850062,参与明星签名照抽奖
页面功能:
- 编辑上行短信的号码和指令,及对应的回复内容。(在“业务模板路由”页面中编辑,其中编号为t_smsM_PrizeHand中的id)
- 编辑手工抽奖种类。
新建手工抽奖种类表t_smsM_PrizeHand,字段为id,name, memo,wtime,其中id为自增长编号,wtime为默认值getdate()
新建手工抽奖历史表t_smsM_PhMb,字段为tid,mbno,id,wtime,flag,其中tid为自增长编号,id对应于t_smsM_ PrizeHand的id,wtime为默认值getdate(),flag默认为0(0-待抽奖、1-已抽奖)
设计存储过程p_smsM_PrizeHand,先从t_sms_Router获取下发内容、编号和site_id,用proc_send生成下行的短信,再插入手工抽奖历史表t_smsM_PhMb。
页面样式如下
手工抽奖种类:
备注:
对应的表为t_smsM_PrizeHand,设计相应的存储过程来进行数据操作
用户发短信参与抽奖,系统按照约定条件自动判断用户是否中奖,并把相应的内容下发给用户。
例1、地税发票:用户发送ds到0185007,参与地税发票抽奖抽奖
可以设置中奖概率、中奖等级、以及设置最高中奖数。及并提供各种个性化的回复。
如先将某一编号n或某一类号码设为中奖号码,当用户发送抽奖指令到某一号码时,自动产生一个编号,再和中奖号码对比,来判断用户是否中奖。
- 一般中奖:回复“恭喜你中奖,奖品是…
- 特殊号码:回复“恭喜你中了某某大奖,奖品是…
- 没有中奖:回复“你们目前的编号是:n ,离中奖编号还差100-n“
页面功能:
- 编辑上行短信的号码和指令,及对应的回复内容。(在“业务模板路由”页面中编辑,其中编号为t_smsM_PrizeAuto中的id)
- 编辑自动抽奖种类。
- 编辑奖品情况表。
- 编辑中奖编号。
- 查看并处理中奖名单。
新建自动抽奖种类表t_smsM_PrizeAuto,字段为id,name,total,memo,wtime,其中id为自增长编号,wtime为默认值getdate(),total为参与抽奖的人数
新建奖品情况表t_smsM_PaWinType,字段为id,paid,name,memo,flag,其中id为自增长编号,paid对应于t_smsM_ PrizeAuto的id
新建中奖编号表t_smsM_PaWinNo,字段为id,paid,winno,wintype,memo,flag,其中id为自增长编号,paid对应于t_smsM_ PrizeAuto的id,wintype对应于t_smsM_Pawintype的id
新建自动抽奖历史表t_smsM_PaMb,字段为id,mbno,paid,patotal,wtime, wintype,flag,其中id为自增长编号,paid,patotal对应于t_smsM_ PrizeAuto的id,total,wtime为默认值getdate(),wintype默认为0(0-无奖、其他-奖品情况),flag默认为0(0-无效、1-待发奖、2-已发奖)
设计存储过程p_smsM_PrizeAuto,先从t_sms_Router获取编号和site_id,根据编号更新并获取t_smsM_PrizeAuto中的total,用total和编号去和t_smsM_PaWinNo匹配,看用户是否中奖,并生成相关内容,最后用proc_send生成下行的短信。
提供各种形式的问答互动以及短信考试记分服务。
例1、业务引导:用户发送yw到01850081,根据提示了解相应业务内容
例2、智力问答:用户发送zl到01850082,参与智力问答
例3、短信考核:用户发送kh到01850083,参与业务考核
问答种类:
- 业务引导:
根据业务情况,设置业务种类及相应的回复,在用户上行后,根据内容判断回复相应内容:或提示用户进行选择、或回复业务内容。可用于提供专业化的客户服务。
- 智力问答:
设置各种智力问答题,可以根据答题的情况进行奖励。
- 短信考核:
设置各种业务考核题,根据回复的内容判断对错,进行计分。
页面功能:
- 编辑上行短信的号码和指令,及对应的回复内容。(在“业务模板路由”页面中编辑,其中编号为p_smsM_Qa中的id)
- 编辑问答种类。
- 导入问题。
- 编辑问题。
- 查看用户答题情况,可以查看详细情况和得分情况。
新建问答表t_smsM_Qa,字段为id,name,replyMsg,qaType,memo,wtime,其中id为自增长编号,wtime为默认值getdate(),replyMsg开始答题时的提示
新建问答种类表t_smsM_QaType,字段为id,name,qaType,memo,wtime,其中id为自增长编号,wtime为默认值getdate()
新建问答内容表t_smsM_QaCnt,字段为id,qid,cnt,asa,asb,asc,vla,vlb,vlc,goa,gob,goc,asok, memo。其中id为自增长编号,cnt问答的内容,asa、asb、asc为选项,支持两个或三个选项;vla、vlb、vlc为答案的得分,分数可以为负;goa、gob、goc当问题种类为“业务引导”时,选择某一选项后对应的回复内容编号;asok为正确答案。
新建答题情况表t_smsM_QaMb,字段为id,mbno,qid,qcid,cnt,wtime,flag,其中id为自增长编号,qid对应于t_smsM_Qa的id,qcid对应于t_smsM_QaCnt的id,wtime为默认值getdate(),flag默认为0(0-有效、1-无效);mbno,qid为主键。
新建答题情况明细表t_smsM_QaMbList,字段为id,mbno,qid,qcid,cnt,wtime,flag
新建得分情况表t_smsM_QaScore,字段为id,mbno,qid,total,wtime,flag
设计存储过程p_smsM_Qa,先从t_sms_Router获取编号和site_id,查询t_smsM_QaMb,如无记录则取t_smsM_Qa中的replyMsg提示用户按提示操作;有记录则查询t_smsM_QaCnt,判断答案是否正确或按需要下发对应的编号的短信内容(问题种类为“业务引导”时)。答题时需插入表t_smsM_QaMbList,并更新t_smsM_QaMb。如果答题结束,则需统计得分后插入表t_smsM_QaScore。
用户发送短信,同时能在网站上显示。如参与讨论。
例1、时事评论:用户发送pl加内容到0185009,可以发表自己对时事的评论
页面功能:
- 编辑上行短信的号码和指令,及对应的回复内容。(在“业务模板路由”页面中编辑,其中编号为t_smsM_Join中的id)
- 编辑互动种类。
- 查看互动内容。
新建互动种类表t_smsM_Join,字段为id,name,showType,memo,wtime,showTotal
,ReplyMsg,其中id为自增长编号,wtime为默认值getdate(),showType为查看互动内容时的显示格式,showTotal为显示的最大条数,ReplyMsg为回复内容。
新建互动情况表t_smsM_JoinMsg,字段为id,mbno,jid,msg,wtime,flag,其中id为自增长编号,jid对应于t_smsM_Join的id,wtime为默认值getdate(),flag默认为0(0-有效、1-无效)
设计存储过程p_smsM_Join,先从t_sms_Router获取编号、ReplyMsg和site_id,插入表t_smsM_JoinMsg,再用proc_send生成下行的短信。
设计存储过程p_smsM_JoinShow,根据t_smsM_Join的显示要求,从t_smsM_JoinMsg获取相应的短信显示在Web上。
用户多次发送短信,可以购买某一产品
例1、电影票:用户发送gmdy到0185010,购买电影票
例2、展览会入门券:用户发送gmzlh到0185010,购买展览会入门券
先设置购买此产品需要发送短信的次数。
当用户发送抽奖指令到某一号码时,记录此用户的发送次数,根据购买所需次数回复相应内容。
- 发送次数等于所需次数:提示用户可以获得某产品,并将此用户的发送次数设为无效,同时通知相关人员。
- 发送次数小于所需次数:回复例“你已经发送短信n条,还差m-n条就可获得门票”
页面功能:
- 编辑上行短信的号码和指令,及对应的回复内容。(在“业务模板路由”页面中编辑,其中编号为t_smsM_Buy中的id)
- 编辑产品种类。
- 查看并处理购买名单。
新建自动抽奖种类表t_smsM_Buy,字段为id,name,total,memo,wtime,其中id为自增长编号,wtime为默认值getdate(),total购买所需总条数
新建购买情况表t_smsM_BuyMb,字段为id,mbno,bid,wtime,flag,其中id为自增长编号,bid对应于t_smsM_Buy的id,wtime为默认值getdate(),flag默认为0(0-有效、1-已购买成功)
新建购买名单表t_smsM_BuyList,id,mbno,bid,btime,flag,memo,wtime,其中id为自增长编号,bid对应于t_smsM_Buy的id,btime为购买成功的时间,flag默认为0(0-未处理、1-已处理),btime为处理时间
设计存储过程p_smsM_Buy,先从t_sms_Router获取编号和site_id,插入表t_smsM_BuyMb,根据有效的购买条数和t_smsM_Buy对照,看用户是否购买成功,并生成相关内容,最后用proc_send生成下行的短信,如购买成功,插入t_smsM_BuyList,并更新表t_smsM_BuyMb中的相应记录。
根据业务的要求,可以由基础平台或Web管理平台中的相应部分提供如下功能:
- 业务定制、业务退定(由基础平台或WEB中的业务路由提供)
- 业务群发(由WEB平台中的日常业务处理提供)
- 业务点播(由WEB平台中的日常业务处理提供)
- 计费通知、包月计费(由WEB平台中的日常业务处理提供)
|