高校教务微信公共平台详细设计说明书

上传人:第*** 文档编号:58136859 上传时间:2018-10-27 格式:PDF 页数:11 大小:692.30KB
返回 下载 相关 举报
高校教务微信公共平台详细设计说明书_第1页
第1页 / 共11页
高校教务微信公共平台详细设计说明书_第2页
第2页 / 共11页
高校教务微信公共平台详细设计说明书_第3页
第3页 / 共11页
高校教务微信公共平台详细设计说明书_第4页
第4页 / 共11页
高校教务微信公共平台详细设计说明书_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《高校教务微信公共平台详细设计说明书》由会员分享,可在线阅读,更多相关《高校教务微信公共平台详细设计说明书(11页珍藏版)》请在金锄头文库上搜索。

1、 软件详细设计说明书 项目名称:高校教务微信公共平台 日期:2015 年 5 月 22 日 安徽师范大学 目录目录 1 引言 - 3 1.1 编写目的 - 3 1.2 项目背景 - 3 1.3 定义 - 4 2 总体设计 - 4 2.1 需求结构 - 4 2.2 软件结构 - 4 3 程序详细设计 - 4 3.1 对各模块的功能具体描述 - 5 3.2 算法 - 5 3.3 程序逻辑 - 9 3.4 测试要点 - 错误错误!未定义书签。未定义书签。 1 1 引言引言 随着移动通信技术的飞速发展,越来越多的人使用智能手机上网,在我国高校学生中已基本普及。大学生的日常活动以学习为主,移动学习方便、

2、快捷的特点,得到了越来越多学生的青睐,为适应新形势下教学管理工作的需要,进一步探索新媒体时代教务管理工作的有效途径,充分认识并利用新媒体的优势,有效地利用好微信公众平台,实行高校教务工作的精细化管理。 1.11.1 编写目的编写目的 本需求的编写目的在于研究高校教务微信公共平台的开发途径和应用方法,主要是为了对高校教务微信公共平台进行使用和维护。 本需求的预期读者是与高校教务微信公共平台有联系的决策人, 开发组成人员。该需求充分利用高校教务微信公共平台功能简单直接实现对教务系统绑定、教务通知查询、课表信息查询、成绩信息查询等。此概要设计说明书对高校教务微信公共平台的解决方案、功能分配、模块划分

3、、程序的总体结构、输入输出和接口设计、运行设计等方面做了全面概括性说明,为该软件的详细设计奠定基础。 1.21.2 项目背景项目背景 开发项目名称: 微信公共平台教务系统 项目开发成员: 安徽师范大学计算机系 13 软件工程学生: 陈龙,邓智,将杰 微信公共平台教务系统用户: 安徽师范大学所有学生 微信公共平台教务系统用途: 此项目为第四届“中国软件杯”大学生软件设计大赛选题。目标是在微信公共平台上实现学生对高校教务系统各项功能查询。 1.31.3 定义定义 微信在大学生中已经普及,几乎所有的大学生都使用微信这个即使通讯平台。而现在微信的功能也越来越多样化,为适应新形势下教学管理工作的需要,进

4、一步探索新媒体时代教务管理工作的有效途径,充分认识并利用新媒体的优势,有效地利用好微信公众平台,实行高校教务工作的精细化管理。 2 2 总体设计总体设计 2.12.1 需求结需求结构构 1) 用户绑定与登录:根据教务系统学员信息进行绑定。 2) 用户课表查询 3) 用户成绩查询 4) 教务通知查询 5) 用户考试查询 6) 消息加密模式为安全模式 2.22.2 软件结构软件结构 微信公共平台教务系统总体模块 3 3 程序程序详细设计详细设计 3.13.1 系统简单流程图系统简单流程图 3.23.2 具体模块详解具体模块详解 A.A. 微信公共平台教务系统主模块微信公共平台教务系统主模块 该模块

5、包含两个 php 文件 weixin.php 和 weixinMsg.php。其中 weixin.php 是微信配置页面包含微信 Token(令牌)和消息解密密匙,服务器接收到的所有请求都从此文件开始处理。具体运行流程如下图 注: 1. 由于个人微信订阅号无创建 CLICK 菜单权限, 故视频演示时无菜单选项。 演示时输入输出都是文本消息事件。 2. 所有返回的 XML 消息经微信平台服务器处理后都以文本的形式输出到微信公共平台用户客户端,用户点击相应的文本连接即可做相应的信息查询。 3. 消息解密模块源代码由微信公共开发者平台提供具体使用方法开发者文档已经给出,这里不具体说明。 B.B. 微

6、信公共平台教务系统解、绑定模块微信公共平台教务系统解、绑定模块 该模块主要包含 Binding.php、login_check.php、Connect_Sql.php、Login.php、Success.php 及 js 和 css 文件,程序运行流程图如下 C.C. 微信公共平台教务系统查询模块微信公共平台教务系统查询模块 教务系统查询模块为该系统核心模块核心算法也集中在这个模块中。 具体文件在核心算法分 析展示。 D.D. 微信公共平台教务系统教务通知查询微信公共平台教务系统教务通知查询 该模块无仅仅只是先从教务系统抓取一般通知页面保存到服务器中, 以方便用户查询。 无需 识别用户信息,所

7、有用户都可访问。 3.33.3 核心模块算法分析核心模块算法分析 整个微信公共平台教务系统核心部分是数据抓取。由于未取得学校教务系统接口, 而自行模拟教务系统接口数据又比较耗费时间, 故此我们使用了 php 的 curl_init函数来模拟一般用户登陆教务系统的解决方案,登陆时获取 PHPSESSID 作为抓取数据时认证标,接着根据用户意愿抓取整个页面信息,再用正则表达式简明输出用户所需要的信息。 用此解决方案时只需在数据库中建立一个 user 表单,用来保存用户的登陆账号(username) 、 登陆密码 (password) 和从微信服务器获得的用户唯一表示 (OpenID) 。 核心代码

8、展示: Cookie.php 1 2 3 4 5 6 7 8 Longin.php 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Curl.php 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ; echo 安徽师范大学 ; $ch=curl_init(); curl_setopt($ch, CURLOPT_COOKIE, $Cookie);/设置要发送的 Cookies 信息 curl_setopt($ch,CURLOPT_URL,$url);/设置 post 的 URL curl_setopt ($ch, CURLOPT_REFERER, “http

9、:/“); curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); curl_setopt($ch,CURLOPT_POST,1); $con=curl_exec($ch); curl_close($ch); preg_match(/(.*?)/is,$con,$str);/正则抓取 BODY 内容 echo $str1; ? 微信用户标识 Openid 的获得: 由于个人申请账号只能是个人订阅号,故没有高级接口权限来获取 Openid,我们只能通过获得接收消息中的 FromUserName 值,并且在 url 中构造 openid 的返回给微信用户参数即可,这样我们就可从数据库中找到正确的用户信息来模拟登陆教务系统。 核心模块文件从属关系: 从教务系统抓取信息的一般过程:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 事务文书

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号