基于微信公众平台的高校移动信息服务设计与实现

2017-03-31 15:58肖金克刘晓阳陈鑫李洋李静
软件导刊 2016年8期
关键词:微信公众平台

肖金克+刘晓阳+陈鑫+李洋+李静

摘 要:针对国内高校移动信息化建设效率较低的现状,设计和实现了一种基于微信公众平台的高校移动信息服务系统,并以三峡大学官方微信为例,对该系统的可行性进行了验证。系统依托新浪SAE云计算服务,采用PHP+MYSQL开发,拥有校园新闻、校园招聘,图书检索、成绩查询、失物招领等功能,累计用户数万人。实践表明,该信息服务平台提高了高校信息的传播效率和便捷性,可为高校移动信息服务建设提供借鉴。

关键词关键词:微信公众平台;高校移动信息服务;微信开发;新浪云SAE;PHP

DOIDOI:10.11907/rjdk.161977

中图分类号:TP319

文献标识码:A 文章编号:1672-7800(2016)008-0083-03

0 引言

随着高校信息化建设的飞速发展,目前国内的大部分高校都拥有了自己的综合网络信息服务系统,教务、新闻、图书、财务等部门也都各自实现了信息的网络发布与查询,极大方便了师生对相应信息的获取。但这些系统大都基于Web网站应用,很少有高校提供WAP手机网站或者APP服务。据CNNIC统计,截至2015年12月,我国手机网民规模达6.20亿,有90.1%的网民通过手机上网,只使用手机上网的网民达到1.27亿人,占整体网民规模的18.5%[1]。因此,如何让师生通过智能移动终端快速获取想要的信息服务,已经成为高校信息化建设工作中亟待解决的难题。

目前,国内外关于高校移动信息服务设计与应用的研究很多。例如,余世英等[2]通过对全国820所普通高等院校图书馆进行调查,对图书馆4种移动信息服务应用模式进行了深入分析;白明凤等[3]阐述了轻应用服务对于丰富高校图书馆移动服务类型,以及中小型高校图书馆开展手机移动信息服务的重要意义,并据此针对我国高校图书馆轻应用设计提出了建议;秦晓彤等[4]分析了校园微信公众平台的发展现状及存在问题,在此基础上结合微信特性、用户需求,构建了校园微信公众平台;王武海[5]以陕西师范大学数字化后勤管理为例,论述了以移动后勤或掌上后勤為主要形式的高校云后勤所带来的管理方式的变革。LC Thomas[6]调查了图书馆提供移动服务过程中所遇到的障碍,并提出了相应的改善建议。以上研究为基于微信公众平台的高校移动信息服务设计提供了重要的理论参考。

本文在借鉴和参考其它高校成功案例的同时,结合三峡大学官方微信信息服务平台搭建方法,阐述了作者在利用微信公众平台开放接口和新浪SAE云计算服务开发高校移动信息服务平台的方法和实际应用经验。

1 微信公众平台及开发模式简介

微信公众平台是腾讯公司在微信的基础上新增的功能模块,依托微信的社交关系链,同时又为微信用户提供内容和各类服务,从而形成一种良性的生态循环。通过此平台,个人、企业、媒体、政府和事业单位等都可以打造一个甚至多个微信公众号,分为订阅号、服务号、企业号3种,公众号以一对多的方式群发文字、图片、语音、视频、图文消息5个类别的内容来进行持续运营并为关注的用户提供信息服务[7]。

同时,微信公众平台提供各种开发接口,可以利用这些接口进行功能开发,如语音识别、客服接口、OAuth2.0网页授权、生成带参数二维码、获取用户地理位置等接口。本文即利用部分接口开发,使公众号能提供与用户进行消息交互、自定义菜单交互的能力。对于成功接入公众平台开发接口的公众账号,当用户发消息给公众号,微信公众平台服务器会使用HTTP请求对接入的网址进行消息推送,第三方服务器可通过响应包回复特定结构,从而达到回复消息的目的[8]。

2 系统设计与开发

2.1 开发环境

Sina App Engine(简称SAE)是新浪研发中心推出第一个Alpha版本的国内首个公有云计算平台[9]。本例所使用的SAE上的相关扩展服务如表1所示。

2.2 数据流转过程

微信用户向三峡大学公众帐号发送指令关键词,微信公众平台接受响应并将指令传给服务器。服务器端收到指令后,根据指令的不同含义,调用不同的功能。例如,用户想要获取三峡大学最新的校园新闻,则需要向微信账号回复“新闻”,服务器端会定时抓取学校官方网站的新闻列表,并返回图文信息;如果用户想要查询图书馆的藏书,则服务器端会将检索的关键词以HTTP请求的方式发送到三峡大学移动图书馆馆藏图书检索系统,并将抓取到的检索结果发送给关注用户。

2.3 功能模块列表

功能模块分为工具类和资讯类,具体功能如表2所示。

2.4 业务流程设计

2.5 功能实现

