资源描述
SMS&MMS应用和开发实训
实 训 报 告
项目名称: 短信增值业务设计和实现
学生姓名: 刘 潮
学 号: 90916P29
系 部: 计算机和软件学院
专 业: 移 动 应 用 开 发
指导老师: 张 霞
完成时间: 3月 18 日
目录
1 项目概述 1
1.1 项目介绍 1
1.2 设计目标和要求 1
1.3 开发平台 1
2 总体设计 2
2.1 短信增值业务产品介绍 2
3具体设计 2
3.1 系统需求分析和步骤设计 3
3.2 系统数据库设计 8
3.3 代码实现 9
4 运行和测试 13
5 总结 16
6 参考文件 17
1 项目概述
1.1 项目介绍
进入二十一世纪,手机增值业务发展快速,给我们带来了很多便利。此次SMS实训,我们经过大汉三通虚拟平台, WEB管理平台、模拟网关,模拟开发出能够经过手机点播一项增值业务。此次实训,经过简单设计实现了经过手机发送对应指令来对对应手机进行充值业务。
此次实训,经过简单设计实现了经过手机发送对应指令来对对应手机进行充值业务。
1.2 设计目标和要求
围绕短信业务开发完整生命周期(产品设计、技术设计、技术开发、业务测试、业务上线)展开,实现一项短信点播业务。
1.产品设计:从产品最初构想开始,对短信产品步骤及步骤中关键点进行具体设计,
2.技术设计:熟悉平台,并把大汉三通基础平台、WEB管理平台、模拟网关配置运行成功;了解、演示短信步骤;设计业务数据库,入实训汇报。
3.技术开发:最少使用平台一个接口(数据库存放过程接口)完成整个业务开发。
4.业务测试:根据产品设计业务步骤一步一步测试,并有测试汇报。(贴图)
5. 业务上线:将业务在真实环境中演示。
1.3 开发平台
大汉三通短信平台CTC-SMS
中国移动通信CMPP3.0服务端模拟器
SQL server
二级SP网络拓展结构图1:
图1
2 总体设计
即建立在移动通信网络基础上,除了语音以外那些数据服务,比如中国移动“移动梦网”业务。
3具体设计
利用大汉三通短信平台CTC-SMS进行二次业务开发,平台定位示意图见图2。依据路由信息,短信平台实时将用户针对该节目标上行短信根据各接口格式转给对应业务程序进行业务处理;业务处理完成后,业务程序依据各接口要求格式,将下行给用户信息转给短信平台,然后短信平台完成短信下发。
图2
3.1 系统需求分析和步骤设计
3.1.1开启移动模拟网关
1.模拟器注册
中国移动通信CMPP3.O服务器端模拟器V1.00开启前要注册,不然将无法开启。
直接点击,
图:
图3
弹出IE注册框,即可出现下列注册信息
图:
图 2.1.2
说明注册成功,点击开启按钮
图:
图 2.1.3
说明网关开启成功。
2.模拟器参数配置
点击模拟器程序右下角配置按钮,进入配置页面,添加SP用户信息
图4
确定、返回,重新开启模拟器程序。
3.1.2配置基础平台
1. 开启基础平台
双击文件夹中 TTSmg.exe,开启成功,
图5
依据要求配置系统参数。配置好后,点击保留参数。会自动写到配置文件:tsmg.ini中。保留后点击右下角退出按钮,而且重新开启基础平台。(双击文件夹中 TTSmg.exe),程序这么才能读取刚才设置信息
2.运行配置
点击运行配置,进入该页面,依据服务端模拟器配置来配置短信平台。配置好后运行信息图:
图6短信平台运行配置
图7服务端模拟器配置
连接状态下会显示连接成功信息,连接ID会自动分配。假如连接状态不成功应直接点保留信息,方可出现成功。假如还不成功,直接退出程序,重新开启基础平台。
3.基础平台和模拟网关连接测试
(1)、测试上行
点击大汉三通短信平台日志信息界面,通常全部会出现这些检测连接数据包。
点击模拟器下发信息按钮,出现信息下发界面,其中Dest_Id为短信平台运行商配置下接入号代码 Send_Counts 是下发次数 Interval 为信息下发时间间隔。点击发送按钮,日志信息界面出现模拟器下发信息
图8 CTC-SMS日志信息
成功出现模拟器消息成功下发显示
(2)、测试下行
打开大汉三通短信平台日志信息页面,点击显示测试信息按钮
选择正确连接ID,填入要测试发送内容,填入发送次数,点击发送测试信息按钮。发送测试信息。模拟器上显示效果图:
图9服务端模拟器系统状态。
3.1.3管理平台业务配置
打开大汉三通3T—ISMG业务管理系统,成功登陆,打开业务配置。
1.连接信息配置
进入连接信息配置,点添加按钮,依据大汉三通基础平台,配置连接信息,图:
图10连接信息配置
点击保留,显示操作成功。
2.下发短信类型配置
进入下发短信类型配置,点击添加按钮,填写对应信息,保留信息,出现下图信息,则下发信息类型配置成功。
图11下发短信类型配置
3.节目配置
进入节目配置,点击添加按钮,填写节目名称,并保留。
图12
点击”查看全部连接”,进入添加,填写信息并保留,
图13
点击”查看指令”,进入添加,填写信息并保留,
图14
到此,节目配置成功。
4.节目路由
打开节目路由页面,添加节目路由,选择节目,在这里,我们路由方法选择1—存放过程转发,存放过程名称和数据库一致,即proc_cs,并保留。
图15
到此节目路由配置成功。
3.2 系统数据库设计
打开Microsoft SQL Server ,连接数据库.
3.2.1数据库存放过程接口
A. 接收上行短信
当短信平台收到上行短信后,会依据上行短信对应业务,将该短信分发给该存放过程处理。比如英语六级成绩查询业务存放过程proc_cjcx,系统会自动调用proc_cjcx并传输相关参数加以实施,从而能够实施英语六级成绩查询业务步骤。
业务存放过程根据下面格式接收用户上行参数:
CREATE PROCEDURE [dbo].[proc_cjcx]
路由到存放过程上行参数列表以下:
参数名称
类型
描述
@s_iPhone
Varchar(35)
手机号码
@s_iService_Code
Varchar(35)
服务号码
@s_iContent
Varchar(200)
短信内容,或称为上行指令。
@i_iConnId
int
连接Id,对应于基础平台连接Id
@s_iLinkId
Varchar(20)
用于表示点播关系,下行时候需要携带。对于有包月业务,可能为空。
@s_iReserve
Varchar(20)
保留,用于某种特殊情况
@s_iMoIdentity
Varchar(30)
Mo标识
B.业务处理
依据自己业务情况和获取用户上行内容,在存放过程里面做业务步骤处理,处理完成后调用系统下行存放过程下发结果短信。
C.下行业务结果短信
exec ctc_sms..proc_MtSend @s_iPhone, @s_iService_code, @sendmsg, @i_iPgId, @i_iConnId,1,@s_iLinkId,'',@s_iReserve,@s_iMoIdentity
3.2.2数据库存放数据表
创建数据库表格用于存放用户信息。
图16 手机银行帐户
图17 手机专有帐户
3.3 代码实现
ALTER PROCEDURE [dbo].[proc_cs]
/*
========================================
名 称: 简单业务步骤(范例)
编 号: 1001
创 建: -03-15
创建人: liuchao
========================================
*/
---路由到存放过程上行参数
@s_iPhone varchar(350), --上行手机号码
@s_iService_Code varchar(35), --服务号码
@s_iContent varchar(200), --上行短信内容
@i_iConnId int, --连接ID
@s_iLinkId varchar(20), --业务LinkId
@s_iReserve varchar(20) ='' , --预留字段,通常为空
@s_iMoIdentity varchar(30)=''
AS
set nocount on
declare @i_iPgId varchar(20),@sendmsg varchar(200),@cmd varchar(21)
select @cmd=@s_iContent
select @i_iPgId=1
declare @num1 varchar(11),@money1 varchar(50) ,@money2 varchar(10)
if @cmd='cz' --匹配用户点播指令
begin --select @i_iPgId=7
--设置点播节目ID(WEB管理平台上对应节目名称前数字)
select @sendmsg='这里是手机话费管理中心,请发送cz+手机号+充值金额,进行充值!'
--对应点播下发消息
end
else
begin
set @num1= substring(@cmd ,3,11)
set @money1 = substring(@cmd ,14,len(@cmd)-13 )
if (select money2 from moneyliu where phonenum = @num1) < cast(@money1 as int )
begin
select @sendmsg='您银行帐户余额不足,无法为您完成充值!'
end else
begin
update liuchao set money1=cast(money1 as int)+cast(@money1 as int)where phonenum = @num1
update moneyliu set money2= money2-@money1 where phonenum =@num1
select @money2 = money1 from liuchao where [phonenum]= @num1
select @sendmsg='您手机号为:'+@num1+'您成功充值了'+@money1+'您专有帐户余额为'+@money2
end
end
exec proc_MtSend @s_iPhone, @s_iService_code,@sendmsg,@i_iPgId,@i_iConnId,1,@s_iLinkId,'',@s_iReserve,@s_iMoIdentity
--调用下发存放过程下发短信
GO
4 运行和测试
1、调用存放过程proc_cs
测试结果:
图16输入指令cz 图17短信平台回复
图16输入指令cz0充值 图17短信平台回复充值成功
图16输入指令cz00充值 图17短信平台回复充值失败
2、调试中犯错现象
①在调试服务端模拟器时出现“05222用户端未登录”情况;
②登录大汉三通3T—ISMG业务管理系统时,不能成功登录;
③调试超女短信业务时,发送“tp”,能够成功运行,而发送“tp001”或“tp002”则出现错误;
④当对对应手机进行二次充值后,手机专有帐户金额为字符相连,并非金额相加,实际情况不符。
3、犯错原因
①服务端模拟器数据库配置和大汉三通短信平台数据库配置不匹配;
②大汉三通3T—ISMG业务管理系统和SQL server 登录密码不匹配;
③大汉三通3T—ISMG业务管理系统点播指令设置犯错;
④手机专有帐户和手机银行帐户在定义时为varchar,对它们进行相加操作时,只能是字符相连。
4、处理方法
①将服务端模拟器数据库和大汉三通短信平台数据库设置和SQL server 设置调为一致;
②SQL server 企业管理器中将用户SA登录密码重新设置;③将大汉三通3T—ISMG业务管理系统点播指令正确匹配改为模糊匹配;
④经过强制类型转换符cast,将varchar强制转换为int,图:
最终实现了金额相加功效。
5 总结
经过短短一周相关SMS&MMS应用和开发实训,我初步学会了使用大汉三通虚拟平台, WEB管理平台、模拟网关。从整体上掌握了短信存放转发过程,对上学期所学知识有了愈加深入了解。我们实训时间只有一周,要想做一个完美SMS增值业务几乎是不可能事,何况是一个人做呢。我认为,这么实训关键不是这一周能做出多完美结果,而是自己在这一周内能学习到什么,更不是为了完成最终作业而实训。
实训刚开始,在老师讲解率领下,我完成了前期配置工作,即使完全是根据步骤来配置,不过假如不细心还是很轻易犯错。以后,根据老师要求完成了相关模拟超女投票存放过程。剩下时间里,我们要自己去设计一个相关短信存放转发业务。自己刚开始想做一个相关成绩查询业务,经过调试能够简单实现成绩查询功效,感觉有些过于简单,决定从新做一个相关手机充值业务。经过请教同学和老师,最终能够成功实现用户发送指定命令就能够对对应手机进行充值。此次实训收获还是不小。
实训两周时间是比较短暂,实训过程中难免会碰到很多这么那样问题,所以不可能在这么短时间内全部处理。实训和平时上课显然不相同,老师不会也不可能仔细讲解每一个知识点,不然话,两个月时间恐怕全部是不够。实训我们要靠自己,不知道问题要立即问老师,问同学或查阅资料。态度很关键,摆正自己心态。只有自己付出过,当程序运行成功时那种喜悦才会令自己有一个莫名自豪感。态度决定一切!
此次实训还得到了张老师悉心指导,老师耐心细致教学让我化解了实训过程中碰到众多难点,使我能顺利完成实训,在此对老师表示衷心感谢。
6 参考文件
1、大汉三通短信平台CTC-SMS 业务二次开发接口手册
2、大汉三通短信平台CTC-SMS平台安装手册
3大汉三通短信平台CTC-SMS使用操作手册
4、大汉三通短信平台CTC-SMS 平台使用说明书
5、大汉三通短信平台CTC-SMS 产品说明书
6、大汉三通短信平台工程安装及维护手册
展开阅读全文