短消息增值短消息服务平台的设计与实现(通信学范文)

短消息服务  时间:2021-02-25  阅读:()

封面

《增值短消息服务平台的设计与实现》Word格式可编辑可修改

精心整理放心阅读欢迎下载

文档信息

增值短消息服务平台的设计与实现

摘要本文首先介绍了短消息业务和平台的概念参考中国移动的C MP P协议和有关规范 给出了一个短消息增值服务平台的设计实现方案和实现方法。对整个平台的通信机制业务处理后台管理数据库设计等关键问题进行了重点论述。 关键词CMPP协议短消息短消息网关 SP 0引言 随着中国一跃成为世界上最大的移动通信市场手机短信以它通信费用低廉双向传输通信质量可靠速度快等显著优点受到了越来越多人的青睐手机短信已被称为“第四媒体” 。除了大量使用的手机用户之间的点对点短信业务之外从信息平台到手机用户的短信信息服务业务也在快速发展该业务已经成为广大用户及时方便地获取信息的一种手段。 1有关短消息短消息业务及短消息服务平台 SMS(Short MessagingService) 是最早的但仍是现在火爆全球的文本短消息服务 EMS

Enhanced Message Service增强信息服务是(SMS)的新版本支持发送简单的图像、声音和动画等信息 MMS Multimedia MessagingService多媒体短信服务是目前短信技术开发最高标准的一种支持多媒体功能需要2. 5G或3G的网络来支持它的运转。 本增值短消息服务平台的软件设计使用Visual C++作为前台开发工具 SQLServer 2000作为后台数据库是一个是以手机为应用基础、以前台页面为操作界面具有丰富增值服务内容的完整的、大规模短信息处理的系统。通过这个平台可以向中国移动、 中国联通和小灵通等用户提供发送短信息、定制、点播/订阅、答题积分福彩投票/竞猜等

短信服务具体应用如电视、电台媒体开展互动业务报纸、杂志媒体提供新闻服务气象台、彩票中心、交警提供资讯、商场开展客户调查及促销活动服务等。为简单起见本文只讨论其中基于中国移动短信网关移动手机用户的系统开发与实现。 2 CMPP协议的介绍CMPP China Mobile Peer to Peer协议全称是中国移动通信互联网短信接口协议其规定了以下三个方面的内容 1业务提供者

SP与互联网短信网关(ISMG)之间的接口协议 2互联网短信网关之间的接口协议 3互联网短信网关和汇接网关(G)之间的接口协议。图1互联网短信网关组网结构C MP P协议主要提供以下两类业务操作 1短信发送Short Message Mobile Originate MO操作手机用户为起始端 2短信接收Short Message MobileT erm i nat ed MT操作手机用户终止端 CMPP协议和HTTP FTPSMTP等协议一样处于TCP/IP网络模型的应用层它以TCP/IP协议作为底层通信承载。 SP与ISMG之间进行信息交互式可以采用长连接或短连接两种方式。本短消息服务平台所采用的连接方式为长连接即 SP与ISMG以C方式建立连接时在一个TCP连接上可以连续发送多个数据包在TCP连接保持期间如果没有数据包发送需要双方发送链路检测包以维持连接。 3系统的结构和功能模块图3. 1系统的层次结构 本短消息服务平台在典型的网络条件下具有稳定可靠、处理能力高、组网能力强、系统管理方便、使用灵活等特点能够满足功能性、稳定性、效率性的要求 同时该系统拥有强大的后台管理功能和业务处理能力从而为业务的可持续发展以及用户快速准确获取信息创造了条件

整个平台的组成分为四个层次硬件、 网络、通信层包括支持系统运行的所有服务器、客户机及网络设备、通信链路以及存储设备、输入输出设备等硬件操作系统层系统软件层 基于硬件平台之上提供基本的系统调用及网络通信功能如Windows2000等 应用开发层在操作系统之上的应用开发环境包括软件开发工具数据库等如Visual C++、 SQL server 2000等 应用软件层最外层 面向业务应用使业务信息化和自动化用户通过它进行业务上需要的信息处理、信息存储和信息传送等工作是与操作人员直接相连的部分。 3.2系统结构示意图介绍 系统主要由通信模块业务处理模块后台管理模块和数据库部分组成其软件结构示意图如图2所示 图2系统软件结构示意图系统支持CMPP 3.0 中国移动协议、 SGIP 中国联通 、 SMGP 中国电信、中国网通 、 SMPP协议

