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