基于微信公众平台的校园掌上应用
2016-06-13刘鸿沈辽宁工业大学电子与信息工程学院辽宁锦州121001
李 响,刘鸿沈,何 军(辽宁工业大学 电子与信息工程学院, 辽宁 锦州 121001)
基于微信公众平台的校园掌上应用
李 响,刘鸿沈,何 军
(辽宁工业大学 电子与信息工程学院, 辽宁 锦州 121001)
摘 要:随着3G/4G等移动通信技术的发展, 移动互联网已经成为人们生活中不可或缺的一部分,而微信作为超级APP已经成为移动互联网的入口。基于微信公众平台的应用设计,整合校园信息资源,为广大师生提供一站式服务。系统选用Eclipse作为开发工具,使用JDK1.6,Struts2框架,数据库使用MySQL,应用引擎选择新浪应用引擎(SAE),开发语言使用Java,同时采用HTML5、jQuery Mobile进行网页设计和前端框架设计。校园掌上通采用MVC框架,结构层次分明,实现了天气、快递、周边搜索、成绩、课表、火车票等查询功能。还提供了人脸识别、智能聊天机器人等娱乐功能。系统操作简便、校园用户体验良好,为学生提供高效、便捷的校园应用服务。
关键词:校园应用;微信公众平台;新浪应用引擎;HTML5
1 引言
随着移动互联网的飞速发展,互联网的巨头们都推出了各自的主打应用,如:腾讯QQ、微信、新浪微博、百度地图等。现如今大量的用户也正在向这几个超级APP集中,而微信以其四亿真实用户成为了中国移动互联的超级入口。校园“掌上通”正是基于微信公众平台设计的手机应用。它整合了大学校园相关信息快速检索功能,以微信作为校园信息服务的载体,为同学们提供新的服务体验,构建了一个实时,高效的移动校园信息服务系统。
校园“掌上通”无需升级,无需跨平台,兼容各种智能手机操作系统,提供了一站式的信息检索功能,只需微信关注公众号,即可体验课表查询、成绩查询、图书查询、天气查询、快递查询、人脸识别、周边检索等服务,实现了真正意义上的校园信息“掌上通”。
2 需求分析
校园“掌上通”地图设计采用了百度LBS接口,人脸识别采用Face++接口,天气查询使用了中国天气网接口,英文翻译采用了百度翻译接口,智能聊天机器人采用图灵机器人接口,成绩和课表采用模拟登录技术对网页数据进行抓取。
校园“掌上通”主要有三大功能模块:生活模块、学习模块、娱乐模块。
(1)生活模块:根据指定条件进行查询,主要包括火车票查询,天气查询,快递查询,周边检索,号码归属地查询及校园办公电话簿查询等。
(2)学习模块:根据学生平日学习需求进行查询,主要包括课表查询,成绩查询、四六级成绩查询,图书查询、智能翻译等。
(3)娱乐模块:可以为学生打发无聊枯燥的时光,功能包括听歌,人脸识别,小游戏、星座运势、智能聊天机器人,电影资讯等。
系统获取微信服务器转发的用户输入信息,同时得到微信服务器发送的签名及时间戳等请求参数。程序对signature、timestamp、nonce、echostr等参数,按照规定算法进行校验来验证是否是一个合法的请求。经过验证消息真实性确认是合法请求后,对用户输入的信息进行分析处理,返回结果到微信服务器,而后微信服务器将消息返回到请求的用户。系统的消息交互流程图如图1所示。
3 概要设计
3.1 数据库设计
天气信息表(城市编号、省、市、县)
快递公司信息表(编号、快递公司中文名、快递公司英文名)
火车站信息对照表(车站英文编码、车站全名、车站拼音、车站拼音缩写、车站拼音简写、车次数)
天气现象对照表(天气现象编码、天气现象中文名、天气现象英文名)
历史操作记录表(编号、用户ID、类别、文本信息、时间戳)
用户坐标信息表(编号、用户ID、经度、纬度、转换后的经度、转换后的纬度)
城市信息对照表(城市ID、城市编码、城市名称)
风力信息对照表(天气现象编码、风力大小、时速)
风向信息对照表(天气现象编码、风向中文名、风向英文名)
系统的实体类图如图2所示。
3.2 系统功能模块图
4 详细设计
4.1 系统编码设计
系统采用MVC结构,实现了代码的分层管理,使代码的结构清晰,层次分明,便于团队开发和维护。源码中src下有8个包,分别实现不同的功能,具体功能如下:
org.cyansoft.wx.action 获取用户请求,处理业务逻辑
org.cyansoft.wx.dao 访问数据库
org.cyansoft.wx.message.event 封装微信事件基类
org.cyansoft.wx.message.request 封装请求消息基类
org.cyansoft.wx.message.response 封装响应消息基类
org.cyansoft.wx.model 存放一些数据模型,包含天气、快递、地理位置信息等
org.cyansoft.wx.service 处理用户的请求,返回结果信息
org.cyansoft.wx.util 共有五个工具类,负责百度坐标转换、消息处理、请求校验、查找字符串、对字符串签名。
4.2 消息编码设计
系统包含两种消息类型:文本消息、图文消息。其中图文消息运用了单图文消息和多图文消息。文本消息主要用于回复一些简单的文字信息。图文消息表现形式相对比较丰富,包含文字、缩略图、超链接,主要用于回复信息量大,含超链接的消息。
另外,消息中还可以添加表情,合理的搭配可以增加消息的阅读性和观赏性。
5 软件的实现与测试
5.1 关注及首页界面
关注公众号后会弹出欢迎界面,点击帮助手册可以查看使用手册,回复首页呈现功能菜单。具体如图4所示。
5.2 生活模块界面
点击生活模块进入生活模块菜单,点击菜单进入网页查询,也可以微信输入关键字信息查询。如图5所示。
5.3 学习模块界面
点击学习模块进入学习模块菜单,点击菜单进入网页查询,也可以微信输入关键字信息查询。
5.4 娱乐模块界面
点击娱乐模块进入娱乐模块菜单,点击菜单进入网页查询,也可以微信输入关键字信息查询。
6 结论
基于微信公众平台的校园掌上应用系统校园信息资源,实现了天气、快递、周边搜索、成绩、课表、火车票等查询功能。还提供了人脸识别、智能聊天机器人等娱乐功能。它操作简便、校园用户体验良好,为学生提供高效、便捷的校园应用服务,具有很高的应用和推广价值。
参考文献:
[1]盛伟芳.校园微信公众平台运营策略研究[J].剑南文学,2013(02):317-318.
[2]柳峰.微信公众平台应用开发方法、技巧与案例[M].北京:机械工业出版社出版,2014:55-97.
[3]李正,张欣宇,冯一帆.HTML5技术在移动互联网中的应用[J].信息通信技术,2014(05):73-75.
[4]刘强.基于微信的校园信息服务系统设计研究[D].河南师范大学,2014.
[5]夏凌云,韩立峰,王长庆.利用微信公众平台打造校园信息移动发布平台[J].信息技术,2014(02):183-185.
DOI:10.16640/j.cnki.37-1222/t.2016.12.195