国际标准 。包括MO 包括用户上行消息和状态报告接收及MT下行的处理通信程序的编写完全按照协议进行开发。 4短消息服务平台通信模块的设计 通信模块是短消息服务平台的主要模块它是SP 业务提供者和各基础网络运营商网关之间的一条高质量的传输通道负责接收和响应用户请求。该模块主要是通过多线程机制来处理由SP发送到短消息网关的消息和接收由短消息网关发送的消息。通信模块涉及到以下几个重要线程消息发送线程消息接收线程业务处理线程包括MO业务处理线程和MT业务处理线程 链路维持线程以及监控线程其中监控线程作为主线程是由MFC程序自动创建的主线程用于创建和监控上述几个辅助线程。通信双方以C方式(SP作为客户端 ISMG作为服务器端)建立TCP连接 由函数

SP_Connect_ISMG (char IsmgIp [16]  uigned short IsmgPort)实

现该函数封装了TCP/IP的Socket连接建立的过程其中参数I smgIp和工IsmgPort分别为短消息网关的IP地址和端口号CMPP3.0协议规定SP和网关之间的建立长连接时所用的端口号为7890 然后需要建立CMPP连接以实现SP和I SMG之间的短消息通信该操作的目的是SP向ISMG注册成为一个合法SP的身份 由函数CMPP_Connect()来实现。至此双方建立了基于T CP/I P的CMPP应用层连接。 该模块用两个缓冲队列来放置消息它们分别是用来存放由网关发送的消息接收队列存放SP发送到网关的消息发送队列。为了让多个线程可以互斥地从收发缓冲队列中存取数据包必须遵循 当缓冲队列已满时不能继续接收短信所有消息接收线程针对接收缓冲队列或者MT业务处理线程针对发送缓冲队列必须等待当缓冲队列为空时不能继续取出短信所有MO业务处理线程针对接受缓冲ISMGReceive threadSend threadBuffer queue queuequeueBuffer queue queue queueProcess thread TTqueue queueProcess thread queue queueDatabase队列或者消息发送线程针对发送缓冲队列必须等待。本通信模块通过使用临界区和信号量技术处理了多线程之间的同步问题。

图3 通信模块工作流程图短消息队列及其指针定义如下typedef struct cmpp_head { uigned long

TotalLength; /*消息总长度含消息头和消息体 */uigned long CommandId; /*命令或响应类型*/uigned long SequenceId; /*消息流水号顺序累加步长为1*/} CMPP_HEAD; /*CMPP消息头*/typedef struct

cmpp_packet { CMPP_HEAD Pk_head;

Char Data[CMPP_PKG_SIZE] ; /*消息体*/ uigned longSeqid; /*统一消息流水号*/ CTime Time; /*写入消息队列时间*/ BOOL Soue; /*消息类型判断即为MO还是MT消息*/} CMPP_PA CKAGE; /*消息的结构*/CMP P_PACKAGEm_SmSen d[MAX_SM_SEND]发送短消息队列CMPP_PACKAGEm_SmRecv[MAX_SM_RECV] 接收短消息队列转贴于intm_endIn 发送队列的输入指针int m_endOut 发送队列的输出指针int m_nRecvIn 接收队列的输入指针intm_nRecvOut 接收队列的输出指针其中将短消息存入短消息队列由函数PutRecvMessage 实现 void

PutRecvMes sage(CMPP_PACKAGE * pparam intnCount) {„„„„„„„„„„. .for (int i = 0; i =

MAX_SM_RECV) m_nRecvIn =

0;pparam++;„„„„„„„„„„. . }„„„„„„„„„„. . }从接

收短消息队列中取出一条短信由函数GetRecvMessage  实现 BOOLGetRecvMes sage(CMPP_PACKAGE *pparam) {„„„„„„„„„„. .EnterCriticalSection(&m_csRecv) ; if (m_nRecvOut != m_nRecvIn)

{„„„„„„„„„„. .memcpy(pparam

&m_SmRecv[m_nRecvOut]  s izeof(CMPP_PACKAGE)) ;m_nRecvOut++; i f(m_nRecvOut >= MAX_SM_RECV) m_nRecvOut =

0;„„„„„„„„„„. . }LeaveCriticalSection(&m_csRecv) ;„„„„„„„„„„. . }5系统业务处理模块的设计 该

