网吧广告系统概要设计.doc_第1页
网吧广告系统概要设计.doc_第2页
网吧广告系统概要设计.doc_第3页
网吧广告系统概要设计.doc_第4页
网吧广告系统概要设计.doc_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

此文档收集于网络,如有侵权,请联系网站删除盛世华银网吧广告系统概要设计说明书 拟制秦成金日期2006-09-27审核日期审核日期批准日期Sun Rising Software Co., Ltd.辰日理想软件有限公司All rights reserved版权所有 侵权必究修订记录Date日期Revision version修订版本Description描述Author作者分发记录Copy No.Holders Name & Role 持有者和角色Issue Date 分发日期12345目 录摘 要:41 简介51.1 目的51.2 范围51.2.1 软件名称51.2.2 软件功能51.2.3 软件应用52 系统说明62.1 系统架构设计62.2 开发环境62.3 系统总体设计62.4 系统模块划分及功能描述62.4.1 远程管理端(RemoteUI)模块划分72.4.2服务端(Server)模块划分72.4.3 代理端(Agent)模块划分73 功能模块说明83.1 远程管理端模块详细描述83.1.1 用户界面模块83.1.2 用户管理模块113.1.3 Server管理模块123.1.4 消息处理模块123.1.5 HTTP消息通讯模块133.2 服务端(Server)模块详细描述133.2.1管理功能模块133.2.2消息处理模块143.2.3 HTTP消息通讯模块143.2.4 TCP/UDP通信模块153.3 代理端(Agent)模块详细描述163.3.1 管理功能模块163.3.2显示功能模块164 通讯协议设定18盛世华银网吧广告系统概要设计说明书关键词:RemoteUI,Server,Agent摘 要:本文主要描述了一个广告的发布平台,由远程管理端、服务端和代理端三部分组成。远程管理端主要完成广告数据的录入及通过网络对服务端进行控制。服务端用于对代理端的数据进行维护与更新。代理端用于播放广告,播放的形式由桌面广告、IE广告、IE间隙广告、登陆广告及弹出广告等几部分组成。本文档面向的主要对象为开发人员、设计人员、测试人员,并作为指导开发的唯一来源。缩略语清单:RemoteUI:据的录入及Server的管理。Server:维护及管理Agent的广告数据。 Agent:管理客户端的广告显示方式。DLL: Dynamic Link Library 动态链接库。TCP: Transmission Control Protocol传输控制协议。IP: Internet Protocol网际协议。UDP: User Datagram Protocol用户数据报协议。HTTP: Hyper Text Transfer Protocol 超文本传输协议。1 简介1.1 目的本文将要描述盛世华银网吧广告系统的组成结构,各组成部分内部的模块划分、模块结构、模块间的关系、模块间的数据流以及网络通讯协议定义,用于指导软件系统的设计和开发。1.2 范围1.2.1 软件名称系统名称为盛世华银网吧广告系统。1.2.2 软件功能系统主要功能是通过远程管理端、网吧内服务器程序、客户代理端对客户机器进行控制,实现客户端的桌面广告的更改及更新,IE浏览器内容顶端的广告更改及更新,IE浏览器浏览间隙广告更改及更新,系统登陆时弹出广告的更改及更新,系统弹出广告的更改及更新。1.2.3 软件应用系统适用于大型网吧,作为一种广告发布平台向网吧用户提供丰富的广告信息。2 系统说明2.1 系统架构设计盛世华银网吧广告系统基于C/S结构开发,由远程管理端(RemoteUI),服务端(Server),代理端(Agent)组成。远程管理端与服务端间通过HTTP协议进行交流,服务端与代理端间适用TCP和UDP的方式进行通信,服务端与代理端都以系统服务的形式安装于网吧服务器与用户机器上。2.2 开发环境具体开发环境:客户端操作系统为Windows2000,WindowsXP,Windows2003;整个系统采用C+语言编写,使用VC6.0进行编译。2.3 系统总体设计2.4 系统模块划分及功能描述2.4.1 远程管理端(RemoteUI)模块划分l 用户界面模块:提供用户操作界面,包括服务端管理界面、用户管理界面、参数设置界面三部分。l 用户管理模块:用户信息管理模块,具有对用户信息读取、修改功能。l Server管理模块:主要实现与服务端(server)联机后对其进行管理,包括对服务端的当前状态的浏览、广告数据的修改、系统模块更新等功能。l 消息处理模块:主要是分别对发送和接收的消息进行封装和解析。l HTTP通信模块:实现通过HTTP协议进行网络通讯功能。2.4.2服务端(Server)模块划分l 管理功能模块: 实现对服务端(Server)的广告数据及数据版本维护以及对其管理的代理端(Agent)进行实时控制,主要包括状态检测,数据更新,模块更新等。l 消息处理模块:实现了分别对发送和接收的消息进行封装和解析的功能。l HTTP通信模块:实现通过HTTP协议进行网络通讯功能。l TCP/UDP通信模块:实现通过TCP/UDP进行网络通讯功能。2.4.3 代理端(Agent)模块划分l 管理功能模块:实现了对本地数据及数据版本的维护及更新的功能。l 显示功能模块:实现了IE插入广告、桌面广告、系统登陆广告、弹出式广告等多种广告的显示功能。3 功能模块说明 3.1 远程管理端模块详细描述3.1.1 用户界面模块l 用户登录界面:l 用户管理界面:l 远程管理端主界面:l 参数设置界面:l IE广告设置界面:l 模块更新界面:3.1.2 用户管理模块l 功能描述:主要负责用户信息的管理。主要流程如下:1)登陆界面显示前,读取用户配置信息,网吧配置信息2)检查用户的帐户和密码3)登陆成功后,连接网吧服务器(server)4)连接成功后,可以修改用户帐户及密码注:默认用户为user1,user2,user3,密码都为123456。用户名及密码的加密方式为MD5。l 配置文件及相关项:配置文件名为usercfg.xml, srvlst.xml, 相关项为, l 主要类:TUserMngl 主要函数:ReadUser () :读取指定用户信息Login() :登陆信息检查MD5Encode():将字符进行MD5加密ChangeUserID() :改变用户名ChangeUserPWD() :改变用户密码3.1.3 Server管理模块l 功能描述:主要实现与服务端(server)联机后对其进行管理,包括对服务端的当前状态的浏览、广告数据的修改、系统模块更新等功能。主要流程如下:1)与服务端连接成功后,下载服务端(Server)的配置文件到本地目录2)下载各广告信息,同时获得服务端管理的代理端(Agent)状态信息3)更新某项广告数据:通知服务端(Server)某广告数据已经更新, 等待服务端(Server)下载数据信息4)更新某个模块:通知服务端(Server)某模块数据已经更新, 等待服务端(Server)下载数据信息注:下载方式为一端向另一端发送获取数据的HTTP请求,然后等待回应。l 配置文件及相关项:配置文件名为svrcfg.xml, 广告数据相关项为 , 模块项为 注:ad为广告标识,id为具体的广告项,version 当前项的广告版本号, path 广告的路径, name 广告文件名,mdl为模块标识,id为具体的模块项,version 当前项的模块版本号, path 模块的路径, name 模块文件名l 主要类:TSvrMngl 主要函数:Connect(): 连接服务端(Server)DownloadCfg() :下载配置文件信息SendRequest() :发送请求信息UpdateItem():更新某一项广告数据UpdateModule() :更改某一模块数据3.1.4 消息处理模块l 功能描述:实现了分别对发送和接收的消息进行封装和解析。主要流程如下:1)封装:当有消息发送时,消息由本模块进行封装成固定的消息格式,然后通过通信模块的发送函数将消息发送出去2)解析:当有消息到达时,本模块将消息进行解析,提取消息目的及内容,然后交给上层处理l 主要类:TMsgProcl 主要函数:MakeMsg :建立消息ParseMsg :解析消息3.1.5 HTTP消息通讯模块l 功能描述:HTTP通信协议的实现。主要流程如下:1)建立连接:建立HTTP连接2)发送请求信息:发送HTTP请求信息3)发送响应消息:响应HTTP请求信息4)关闭连接:关闭HTTP连接l 主要类:TSocketTHTTPl 主要函数:Connect():建立连接Request():发送HTTP请求信息Response():发送HTTP响应消息Close():关闭HTTP连接3.2 服务端(Server)模块详细描述3.2.1管理功能模块l 功能描述:实现对服务端(Server)的广告数据及数据版本维护以及对其管理的代理端(Agent)进行实时控制,主要包括状态检测,数据更新,模块更新等。主要流程如下:1)收集代理端(Agent)的登陆消息,生成代理端(Agent)队列,发送更新时间戳2)收到远程管理端(RemoteUI)的更新消息,终止当前与代理端(Agent)的数据连接,下载广告数据存储到src文件夹,更新服务端(server)的配置文件3)检测代理端(Agent)状态即更新代理端(Agent)队列内代理端(Agent)的当前状态,当前状态包括开关机状态,当前广告项是否需要更新4)每次向10个代理端(Agent)发送数据更新消息,等待10秒后,继续轮循,直每个代理端(Agent)的更新时间戳与服务器同步注:判断代理端的某广告项是否需要更新目的是防止已经更新完成的代理端再次被更新。判断是通过比较服务端每次更新后产生的时间戳。l 配置文件及相关项:配置文件名为svrcfg.xml广告数据相关项为 , 模块项为 ,时间戳注:ad为广告标识,id为具体的广告项,version 当前项的广告版本号 path 广告的路径 name 广告文件名;mdl为模块标识,id为具体的模块项,version 当前项的模块版本号 path 模块的路径 name 模块文件名l 主要类:TSvrAppTAgentMngl 主要函数:CheckState(): 发送广播消息,更新代理队列StopDataConnect() :终止服务端上的数据传送连接DownloadResource() :下载广告数据信息ReadCfg():读取配置文件WriteCfg():写入配置文件UpdateCfg():更新服务端配置文件UpdateItem():更新某一项广告数据UpdateModule() :更改某一模块数据3.2.2消息处理模块l 功能描述:实现了分别对发送和接收的消息进行封装和解析。主要流程如下:1)封装:当有消息发送时,消息由本模块进行封装成固定的消息格式,然后通过通信模块的发送函数将消息发送出去2)解析:当有消息到达时,本模块将消息进行解析,提取消息目的及内容,然后交给上层处理l 主要类:TMsgProcl 主要函数:MakeMsg :建立消息ParseMsg :解析消息3.2.3 HTTP消息通讯模块l 功能描述:HTTP通信协议的实现。主要流程如下:1)建立连接:建立HTTP连接2)发送请求信息:发送HTTP请求信息3)发送响应消息:响应HTTP请求信息4)关闭连接:关闭HTTP连接l 主要类:THTTPl 主要函数:Connect():建立连接Request():发送HTTP请求信息Response():发送HTTP响应消息Close():关闭HTTP连接3.2.4 TCP/UDP通信模块l 功能描述:TCP/UDP通信的实现。主要流程如下:1) 初始化socket2)建立连接3) 监听端口4)发送信息5)接收消息6)关闭连接l 主要类:TSocketl 主要函数:Create():初始化socketConnect():建立连接Send():发送消息Recv():接收消息Close():连接3.3 代理端(Agent)模块详细描述3.3.1 管理功能模块l 功能描述:实现了对本地数据及数据版本的维护及更新的功能。主要流程如下:1)启动,发送在线广播消息通知服务端(server),开始本地更新2)本地更新:拷贝update文件夹下的广告或模块数据分别到src文件夹和程序主目录下3) 收到服务端(Server)的更新消息,比较收到项的版本号与本地项的版本号,发送是否更新的回应消息4) 等待下载开始命令,下载相应的广告数据到本地的update文件夹,更改配置文件注:本地更新首先需要检查本地配置文件,若存在改动标志,则进行更新,否则不进行操作 l 配置文件及相关项:配置文件名为agtcfg.xml广告数据相关项为 , 模块项为 注:ad为广告标识,id为具体的广告项,version 当前项的广告版本号 path 广告的路径 name 广告文件名;mdl为模块标识,id为具体的模块项,version 当前项的模块版本号 path 模块的路径 name 模块文件名, update 为是否更新标识,需要更新,不更新l 主要类:TSocketTAgentAppl 主要函数:SendLogin(): 发送登陆消息CheckUpdate() :检查本地是否需要更新DownloadItem() :下载需要更新的数据信息DownloadVersion():下载某项的数据的版本信息3.3.2显示功能模块l 功能描述:实现了IE插入广告、桌面广告、系统登陆广告、弹出式广告等多种广告的显示功能。主要流程如下:1)IE内容广告:读取src文件夹下相应广告数据,显示到每个Web页面内容的顶端2)IE浏览间隙广告:读取src文件夹下相应广告数据,每当页面改变时,显示3秒间隙广告3) 桌面广告:读取src文件夹下相应广告数据,当有更新时,改变桌面的广告4) 系统登陆广告:读取src文件夹下相应广告数据,每当系统登陆时弹出对话框播放广告5)弹出式广告:读取src文件夹下相应广告数据,每隔固定的时间弹出对话框播放广告l 配置文件及相关项:配置文件名为agtcfg.xml广告数据相关项为 , 模块项为 ,可更改选项 注:ad为广告标识,id为具体的广告项,version 当前项的广告版本号 path 广告的路径 name 广告文件名;mdl为模块标识,id为具体的模块项,version 当前项的模块版本号 path 模块的路径 name 模块文件名, update 为是否更新标识,需要更新,不更新;opt为选项标识,id为某具体参数标识,value为此参数的值4 通讯协议设定通讯协议格式:消息头:消息号:命令号:参数消息头 = IMSG_TITLE = 0x1,消息号 = 当前时间(精确到秒),分隔符为:号,命令和参数内不能出现分号。公用消息:命令类型报文类型 参数报文说明IMSG_NOOP0x1010无操作IMSG_CLOSE0x1020连接关闭远程管理端(RemoteUI)消息:命令类型报文类型 参数报文说明IMSG_R_GETITEM0x201项号获取服务端某项数据IMSG_R_UPDATEITEM0x202项号更新某一项数据IMSG_R_UPDATEAGENT0x203开始更新代理端服务端(Server)消息:命令类型报文类型 参数报文说明IMSG_S_GETITEM0x301项号获取某一项数据IMSG_S_UPDATETIME0x302时间戳更新时间戳IMSG_S_UPDATEITEM0x303项号更新某一项IMSG_S_DOWNLOADNOW0x304项号下载开始IMSG_S_CHECKSTAT0x3050检查代理端状态代理端(Agent)消息:命令类型报文类型 参数报文说明IMSG_A_LOGIN0x4010代理端登陆消息IMSG_A_LOGOUT0x4020代理端登出消息IMSG_A_UPDATED0x4030已经更新标志IMSG_A_UPDATING0x4040需要更新标志IMSG_A_ONLINE0x4050代理端在线消息IMSG_A_GETITEM0x406项号获取某一项数据IMSG_A_GETVERSION0x407项号获得某一

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论