以新闻资讯类功能为例,新闻资讯类功能的实现主要由两部分组成:①爬虫程序定时向目标网站发送抓取请求,通过第三方的PHP类(本例采用PHP Simple HTML DOM Parser)对网站HTML页面进行解析,剥离出网站的新闻列表(新闻标题、文章链接、文章略缩图)并将其保存到MYSQL数据库;②微信用户向微信服务器发送关键词指令,微信服务器接受指令并调用相关程序,将数据库中保存的新闻列表以微信图文信息的形式反馈给用户,用户点击图文信息后可进入转码后的详细新闻页面(通过第三方PHP类Readability实现)。

数据库结构如图3所示。

(1)Cron定时程序代码。

---

name: ctgunews

version: 1

cron:

- description: news

url: /spider/news.php

schedule: every 2 hour, offset 0 //每两小时执行一次PHP脚本

(2)生成微信图文信息部分代码。

if(trim($keyword) == "新闻")

{

$newsTpl = "

<![CDATA[%s]] > <![CDATA[%s]] >

%s

<![CDATA[news]] >

<![CDATA[]] >

9

";

$mysql = new SaeMysql();

$sql = "SELECT * FROM `news`"; $arr = $mysql->getData( $sql ); //查询数据库

$i = 1;

foreach($arr as $value){

if($i > 8){

break;

}

$newsTpl .= "

<![CDATA[$value[title]]] >//输出新闻标题

<![CDATA[$value[title]]] >//输出新闻描述(与标题相同)<![CDATA[$value[picurl]]] >//输出新闻图片链接

<![CDATA[http://1.ctgunews.sinaapp.com/read/?url=$value[url]]] >//输出新闻链接,并对页面进行转码,方便手机阅读

";

$i++;

}

$newsTpl .= "

<![CDATA[更多校园新闻请访问索源网>>]] > <![CDATA[]] ><![CDATA[]] > <![CDATA[http://syw.ctgu.edu.cn/]] >

0

";

$resultStr = sprintf($newsTpl,$fromUsername,$toUsername,$time);

echo $resultStr;

exit;

}

用戶关注三峡大学的微信公众账号后,通过回复 “新闻”关键词,系统会从数据库中调取已经提前从校园网抓取好的新闻列表,并以微信图文信息形式返回,点击相应的微信条目,会跳转到转码后的新闻详情页面,转码页面采用响应式布局,自适应屏幕宽度,更适合手机阅读。

3 结语

针对国内高校移动信息化建设效率较低的现状[10-12],设计并实现了一种基于微信公众平台的高校移动信息服务系统,并以校园新闻为示例,对该系统的可行性进行了验证。本例采取的是定时采集目标网站新闻列表的方法,创造性跨越了不同业务部门网站数据库平台的差异性问题,使其能将任意网站的新闻列表输出为微信图文信息,省略了人工单独更新微信内新闻的环节,极大提升了工作效率,而其将普通网站页面转换成手机页面的方法,也降低了单独开发手机网站的成本。由于该平台依托的是新浪SAE云计算服务,如何将其移植到普通的LAMP环境,使其更具普遍性和通用性,将是今后的研究方向。

参考文献:

[1] 中共中央网络安全和信息化领导小组办公室.CNNIC发布第37次《中国互联网络发展状况统计报告》[EB/OL].[2016-01-22].http://www.cac.gov.cn/2016-01/22/c_1117860830.htm.

[2] 余世英,明均仁.移动信息服务在国内高校图书馆中的应用模式分析[J].图书情报知识,2012(6):60-67.

[3] 白明凤,匡惠华.高校图书馆移动信息服务中轻应用模式的应用及其借鉴——基于高校图书馆微信公众号的分析[J].情报资料工作,2014(4):78-81.

[4] 秦晓彤,龙婷婷,卢斯琦,等.校园微信公众平台的移动信息服务研究[J].软件导刊,2016,15(1):124-126.

[5] 王武海.论数字化革命背景下中国高校后勤管理方式的变革[J].陕西师范大学学报:哲学社会科学版,2013(2):171-176.

[6] THOMAS L C.Gone Mobile(Mobile Libraries Survey 2010)[J].Library Journal,2010,135(17):30-34.

[7] 百度百科.微信公众平台[EB/OL].[2014-5-7].http://baike.baidu.com/view/9212662.htm.

[8] 微信.公众平台开发者文档[EB/OL].[2014-5-7].http://mp.weixin.qq.com/wiki/index.php?title=%E9%A6%96%E9%A1%B5.

[9] 百度百科.SAE[EB/OL].[2014-01-06].http://baike.baidu.com/subview/570224/10751351.htm.

[10] 叶海智,刘强,尹丹丹.基于微信的图书馆移动信息服务设计与实现[J].软件导刊,2013(11):92-94.

[11] 倪志宏.基于微信公众平台的掌上高校网络信息服务系统研究[J].合作经济与科技,2013(14):129-130.

[12] 夏雨,孙炯宁,鲍建成.基于微信公众平台开发的高校学生助手系统[J].电脑与电信,2013(11):34-36.

(责任编辑:孙 娟)

猜你喜欢
微信公众平台
基于微信公众平台的高校综合素质社团建设
基于微信公众平台的阅读推广案例研究
基于微信的大学生微型学习平台的设计与实现
基于微信公众平台的碎片化学习研究