模块主要实现各种具体的短信业务通过对MO消息进行业务分类解析、业务规则处理直至生成下行MT等结果。 系统将根据用户编辑的短信判断MO 用户上行短信类型如果是用户点播类服务根据点播命令和点播内容对数据库中关系记录进行查询将查询结果生成一条短信排入到输出队列。其他类型服务以次类推。例如用户若定制股票信息编辑短信息→定制代码50→代码→发送→短信平台特服号→回馈信息至用户手机。 举例用户定制600001的股票信息在编辑短信息时输入50600001按发送键输入9688将短信息发送系统判断为定制类服务进行定制类服务处理完成定制类业务的关系记录并将信息发送给用户。用户将在每交易日的9

40、 11 35、 15 10收到600001的行情报价和动态股评 18 40收到该股的盘后评述。 6后台管理模块的设计 后台管理系统对合作企业和所有开展的业务进行管理并提供各种必须的功能。其结构示意图如图5所示 6. 1系统管理提供与系统管理相关的所有管理功能包括公有信息的维护等通过系统管理功能管理员可以对整个平台实现相应的设置、定义数据、处理系统信息。具体的说可以实现机构的管理、权限的管理、业务的管理、 以及公共信息管理等功能。 6.2业务管理 业务的基本信息、命令、计费的管理是业务的管理中心包括业务配置、业务审核和业务生效等功能 以流程化的形式实现业务全过程的管理。本短消息服务平台典型的业务管理包括通用定制管理和点播/订阅管理。 6.3用户管理模块 是对手机用户的个人信息进行管理的模块主要包括用户个人信息如姓名、手机号、个人爱好等。用户定制信息如定制内容、发送时间、发送方式用户信息的分析。 6.4记费管理 计费方式分为两种

包月制、计次制。包月、计次的费用根据不同的栏目可以人工调整。每发送一条信息都要把相关记录写入日志数据库用来计费以及将来查询使用。 日志中应包含用户的手机号码、信息的计费类别、信息发送时间等。根据日志统计用户的费用 同时要把数据上传到移动、联通或电信计费中心进行对帐。 6.5积分管理 主要包括积分福彩管理和答题积分管理。用户参加该平台开展的互动节目时可以获得积分 当积分达到指定的标准时可参加抽奖活动。 6.6 日志管理模块 日志管理模块主要提供详细的系统日志管理功能如已成功发送到中国移动、中国联通等短信网关的日志通过中国移动、 中国联通短信网关已成功发送到SP的日志等。具体包括信息及节目变更日志短信收发日志系统运行日志系统维护日志。 6. 7客服管理提供客服人员方便地进行终端用户的信息查询协助及时处理投诉和咨询。 6.8群发管理 支持群发组的号段生成文件导入定时群发等多样化的群发。 7 数据库模块的设计 本短消息服务平台采用SQL Server 2000作为后台数据库。 SQL Server 2000是一个功能完备的正规数据库管理系统支持开发的引擎、标准的SQL语言、扩展的特性(如复制、 O LAP、分析)等功能 安全性高、稳定性好 能支持大量数据的存储。前台使用基于OLE DB的ADO接口访问数据库能统一访问多种关系和非关系数据库 并有多种编程接口 访问速度快、可扩展性好、运行性能高、容易使用。数据库系统是实现系统运行数据的存取、应用用户数据的存取及日志对帐数据的数据服务。主要包括 1系统运行中数据的存取这是对应于具体应用的运行中数据这部分数据通过数据库的库交换数据方式保存系统运行中的中间数据并实现向具体的服务进程提供数据服务 2应用用户数

据的存取这是对应于具体应用的应用数据。例如信息定制的手机用户的信息、具体应用的费用信息用户的信息统一保存在内容数据库中后台管理人员可以通过管理界面完成信息栏目的添加、删除、修改等操作每日更新的信息由后台管理人员在内容编辑器中录入。

