图书馆微信公众号服务平台的设计与开发
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(2)图书检索:我们输入字母S+书名,就会返回我们 想要的结果,并且点击栏目可以展示出图书的作者、出版 社、在馆状态、馆藏位置等相关信息。在此查询 Java类书为 例。如图4所示:
图3 帮助列表
图4 图书检索
图5 续借图书
(3)账户查询:输入字母q,点击回复中的号码绑定, 进入系统后就可以查看账户所借图书列表及其还书时间。
目前,国内图书馆在消息服务上大部分还停留在手机短 信息通知和邮箱通知的层面,这种模式很难做到随时随地获 取信息,用户在获取信息的体验上就会比较差,获取信息的 方式也比较被动。这样就在图书馆的服务模式上提出了更高 的要求和更大的挑战。由此,引入了根据微信公众平台来服 务读者的这种模式。
二、基于微信平台的移动图书馆公众号信息服 务平台设计
REGION INFO 数字地方
图书馆微信公众号服务平台的设计与开发
◆ 李松辉 侯志江
摘要:针对图书馆当今在移动信息服务中的不足,提出构建基于微信公众号的图书馆移动信 息服务平台的思路,阐述了平台实现的原理和关键技术。结合天津理工大学图书馆开发的微信公 众号服务平台,介绍其在实际中的应用效果。
关键词:微信图书馆;微信公众号;移动信息服务
REGION INFO 数字地方
FromUserName> <!--消息创建时间 (整型)--> <CreateTime>12345678</CreateTime> <!--消息类别 (text文本消息)--> <MsgType><![CDATA1]></MsgType> <!--消息内容--> <Content><![CDATA[content]]></Content> <!--消息ID (64位整型)--> <MsgId>1234567890123456</MsgId> </xml> 以上代码主要是解析开发者的微信号,发送端账号,发
[1]叶海明,周绍磊,王昆平.通用测试系统软件平台设计[J].研究与开 发,2010,29(2):54-57.
[2]翟邵蕾,胡海峰,高晨.ICD仿真测试系统在总线冗余控制系统中 的应用[J].航天控制,2010,28(2):84-88.
[3]刘金宁,孟晨,崔少辉,陈德祥.基于配置文件的虚拟仪器测试软件 设计与实现[J].电力自动化设备,2005,25(1):50-53.
(4)续借图书:输入字母xj,绑定自己的用户名及密 码,就可以对自己即将超期的图书进行续借,来延长自己所 借图书的节约时间。如图5所示。
(5)馆藏导航:输入字母dh,点击馆藏分布,就可以 查看各类图书的馆藏分布情况,更为方便的指引读者到达目 标书库,节约读者查找时间。
(6)问题咨询:输入字母zx,用户可以获得需要帮助 的途径及其联系方式。
由于微信公众平台的通信使用的是特定格式的XML数 据,每次接受和回复都要去做一大堆的数据处理。在此,我 们要遵循XML的规范来开发此推荐系统,当微信服务端接收 到用户提交的消息时,用文本消息的例子来表述解析方法, 其关键代码如下:
<xml> <!--开发者微信号--> <ToUserName><![CDATA[toUser]]></ToUserName> <!--发送方帐号(OpenID)--> < F r o m U s e r N a m e > < ! [ C D ATA [ f r o m U s e r ] ] > < /
表1 参数列表
2.4消息推送和回复的方法。消息的推送指的是当用户 通过微信向关注的公众号发送相对应的消息时,会向微信 的服务端POST该消息到服务器配置的URL上,除向微信服 务端发送文本消息外,微信公众平台还支持用户发送图片消 息、地理位置消息、链接消息、事件推送,而开发者还可以 向微信公众平台回复音乐消息和图文消息,各类消息XML规 范也可以参见官方文档[5]。
(下转39页)
信息系统工程 │ 2015.2.20 33
试的流程如图1所示。
SYS PRACTICE 系统实践
图1 软件通用化流程图
通过以上的流程设计,当ICD协议发生变动时,只需要 修改相应配置文件即可,用户也可直接编辑配置文件,程序 根据配置文件中的数据参数信息、频率、板卡通道号、发送 接收状态等信息来进行仿真测试,完成测试任务[5]。
书馆学2013-08-01]. http://baike.
/view/9212662.htm. [4]腾讯.微信|公众平台开发者文档 [EB/OL]. [2013-10-29].http:
///wiki/index.php?title=首页. [5]微信公众平台消息接口指南 [EB/OL]. [2013-08-17]. http://
四、结束语
本文提出了一种基于总线配置文件的软件通用化设计 方法,非常有效地解决了大型复杂系统信号种类繁多,应用
图2 软件仿真测试模板
软件程序设计困难的问题。实际应用证明此设计方法不仅简
化了程序的设计,同时这样的软件架构灵活性非常好,当客
户的ICD文件中帧信息出现调整时,通常只需要手动编辑下
配置文件即可,而程序一般不需要做出改动,或做很小的改
[4]叶中脉,秦开宇,陈华伟,李志强.航电系统通用总线监控软件的设 计与实现[J].测控技术,2012,31(3):94-97.
[5]刘化波.VXI总线多参数综合测试系统的集成研究与开发[D].南 京航空航天大学,2003.
(作者单位:北京计算机技术及应用研究所)
(上接33页)
三、结语Biblioteka 天津理工大学图书馆微信公众号服务是图书馆业务和第
FromUserName> <!--消息创建时间 (整型)--> <CreateTime>12345678</CreateTime> <!--消息类别 (text文本消息)--> <MsgType><![CDATA1]></MsgType> <!--回复消息内容--> <Content><![CDATA[content]]></Content> <!--星标操作(位0x0001被标志时 星标刚收到的消息)-
送的时间标记,内容等一系列的关键信息。 开发者在处理完消息后需要返回数据给微信服务器,其
关键代码如下: <xml> <!--接收方帐号(OpenID)--> <ToUserName><![CDATA[toUser]]></ToUserName> <!--开发者微信号--> < F r o m U s e r N a m e > < ! [ C D ATA [ f r o m U s e r ] ] > < /
图2 图书馆微信服务平台主要功能设计
2.2主要功能和界面设计。功能设计和用户操作界面主 要是以简洁明了的风格为主,以操作简单,反馈高校为基 础,我们在获取帮助的时候只需要根据提示回复相关的字母 即可得到相关的信息,在图2中可以看出,此版公众号共分 为七个功能:
(1)提举提示输入字母h,聊天框中就列出了此公众号 的相关功能,我们只需根据相关提示进行操作即可。如图3 所示:
(7)意见建议:输入字母yjjy,读者可以向图书馆提出 建议。
2.3服务搭建流程及架构。微信公众平台提供多语言的 编程接口,本系统基于PHP来实现的接口方案。
在平台的响应系统中,微信后台核心处理模块用来 接收和验证用户从客户端发送过来的相应消息,微信服 务器将发送GET请求到填写的URL上,并且带上四个参数 (signature、timestamp、nonce、echostr),开发者通过对 签名(即signature)的效验,来判断此条消息的真实性,参 数详细描述如表1所述。然后,每次推荐系统后台接收到用 户请求的消息的时候,都会带上前面三个参数(signature、 timestamp、nonce)访问开发者设置的URL,依然通过对签 名的效验判断此条消息的真实性[4]。效验方式与首次提交验 证申请一致。
2.1技术实现思路及平台构想。微信公众号服务平台提 供了一个开放接口的API,作为第三方接入的图书馆信息服 务功能,可以实现微信用户与图书馆服务的无缝对接。在
32 信息系统工程 │ 2015.2.20
此,用以下流程来展示公众平台和用户交互的一个流程,如 图1所示:
图1 微信公众平台消息交互流程
关于公众号平台的主要功能,在此用图2来进行表示:
继微信5.0开始,微信公众号被分为订阅号和服务号, 订阅号每天可以推送一次信息,没有自定义菜单,推动的信 息用户自己去提取。服务号一个月只能推送一次信息,可以 申请自定义菜单,推送的信息马上提醒[2]。
本文采取订阅号为推送平台,订阅号主要为媒体和个 人提供一种新的信息传播方式,构建与读者之间更好的沟通 与管理模式[3]。采取此种服务模式主要是简化读者在查询图 书馆信息服务时的操作流程和提高读者的用户体验。系统包 括查看帮助、图书检索、账户查询、续借图书、馆藏导航、 问题咨询、意见建议。这些功能可以让读者更加方便地来获 取相关信息和帮助,比原来只能在电脑上进行操作更加人性 化,让读者随时随地的使用图书馆资源。
在此基础上,我们仿真测试的界面选用通用的测试模 板,各种总线信号的仿真测试界面放在共用的测试页面中。 初始的页面全部为空,当程序运行后由用户选择测试任务, 然后软件根据总线结构和配置文件在公共页面上自动生成测 试界面,用户点击开始运行即进行仿真测试,根据配置文件 的结构体和界面上的控件,对数据进行封装发送和接收解析 数据并进行显示,完成对航电系统总线数据的仿真和测试功 能。软件运行后仿真测试的模板设计如图2所示。
三方移动平台的一次结合的尝试,微信公众号作为一种新兴
的功能模块,目前还在不断的成长和完善之中。读者可以在
微信中订阅“天津理工图书馆”公众号,来体验天津理工大
学图书馆微信图书馆的功能和服务。未来,将会运用语音识
别技术来和用户进行交互,提高用户的使用体验,加强公众
号部分子模块的扩展功能。
H
图书馆为例[J].图书馆杂志,2013(8):66-71. [2]黄浩波,何卫华,叶青.微信及其在图书馆信息服务中的应用[J].图
-> <FuncFlag>0</FuncFlag> </xml> 2.5相比传统移动手机图书馆app的优势。(1)传统的
app需要开发多个版本,比如IOS、Android、Windows Phone 等多种版本来适配用户,这样会耗费大量的人力物力成本, 而基于微信公众号的开发设计就解决了版本间的适配问题, 节约了成本。(2)基于微信的公众号省去了传统app安装的 过程,节约了手机有限的系统资源,并且也具有免升级省流 量的优势。(3)微信公众号对于读者来讲操作简便,受到 广大读者的认可和欢迎。
动;并且这种统一的设计,使程序很少出现有细节上的错
误。
基于这种方案的优点,我们将模拟量、离散量、GPS信
号和其他总线信号,如ARINC 429、RS-422、网络,还有硬
件的通道配置都使用了该设计,整个测试软件的架构非常统
一,代码非常简洁,此设计方法可作为复杂测试系统软件设
计的一种通用架构。
H
参考文献
一、引言
近年来,随着如今通信技术和互联网的发展,图书馆 的发展也进入到了数字化和网络化的浪潮中。需要图书馆在 当今的服务模式中做出适应形势的变化,由传统式的服务方 式转变成多元化和个性化的服务模式来满足读者的需求[1]。 在此,本文根据图书馆信息服务的需要,充分利用微信公众 号的功能特点,构建一个基于图书馆的公共服务平台,为读 者提供具有交互功能的移动图书馆信息服务。微信对读者的 覆盖面很大,特别是高校中的年轻读者用户几乎每人都有微 信,由于传统的移动手机图书馆信息服务app对于平台不兼 容,开发成本高、升级安装麻烦复杂,为改变这种情况,在 此提出了基于公众平台的微信图书馆。
2.6开发中的难点及解决方案。微信公众号规定服务器 响应时间在5秒之内,由于有些功能往往涉及到其他的系 统,有时候时间开销会比较大。因此针对微信的自动回复时 间一定要在规定时间内完成,否则服务器将断开链接,导致 响应超时。在此,在公众号功能设计中采取了一个巧妙的方 法来解决,当用户发送访问请求时,系统反馈给用户的是相 关功能的链接,这样用户可以在微信中访问网页,这样就没 有了微信服务器规定相应时间对交互的影响,很好的解决了 这个问题。
图3 帮助列表
图4 图书检索
图5 续借图书
(3)账户查询:输入字母q,点击回复中的号码绑定, 进入系统后就可以查看账户所借图书列表及其还书时间。
目前,国内图书馆在消息服务上大部分还停留在手机短 信息通知和邮箱通知的层面,这种模式很难做到随时随地获 取信息,用户在获取信息的体验上就会比较差,获取信息的 方式也比较被动。这样就在图书馆的服务模式上提出了更高 的要求和更大的挑战。由此,引入了根据微信公众平台来服 务读者的这种模式。
二、基于微信平台的移动图书馆公众号信息服 务平台设计
REGION INFO 数字地方
图书馆微信公众号服务平台的设计与开发
◆ 李松辉 侯志江
摘要:针对图书馆当今在移动信息服务中的不足,提出构建基于微信公众号的图书馆移动信 息服务平台的思路,阐述了平台实现的原理和关键技术。结合天津理工大学图书馆开发的微信公 众号服务平台,介绍其在实际中的应用效果。
关键词:微信图书馆;微信公众号;移动信息服务
REGION INFO 数字地方
FromUserName> <!--消息创建时间 (整型)--> <CreateTime>12345678</CreateTime> <!--消息类别 (text文本消息)--> <MsgType><![CDATA1]></MsgType> <!--消息内容--> <Content><![CDATA[content]]></Content> <!--消息ID (64位整型)--> <MsgId>1234567890123456</MsgId> </xml> 以上代码主要是解析开发者的微信号,发送端账号,发
[1]叶海明,周绍磊,王昆平.通用测试系统软件平台设计[J].研究与开 发,2010,29(2):54-57.
[2]翟邵蕾,胡海峰,高晨.ICD仿真测试系统在总线冗余控制系统中 的应用[J].航天控制,2010,28(2):84-88.
[3]刘金宁,孟晨,崔少辉,陈德祥.基于配置文件的虚拟仪器测试软件 设计与实现[J].电力自动化设备,2005,25(1):50-53.
(4)续借图书:输入字母xj,绑定自己的用户名及密 码,就可以对自己即将超期的图书进行续借,来延长自己所 借图书的节约时间。如图5所示。
(5)馆藏导航:输入字母dh,点击馆藏分布,就可以 查看各类图书的馆藏分布情况,更为方便的指引读者到达目 标书库,节约读者查找时间。
(6)问题咨询:输入字母zx,用户可以获得需要帮助 的途径及其联系方式。
由于微信公众平台的通信使用的是特定格式的XML数 据,每次接受和回复都要去做一大堆的数据处理。在此,我 们要遵循XML的规范来开发此推荐系统,当微信服务端接收 到用户提交的消息时,用文本消息的例子来表述解析方法, 其关键代码如下:
<xml> <!--开发者微信号--> <ToUserName><![CDATA[toUser]]></ToUserName> <!--发送方帐号(OpenID)--> < F r o m U s e r N a m e > < ! [ C D ATA [ f r o m U s e r ] ] > < /
表1 参数列表
2.4消息推送和回复的方法。消息的推送指的是当用户 通过微信向关注的公众号发送相对应的消息时,会向微信 的服务端POST该消息到服务器配置的URL上,除向微信服 务端发送文本消息外,微信公众平台还支持用户发送图片消 息、地理位置消息、链接消息、事件推送,而开发者还可以 向微信公众平台回复音乐消息和图文消息,各类消息XML规 范也可以参见官方文档[5]。
(下转39页)
信息系统工程 │ 2015.2.20 33
试的流程如图1所示。
SYS PRACTICE 系统实践
图1 软件通用化流程图
通过以上的流程设计,当ICD协议发生变动时,只需要 修改相应配置文件即可,用户也可直接编辑配置文件,程序 根据配置文件中的数据参数信息、频率、板卡通道号、发送 接收状态等信息来进行仿真测试,完成测试任务[5]。
书馆学2013-08-01]. http://baike.
/view/9212662.htm. [4]腾讯.微信|公众平台开发者文档 [EB/OL]. [2013-10-29].http:
///wiki/index.php?title=首页. [5]微信公众平台消息接口指南 [EB/OL]. [2013-08-17]. http://
四、结束语
本文提出了一种基于总线配置文件的软件通用化设计 方法,非常有效地解决了大型复杂系统信号种类繁多,应用
图2 软件仿真测试模板
软件程序设计困难的问题。实际应用证明此设计方法不仅简
化了程序的设计,同时这样的软件架构灵活性非常好,当客
户的ICD文件中帧信息出现调整时,通常只需要手动编辑下
配置文件即可,而程序一般不需要做出改动,或做很小的改
[4]叶中脉,秦开宇,陈华伟,李志强.航电系统通用总线监控软件的设 计与实现[J].测控技术,2012,31(3):94-97.
[5]刘化波.VXI总线多参数综合测试系统的集成研究与开发[D].南 京航空航天大学,2003.
(作者单位:北京计算机技术及应用研究所)
(上接33页)
三、结语Biblioteka 天津理工大学图书馆微信公众号服务是图书馆业务和第
FromUserName> <!--消息创建时间 (整型)--> <CreateTime>12345678</CreateTime> <!--消息类别 (text文本消息)--> <MsgType><![CDATA1]></MsgType> <!--回复消息内容--> <Content><![CDATA[content]]></Content> <!--星标操作(位0x0001被标志时 星标刚收到的消息)-
送的时间标记,内容等一系列的关键信息。 开发者在处理完消息后需要返回数据给微信服务器,其
关键代码如下: <xml> <!--接收方帐号(OpenID)--> <ToUserName><![CDATA[toUser]]></ToUserName> <!--开发者微信号--> < F r o m U s e r N a m e > < ! [ C D ATA [ f r o m U s e r ] ] > < /
图2 图书馆微信服务平台主要功能设计
2.2主要功能和界面设计。功能设计和用户操作界面主 要是以简洁明了的风格为主,以操作简单,反馈高校为基 础,我们在获取帮助的时候只需要根据提示回复相关的字母 即可得到相关的信息,在图2中可以看出,此版公众号共分 为七个功能:
(1)提举提示输入字母h,聊天框中就列出了此公众号 的相关功能,我们只需根据相关提示进行操作即可。如图3 所示:
(7)意见建议:输入字母yjjy,读者可以向图书馆提出 建议。
2.3服务搭建流程及架构。微信公众平台提供多语言的 编程接口,本系统基于PHP来实现的接口方案。
在平台的响应系统中,微信后台核心处理模块用来 接收和验证用户从客户端发送过来的相应消息,微信服 务器将发送GET请求到填写的URL上,并且带上四个参数 (signature、timestamp、nonce、echostr),开发者通过对 签名(即signature)的效验,来判断此条消息的真实性,参 数详细描述如表1所述。然后,每次推荐系统后台接收到用 户请求的消息的时候,都会带上前面三个参数(signature、 timestamp、nonce)访问开发者设置的URL,依然通过对签 名的效验判断此条消息的真实性[4]。效验方式与首次提交验 证申请一致。
2.1技术实现思路及平台构想。微信公众号服务平台提 供了一个开放接口的API,作为第三方接入的图书馆信息服 务功能,可以实现微信用户与图书馆服务的无缝对接。在
32 信息系统工程 │ 2015.2.20
此,用以下流程来展示公众平台和用户交互的一个流程,如 图1所示:
图1 微信公众平台消息交互流程
关于公众号平台的主要功能,在此用图2来进行表示:
继微信5.0开始,微信公众号被分为订阅号和服务号, 订阅号每天可以推送一次信息,没有自定义菜单,推动的信 息用户自己去提取。服务号一个月只能推送一次信息,可以 申请自定义菜单,推送的信息马上提醒[2]。
本文采取订阅号为推送平台,订阅号主要为媒体和个 人提供一种新的信息传播方式,构建与读者之间更好的沟通 与管理模式[3]。采取此种服务模式主要是简化读者在查询图 书馆信息服务时的操作流程和提高读者的用户体验。系统包 括查看帮助、图书检索、账户查询、续借图书、馆藏导航、 问题咨询、意见建议。这些功能可以让读者更加方便地来获 取相关信息和帮助,比原来只能在电脑上进行操作更加人性 化,让读者随时随地的使用图书馆资源。
在此基础上,我们仿真测试的界面选用通用的测试模 板,各种总线信号的仿真测试界面放在共用的测试页面中。 初始的页面全部为空,当程序运行后由用户选择测试任务, 然后软件根据总线结构和配置文件在公共页面上自动生成测 试界面,用户点击开始运行即进行仿真测试,根据配置文件 的结构体和界面上的控件,对数据进行封装发送和接收解析 数据并进行显示,完成对航电系统总线数据的仿真和测试功 能。软件运行后仿真测试的模板设计如图2所示。
三方移动平台的一次结合的尝试,微信公众号作为一种新兴
的功能模块,目前还在不断的成长和完善之中。读者可以在
微信中订阅“天津理工图书馆”公众号,来体验天津理工大
学图书馆微信图书馆的功能和服务。未来,将会运用语音识
别技术来和用户进行交互,提高用户的使用体验,加强公众
号部分子模块的扩展功能。
H
图书馆为例[J].图书馆杂志,2013(8):66-71. [2]黄浩波,何卫华,叶青.微信及其在图书馆信息服务中的应用[J].图
-> <FuncFlag>0</FuncFlag> </xml> 2.5相比传统移动手机图书馆app的优势。(1)传统的
app需要开发多个版本,比如IOS、Android、Windows Phone 等多种版本来适配用户,这样会耗费大量的人力物力成本, 而基于微信公众号的开发设计就解决了版本间的适配问题, 节约了成本。(2)基于微信的公众号省去了传统app安装的 过程,节约了手机有限的系统资源,并且也具有免升级省流 量的优势。(3)微信公众号对于读者来讲操作简便,受到 广大读者的认可和欢迎。
动;并且这种统一的设计,使程序很少出现有细节上的错
误。
基于这种方案的优点,我们将模拟量、离散量、GPS信
号和其他总线信号,如ARINC 429、RS-422、网络,还有硬
件的通道配置都使用了该设计,整个测试软件的架构非常统
一,代码非常简洁,此设计方法可作为复杂测试系统软件设
计的一种通用架构。
H
参考文献
一、引言
近年来,随着如今通信技术和互联网的发展,图书馆 的发展也进入到了数字化和网络化的浪潮中。需要图书馆在 当今的服务模式中做出适应形势的变化,由传统式的服务方 式转变成多元化和个性化的服务模式来满足读者的需求[1]。 在此,本文根据图书馆信息服务的需要,充分利用微信公众 号的功能特点,构建一个基于图书馆的公共服务平台,为读 者提供具有交互功能的移动图书馆信息服务。微信对读者的 覆盖面很大,特别是高校中的年轻读者用户几乎每人都有微 信,由于传统的移动手机图书馆信息服务app对于平台不兼 容,开发成本高、升级安装麻烦复杂,为改变这种情况,在 此提出了基于公众平台的微信图书馆。
2.6开发中的难点及解决方案。微信公众号规定服务器 响应时间在5秒之内,由于有些功能往往涉及到其他的系 统,有时候时间开销会比较大。因此针对微信的自动回复时 间一定要在规定时间内完成,否则服务器将断开链接,导致 响应超时。在此,在公众号功能设计中采取了一个巧妙的方 法来解决,当用户发送访问请求时,系统反馈给用户的是相 关功能的链接,这样用户可以在微信中访问网页,这样就没 有了微信服务器规定相应时间对交互的影响,很好的解决了 这个问题。