王心妍(西安培華學(xué)院,西安 710125)
基于微信公眾平臺的高校移動圖書館系統(tǒng)的設(shè)計與實(shí)現(xiàn)
王心妍
(西安培華學(xué)院,西安710125)
微信公從平臺的興起為圖書館提供了更廣闊的發(fā)展空間,使移動圖書館服務(wù)得到長足發(fā)展和應(yīng)用。本文基于微信公眾平臺的獨(dú)特性,結(jié)合圖書館自身特點(diǎn),介紹了基于微信公共平臺的移動圖書館的設(shè)計與實(shí)現(xiàn)。
開放接口;微信公眾平臺;圖書館
微信是一款比QQ更加便捷的手機(jī)即時通訊APP,由它所引領(lǐng)的“微生活”方式正逐漸滲透到我們生活的方方面面[1]。截止到2014年12月,全球的微信注冊用戶已突破11.2億,其中月活躍用戶高達(dá)4.4億,微信在智能手機(jī)中滲透率接近100%,是亞洲地區(qū)最大用戶群體的移動即時通訊軟件。其用戶主要是一線城市的年輕人,特別是高校的學(xué)生群體。
對于高校而言,微信的使用群體最為密集,圖書館服務(wù)與微信公眾平臺的有效結(jié)合定將有益于廣大學(xué)生。自從騰訊公司2012年推出微信公眾平臺后,全國各大圖書館也積極利用微信平臺開展圖書館的各項(xiàng)服務(wù),如新書和講座的消息推送服務(wù)、自動咨詢應(yīng)答服務(wù)、借閱信息查詢和續(xù)借辦理服務(wù)等。截止2014年6月底,已有23所高校圖書館開通了其微信公眾平臺,為學(xué)生和老師提供信息服務(wù)。但很多圖書館僅限于基本的信息推送和自動應(yīng)答服務(wù),沒有對其公眾平臺進(jìn)行更深層次的開發(fā)。本文主要介紹高校圖書館微信公眾平臺的二次開發(fā),以此來拓展移動圖書館的高級功能,向讀者提供更便捷、更快速的個性化服務(wù)。
2.1 注冊
微信公眾平臺面向所有企業(yè)或個人,在注冊界面輸入驗(yàn)證郵箱和密碼,根據(jù)提示在注冊郵箱中點(diǎn)擊鏈接進(jìn)行激活。郵箱驗(yàn)證成功后就可以進(jìn)入資料提交界面,在類型選擇時有政府、媒體、企業(yè)、其他組織和個人,圖書館服務(wù)則選擇其他組織。隨后填寫圖書館的真實(shí)信息,包括名稱、郵箱、郵編、地址、電話、機(jī)構(gòu)代碼、組織機(jī)構(gòu)加蓋公章掃描件、運(yùn)營者身份證號碼及名稱、職務(wù)、運(yùn)營者手持證件照片、手機(jī)號碼、短信驗(yàn)證碼和授權(quán)運(yùn)營書,一般會在7個工作日內(nèi)通過審核。
2.2賬號設(shè)置
注冊成功后的微信公眾號可以進(jìn)行基本的賬號設(shè)置,比如頭像設(shè)置、公眾號名稱和微信號碼設(shè)置(設(shè)置好后不允許更改)、功能介紹和二維碼,并選擇回復(fù)設(shè)置——自動回復(fù)、消息回復(fù)和自定義回復(fù),回復(fù)設(shè)置的選擇是圖書館實(shí)現(xiàn)自動查詢功能的基礎(chǔ)。
2.3功能設(shè)計
微信公共平臺可以實(shí)現(xiàn)群發(fā)消息、用戶管理、資源內(nèi)容管理、API開放接口等多個強(qiáng)大的功能。本文根據(jù)普通高校圖書館的特點(diǎn),設(shè)計以下功能:
2.3.1圖書證的綁定與解綁功能
讀者通過向公眾賬號發(fā)送具有個人圖書證編碼和密碼的信息,圖書館的微信服務(wù)端對其身份進(jìn)行一對一的驗(yàn)證,驗(yàn)證成功后發(fā)送服務(wù)操作指令,實(shí)現(xiàn)圖書證與公眾號的綁定,便可隨時隨地獲得快速信息查詢和續(xù)借等服務(wù)。如果解除綁定,則將取消一切服務(wù)。
2.3.2借閱信息查詢功能
通過微信公從平臺,讀者在開發(fā)的菜單上點(diǎn)擊“查詢借閱信息”命令,將會在手機(jī)上快速查看自己圖書證上已借圖書情況。
2.3.3圖書預(yù)約與續(xù)借功能
通過微信公從平臺,讀者在菜單上點(diǎn)擊“預(yù)約”或“續(xù)借”命令,圖書館微信服務(wù)端接收命令后會及時向讀者返回,便可快速辦理圖書的預(yù)約續(xù)借服務(wù)。
2.3.4新書通報功能
利用微信的群發(fā)功能,及時有效地將新書信息發(fā)送到每位讀者,可以讓讀者通過微信平臺更加積極地互動,有效提高新書利用率和周轉(zhuǎn)率。
2.3.5通知、新聞等功能
微信群發(fā)可以使圖書館的講座通知、新聞以及培訓(xùn)等信息第一時間發(fā)送給讀者。
3.1 消息接口配置
微信公眾號審核通過后,就可利用微信公眾平臺“高級功能”菜單中的“開發(fā)模式”實(shí)現(xiàn)對該公眾號的二次開發(fā)。二次開發(fā)的首要環(huán)節(jié)就是配置消息接口,登記圖書館用于消息處理的服務(wù)器資源URL和用于生成簽名的Token值,實(shí)現(xiàn)網(wǎng)址的接入。
當(dāng)有消息提交時,微信服務(wù)器即刻向所登記的服務(wù)器資源URL發(fā)送GET請求。消息服務(wù)器首先檢驗(yàn)加密簽名Signature,驗(yàn)證成功則原樣返回隨機(jī)字符串Echostr的內(nèi)容,以表明成功接入,反之則接入失敗。消息接口配置成功后,URL就會接收到發(fā)送至微信公眾號的所有消息,而對于消息的解析和回復(fù),則交由指令解析模塊和各個服務(wù)子模塊來完成。
3.2 指令解析
3.2.1消息接收
微信一般是通過消息的交互來實(shí)現(xiàn)其應(yīng)用的,對消息的解析由指令解析模塊來負(fù)責(zé)。我們通常采XML作為請求消息格式,采用Dom4j來對其進(jìn)行解析。當(dāng)微信服務(wù)器接收POST請求,指令解析模塊就會匹配消息類型和指令,并調(diào)用服務(wù)子模塊來進(jìn)行具體的處理。其中所涉及到的主要代碼和解釋如下:
解析指令內(nèi)容,確定子模塊及調(diào)用參數(shù):functionexecuteCommand(cmd)
執(zhí)行子模塊,完成指令要求功能:(module,params)=parseCommand(cm d)ExecuteModule(module,params)
本設(shè)計中微信公眾平臺所支持的文本消息指令包括兩種:
(2)復(fù)雜功能性指令:例如“cs#t:題名”(按題名查詢圖書)、“jy#證號,PIN碼”(查詢個人借閱情況)等。
3.2.2消息回復(fù)
對接收到消息指令進(jìn)行解析后,服務(wù)子模塊就會對其進(jìn)行響應(yīng)和處理,并將查詢結(jié)果返回給指令解析模塊進(jìn)行重新封裝,從而生成XML格式的回復(fù)消息。以回上例中的消息為例,輸入指令“cs#t:人生”,將得到如下回復(fù)消息。
<xm l>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[共3本1.《人生》...chx/Y?SEARCH=t:人生]]></Content>
<FuncFlag>0</FuncFlag>
</xm l>
3.3 服務(wù)子模塊的實(shí)現(xiàn)
圖書館微信公眾平臺在進(jìn)行二次開發(fā)時,為了使其服務(wù)子模塊具備良好的擴(kuò)展性,在消息處理時可以自由添加一些功能。但這并不意味著可以隨意設(shè)置功能模塊,因?yàn)榉?wù)子模塊的實(shí)現(xiàn)方式還和第三方系統(tǒng)的開放程度有關(guān),因此各子模塊的實(shí)現(xiàn)也會有所不同。例如圖書館的預(yù)約續(xù)借管理系統(tǒng)如果能夠提供完整的功能接口,該微信服務(wù)子模塊的實(shí)現(xiàn)就比較簡單,通過直接調(diào)用該功能接口,將預(yù)約或續(xù)借情況的信息封裝成微信消息。但是如果第三方系統(tǒng)沒有提供現(xiàn)成的接口,子模塊的實(shí)現(xiàn)就有點(diǎn)復(fù)雜。例如圖書館的書目查詢系統(tǒng)沒有提供現(xiàn)成的接口,實(shí)現(xiàn)時則需要使用HTMLParser模擬查詢操作,并通過解析查詢結(jié)果頁面,而獲得查詢信息。
除了將微信與圖書館傳統(tǒng)服務(wù)集成外,還可以通過微信傳播更豐富的圖書館信息。圖書館有書展、培訓(xùn)講座等動態(tài)信息,如果通過人工維護(hù)的方式在微信應(yīng)用中提供這些信息,工作量大且難以保證信息的及時同步,因此可充分利用已有的RSS源,實(shí)現(xiàn)熱點(diǎn)消息查詢子模塊[2]。當(dāng)用戶向微信公眾號發(fā)送指令(如“新聞”)時,系統(tǒng)將讀取相應(yīng)的RSS源,程序解析后將以回復(fù)文本消息的形式,返回包含新聞標(biāo)題和網(wǎng)址的XML。
基于微信公眾平臺構(gòu)建的高校移動圖書館服務(wù)系統(tǒng)具有靈活開放、功能強(qiáng)大等優(yōu)點(diǎn),可以極大地節(jié)約建設(shè)成本,提高圖書館移動服務(wù)水平。本文設(shè)計并實(shí)現(xiàn)了微信圖書館公眾平臺的二次開發(fā),希望可以給我校圖書館在建設(shè)移動圖書館時提供一種選擇和參考。
[1]黃浩波,何衛(wèi)華,葉青微信及其在圖書館信息服務(wù)中的應(yīng)用[J].圖書館學(xué)刊,2013(01):62-64.
[2]張蓓,竇天芳,張成昱.圖書館微信公眾平臺服務(wù)的設(shè)計與實(shí)現(xiàn)[J].現(xiàn)代圖書情況技術(shù)2014(01):87-90.
本文系西安培華學(xué)院2014年度校級科研課題“基于微信公眾平臺的高校移動圖書館系統(tǒng)的設(shè)計與實(shí)現(xiàn)”(項(xiàng)目編號:PHKT20140745)的研究成果。
王心妍(1978-),女,陜西西安人,講師,研究生,研究方向:計算機(jī)應(yīng)用技術(shù)。