3 日志对帐数据的存储这是系统运行的日志信息及用于与移动网络运营商计费系统对帐的系统运行的费用数据的存储并向应用端提供数据服务。部分数据库表如下 (1)短消息接收表 用于存储从短消息网关接收的短信记录 (2)定时短消息发送表用于存储短消息平台定时发送的短信 3短消息发送表 用于存储即时发送短信以及定时到点可立即发送的短信 4用户基本信息表 记录用户的手机号码姓名兴趣爱好等 5系统管理员表记录管理员的认证信息用来验证系统管理员的身份 6定制表 记录手机用户定制的各种服务信息 7点播表记录手机用户点播的各种服务信息

8 日志表记录系统发送和接收短信的历史纪录 9含敏感内容消息表记录用户和系统管理员提交的含有敏感字段的短信日志

10费率表 记录不同的业务对应的具体资费每种业务分为按条和包月两种费率  11 日志与网关对应表存储日志类型和不同运营商网关协议中的SMS资费对应关系 12系统信息表 存储固定的系统信息如口令提示和使用帮助等 8结论 本短消息服务平台系统支持多运营商可以同时接入多家移动、联通或电信只需添加配置即可无须做系统结构、代码改动支持多业务服务系统实行模块化的设计方便新业务的开发。该平台目前已经成功应用于实际的短消息增值业务与中国移动联通等网关的连接均具有较好的稳定性能够满足系统通信应用的要求使用效果良好。参考文献1

易探云月付18元起,香港/美国/深圳/北京VPS,CN2、BGP等多线路

易探云怎么样?易探云是国内一家云计算服务商家,致力香港服务器、国内外服务器租用及托管等互联网业务,目前主要地区为运作香港BGP、香港CN2、广东、北京、深圳等地区。易探云服务器均选择当下热门线路,比如CN2 GIA、BGP线路、CN2线路等,所有云主机支持月付,并且首月优惠,年付优惠,优惠后香港沙田云服务器/独立ip/香港CN2线路,每月仅18元,188元/年。点击进入:易探云官方网站地址1、香港...

HostYun(25元)俄罗斯CN2广播IP地址

从介绍看啊,新增的HostYun 俄罗斯机房采用的是双向CN2线路,其他的像香港和日本机房,均为国内直连线路,访问质量不错。HostYun商家通用九折优惠码:HostYun内存CPUSSD流量带宽价格(原价)购买地址1G1核10G300G/月200M28元/月购买链接1G1核10G500G/月200M38元/月购买链接1G1核20G900G/月200M68元/月购买链接2G1核30G1500G/月...

CloudCone闪购优惠洛杉矶MC机房VPS月$1.99 便宜可随意删除重开

CloudCone商家我们很多喜欢低价便宜VPS主机的肯定是熟悉的,个人不是特别喜欢他。因为我之前测试过几次,开通的机器IP都是不通的,需要删除且开通好几次才能得到一个可用的IP地址。当然他们家的优势也是有的,就是价格确实便宜,而且还支持删除重新开通,而且机房只有一个洛杉矶MC。实话,如果他们家能多几个机房,保持现在的特点,还是有很多市场的。CloudCone是来自美国的主机销售商,成立于2017...

短消息服务为你推荐
邮箱打不开怎么办我的邮箱打不开怎么办百度抢票浏览器百度浏览器怎么抢票?照片转手绘照片弄成手绘一样的那个软件到底叫什么,能不能告诉啊?手机区号手机号码彩信中心短信中心的号码是多少怎么点亮qq空间图标QQ空间图标怎么点亮?创维云电视功能什么是创维云电视啊?创维云电视是什么意思?安装迅雷看看播放器迅雷看看播放器安装2012年正月十五2012年正月十五上午9点27分出生的女孩儿五行缺什么,命怎么样什么是云平台什么是云平台管理软件,一个云平台软件应该具有哪些基本功能
域名备案 火山主机 187邮箱 美国主机推荐 mediafire 香港机房托管 gateone e蜗牛 百兆独享 七夕促销 世界测速 tna官网 linux服务器维护 服务器监测 免费私人服务器 英雄联盟台服官网 服务器防火墙 广州主机托管 双十二促销 开心online 更多