鄭萬(wàn)挺,胡震寰,,白寶鋼
?。刂葆t(yī)科大學(xué) 信息與工程學(xué)院,浙江 溫州 325035)
摘要:隨著Internet和網(wǎng)絡(luò)技術(shù)的發(fā)展與應(yīng)用,,教育技術(shù)和方法也進(jìn)入了一個(gè)新的發(fā)展階段,,出現(xiàn)了數(shù)字化教學(xué)資源平臺(tái)?;?a class="innerlink" href="http://forexkbc.com/tags/微信公眾平臺(tái)" title="微信公眾平臺(tái)" target="_blank">微信公眾平臺(tái)的實(shí)驗(yàn)室教學(xué)資源推廣平臺(tái)實(shí)現(xiàn)了資源共享、便捷查看信息的功能,,滿足多層次和多用戶的需求,,推動(dòng)了院校實(shí)驗(yàn)室教學(xué)資源的建設(shè)。它可以展現(xiàn)文字,、圖片,、視頻等豐富多樣的課程教學(xué),并結(jié)合其他教學(xué)資源鏈接,,全面滿足學(xué)生自助式學(xué)習(xí)的要求,,也是促進(jìn)主動(dòng)式、協(xié)作式,、研究型,、自主型學(xué)習(xí),形成開放,、高效的新型教學(xué)模式,。
關(guān)鍵詞:微信公眾平臺(tái);信息技術(shù),;教學(xué)資源
0引言
浙江省高校實(shí)驗(yàn)室工作研究項(xiàng)目(YB201520)在高速發(fā)展的信息科技時(shí)代,,微信已經(jīng)有了億級(jí)的用戶,逐漸成為人們信息交流的主流[1]。微信公眾平臺(tái)是騰訊公司新增的功能模塊,,通過這一平臺(tái),,可以實(shí)現(xiàn)特定群體的文字、圖片,、語(yǔ)音的全方位溝通,,還可以設(shè)定關(guān)鍵詞進(jìn)行自動(dòng)回復(fù)或一對(duì)一的用戶交流。隨著網(wǎng)絡(luò)教學(xué)的發(fā)展,,網(wǎng)絡(luò)教學(xué)資源也越來(lái)越豐富,,怎樣更有效地管理教學(xué)資源成為開展網(wǎng)絡(luò)教學(xué)的關(guān)鍵[2]。另外,,微信正成為移動(dòng)互聯(lián)網(wǎng)時(shí)代的新寵兒,,可以為高校教學(xué)資源提供一個(gè)共享平臺(tái)。
本文設(shè)計(jì)了基于手機(jī)微信的實(shí)驗(yàn)教學(xué)資源推廣平臺(tái),,編程語(yǔ)言為PHP語(yǔ)言,,服務(wù)器為新浪SAE服務(wù)器,主要從手機(jī)端用戶關(guān)注的微信公眾平臺(tái)和管理員微信公眾平臺(tái)后臺(tái)兩個(gè)方面來(lái)研究,,通過驗(yàn)證配置接口與服務(wù)器鏈接,,實(shí)現(xiàn)上傳代碼數(shù)據(jù)。本微信推廣平臺(tái)設(shè)計(jì)合理,,穩(wěn)定性和可靠性高,,成本也不高。
1系統(tǒng)整體概述
基于手機(jī)微信的實(shí)驗(yàn)教學(xué)資源推廣平臺(tái)主要由兩個(gè)模塊組成,,一是用戶關(guān)注后的移動(dòng)端微信公眾平臺(tái),,二是管理員操作的微信公眾平臺(tái)后臺(tái),主要以網(wǎng)絡(luò)服務(wù)器,、數(shù)據(jù)庫(kù)搭建技術(shù),、微信接口開發(fā)模式二次開發(fā)技術(shù)、微信顯示微網(wǎng)站構(gòu)建技術(shù)等為基礎(chǔ),,設(shè)計(jì)實(shí)現(xiàn)基于手機(jī)微信的實(shí)驗(yàn)教學(xué)資源推廣微平臺(tái),,其功能結(jié)構(gòu)設(shè)計(jì)示意圖如圖1所示。
圖1基于手機(jī)微信實(shí)驗(yàn)室教學(xué)資源推廣平臺(tái)功能結(jié)構(gòu)設(shè)計(jì)示意圖基于手機(jī)微信的實(shí)驗(yàn)室教學(xué)資源推廣平臺(tái)客戶端主要包含以下功能模塊:
?。?)關(guān)注回復(fù):用戶登錄微信后,,在“添加朋友”里輸入本教學(xué)資源平臺(tái)的公眾號(hào)或微信號(hào),輸入正確就可以搜圖3創(chuàng)建數(shù)據(jù)庫(kù)和數(shù)據(jù)表到該平臺(tái),,添加關(guān)注后,,用戶就可以收到一條自動(dòng)回復(fù)消息,表示已經(jīng)成功關(guān)注了該平臺(tái),,可以正常使用該平臺(tái)上的功能以及接收來(lái)自平臺(tái)的資源信息,。
?。?)消息自動(dòng)回復(fù):分為關(guān)鍵詞自動(dòng)回復(fù)和消息自動(dòng)回復(fù)。當(dāng)用戶在平臺(tái)上輸入關(guān)鍵詞時(shí),,系統(tǒng)會(huì)根據(jù)輸入的關(guān)鍵詞自動(dòng)回復(fù)相應(yīng)的消息,,為用戶帶來(lái)了便捷性的查詢;當(dāng)用戶發(fā)送的信息無(wú)法匹配設(shè)置的關(guān)鍵詞自動(dòng)回復(fù)返回的內(nèi)容時(shí),,系統(tǒng)會(huì)自動(dòng)給出回復(fù),,這也充分展現(xiàn)了平臺(tái)的人性化。
?。?)位置天氣查詢:當(dāng)用戶發(fā)送位置消息時(shí),,系統(tǒng)根據(jù)位置信息獲取當(dāng)?shù)靥鞖獠l(fā)送回給用戶。
?。?)圖片消息回復(fù):當(dāng)用戶發(fā)送的信息為圖片信息時(shí),,系統(tǒng)會(huì)自動(dòng)針對(duì)圖片消息做出回復(fù)。
?。?)自定義菜單響應(yīng)回復(fù):在平臺(tái)界面的最下方有3個(gè)菜單欄,,每個(gè)菜單欄下有子菜單,用戶通過點(diǎn)擊子菜單,,可以得到系統(tǒng)相應(yīng)的消息回復(fù),,有文字消息、網(wǎng)頁(yè)消息和圖文消息,。菜單功能使得用戶對(duì)平臺(tái)的各種資源一目了然,,也實(shí)現(xiàn)了平臺(tái)對(duì)資源信息推廣的功能。
?。?)實(shí)時(shí)推送消息:只要用戶關(guān)注了本平臺(tái)就可定期接收來(lái)自平臺(tái)推送的消息,,讓用戶更及時(shí)地了解當(dāng)前實(shí)驗(yàn)室教學(xué)資源的實(shí)時(shí)信息,也是真正意義上實(shí)施教學(xué)資源推廣的表現(xiàn),。
2數(shù)據(jù)庫(kù)的構(gòu)建
本系統(tǒng)采用新浪SAE中的MySQL,在MySQL的管理頁(yè)面中集成的PhpMyAdmin里創(chuàng)建數(shù)據(jù)庫(kù)和數(shù)據(jù)表[3],。首先獲取數(shù)據(jù)庫(kù)連接的主機(jī)名,、賬號(hào)、密碼,、端口,,在SAE上運(yùn)行一下腳本,獲取連接信息,。
得到了SAE的數(shù)據(jù)庫(kù)連接信息,,就可以連接MySQL了,使用SAE提供的常量名而不是上面打出來(lái)的信息,,因?yàn)榭赡苓@些信息會(huì)發(fā)生變化,,連接SAE MySQL腳本如圖2所示,。
圖2連接SAE MySQL的腳本打開新浪SAE的管理后臺(tái)后,進(jìn)入服務(wù)管理的MySQL模塊,,在MySQL的管理頁(yè)面中集成的PhpMyAdmin里創(chuàng)建數(shù)據(jù)庫(kù)和數(shù)據(jù)表[4],如圖3所示,。
3系統(tǒng)實(shí)現(xiàn)的關(guān)鍵技術(shù)
3.1系統(tǒng)的準(zhǔn)備工作
SAE的注冊(cè)地址為:http://sea.sina.com.cn/m=dashboard,創(chuàng)建新應(yīng)用頁(yè)面后,,依次填寫二級(jí)域名(AppId),、應(yīng)用名稱、驗(yàn)證碼,,開發(fā)語(yǔ)言選擇PHP,,應(yīng)用類型選擇Web應(yīng)用后即可生成新的應(yīng)用。進(jìn)入新應(yīng)用頁(yè)面的代碼管理頁(yè)面,,顯示了應(yīng)用的鏈接,,此鏈接用于微信公眾平臺(tái)開發(fā)者中心的接口配置;代碼管理模塊也是后期上傳代碼的地方,。
3.2后臺(tái)的注冊(cè)
后臺(tái)的注冊(cè)即是申請(qǐng)微信公眾賬號(hào),。首先在網(wǎng)上搜索“微信公眾平臺(tái)”或者直接輸入網(wǎng)址“https://mp.weixin.qq.com/”進(jìn)入到微信公眾平臺(tái)界面,點(diǎn)擊右上角的“立即注冊(cè)”跳轉(zhuǎn)到注冊(cè)界面,,在注冊(cè)界面中填寫基本信息,、郵箱激活、選擇類型,、信息登記,、填寫公眾號(hào)信息,就完成注冊(cè)了,。
3.3開發(fā)者中心接口配置
在SAE的管理頁(yè)面中上傳簽名及接口驗(yàn)證代碼,,開發(fā)者通過檢驗(yàn)signnature和私有的checkSignature方法對(duì)請(qǐng)求進(jìn)行校驗(yàn),進(jìn)入微信公眾平臺(tái)后臺(tái)的開發(fā)者中心頁(yè)面,,填寫服務(wù)器的URL和Token[5],。
3.4手機(jī)端微信公眾平臺(tái)
3.4.1關(guān)注回復(fù)
在PHP語(yǔ)言中,公有的responseMsg方法是微信回復(fù)的關(guān)鍵,,用戶端發(fā)送的數(shù)據(jù)將保存到變量$postStr中[6],。將$postStr變量解析賦予變量$postObj,simplexml_load_string()函數(shù)是PHP中的一個(gè)解析XML函數(shù),。為了實(shí)現(xiàn)關(guān)注回復(fù),,給$type賦予值event,$customevent賦予值subscribe,,返回文本信息,。其關(guān)鍵代碼如下:
public function responseMsg()
{
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
//獲取微信用戶端發(fā)來(lái)的消息
if (!empty($postStr))//用戶端數(shù)據(jù)不為空
{
libxml_disable_entity_loader(true);
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
}}
3.4.2消息自動(dòng)回復(fù)
用戶端微信發(fā)來(lái)的文本內(nèi)容(關(guān)鍵詞)賦予變量$keyword,根據(jù)不同的關(guān)鍵詞使用if語(yǔ)句來(lái)回復(fù)不同的文本,。另外,,天氣咨詢的查詢調(diào)用了天氣預(yù)報(bào)接口,,用$placeobj、$todayobj,、$weatherobj,、$windobj、$temobj變量來(lái)獲取城市,、日期,、天氣、風(fēng)力和溫度信息[7],。關(guān)鍵實(shí)現(xiàn)代碼如下:
if($type=="location")
{
$weatherurl="http://api.map.baidu.com/telematics/v2/weather?location={$longitude},{$latitude}&ak=1a3cde429f38434f1811a75e1a90310c";//天氣預(yù)報(bào)接口
$apistr=file_get_contents($weatherurl);
$apiobj=simplexml_load_string($apistr);
$placeobj=$apiobj->currentCity;//讀取城市
$todayobj=$apiobj->results->result[0]->date;//讀取星期
$weatherobj=$apiobj->results->result[0]->weather;
//讀取天氣
$windobj=$apiobj->results->result[0]->wind;//讀取風(fēng)力
$temobj=$apiobj->results->result[0]->temperature;
//讀取溫度
$contentStr ="{$placeobj}{$todayobj}天氣{$weatherobj},,風(fēng)力{$windobj},溫度{$temobj}";
$msgType = "text";
$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
echo $resultStr;
}
3.4.3圖片消息自動(dòng)回復(fù)
當(dāng)用戶端向微信公眾帳號(hào)發(fā)送圖片時(shí),,系統(tǒng)的消息類型$type為image,,并且提供了圖片鏈接的保存地址。
當(dāng)用戶發(fā)送位置圖片消息時(shí),,系統(tǒng)的消息類型$type為location,,Location_X和Location_Y分別表示緯度和經(jīng)度,通過$latitude和$longitude來(lái)獲取客戶發(fā)送的緯度和經(jīng)度信息,,返回到用戶端的消息為天氣咨詢[8],。
3.4.4自定義菜單相應(yīng)回復(fù)
在接口調(diào)試工具中,接口類型選擇自定義菜單,,接口列表選擇自定義菜單創(chuàng)建接口/menu/creat,,access_token是上文中獲得的,菜單的body是以POST的方式向微信服務(wù)器提交的,,POST的數(shù)據(jù)為JSON格式數(shù)據(jù),,button為一級(jí)菜單,sub_button為二級(jí)子菜單,。若返回JSON數(shù)據(jù)包為{"errcode":0,"errmsg":"ok"},,表示菜單創(chuàng)建成功[8]。
菜單的事件推送分為click菜單型和view菜單型,。click類型需要菜單key值,,用于消息接口推送,變量Eventkey被賦予菜單body中的key值,;view類型引用網(wǎng)頁(yè)鏈接,用戶點(diǎn)擊菜單可打開鏈接,。本平臺(tái)的菜單事件主要以圖文消息類型進(jìn)行響應(yīng),,圖文消息有單圖文消息和多圖文信息,當(dāng)用戶點(diǎn)擊子菜單時(shí),,系統(tǒng)就會(huì)響應(yīng)事件推送信息到用戶端,。
4系統(tǒng)實(shí)現(xiàn)
?。?)系統(tǒng)通過整合實(shí)驗(yàn)教學(xué)資源,利用PHP編程語(yǔ)言,、新浪SAE服務(wù)器,,開發(fā)實(shí)現(xiàn)了消息自動(dòng)回復(fù)、關(guān)鍵字查詢,、圖片消息回復(fù),、位置消息回復(fù)、自定義菜單創(chuàng)建等功能模塊,,如圖4,、圖5所示。
圖5位置消息回復(fù)界面(2)系統(tǒng)服務(wù)端實(shí)時(shí)監(jiān)聽平臺(tái)上新增的實(shí)驗(yàn)教學(xué)資源信息動(dòng)態(tài),,以POST的方式向微信服務(wù)器提交推送指令,,事件主要以圖文消息類型進(jìn)行響應(yīng),圖文消息有單圖文消息和多圖文信息,,如圖6所示,。
(3)系統(tǒng)實(shí)現(xiàn)師生交流互動(dòng)功能及學(xué)生關(guān)鍵詞咨詢的自動(dòng)回復(fù),,輔以人工回復(fù),。
(4)系統(tǒng)在微信公眾平臺(tái)后臺(tái)對(duì)用戶進(jìn)行分組管理,,統(tǒng)計(jì)各項(xiàng)數(shù)據(jù)以及素材的管理,,實(shí)現(xiàn)學(xué)生訂閱用戶增長(zhǎng)統(tǒng)計(jì)、學(xué)生咨詢統(tǒng)計(jì),、學(xué)生專業(yè)分類統(tǒng)計(jì),、學(xué)生咨詢關(guān)鍵詞統(tǒng)計(jì)等功能。
5結(jié)論
基于手機(jī)微信的實(shí)驗(yàn)教學(xué)資源推廣平臺(tái)可以提供文字,、圖片,、視頻等豐富多樣的實(shí)驗(yàn)課程教學(xué)資源及其他教學(xué)資源鏈接,全面滿足學(xué)生自助式學(xué)習(xí)的要求,,實(shí)現(xiàn)師生交流互動(dòng)功能及學(xué)生關(guān)鍵詞咨詢的自動(dòng)回復(fù),。微信公眾平臺(tái)后臺(tái)可以對(duì)用戶進(jìn)行分組管理,統(tǒng)計(jì)各項(xiàng)數(shù)據(jù)以及素材的管理,,實(shí)現(xiàn)學(xué)生訂閱用戶增長(zhǎng)統(tǒng)計(jì),、學(xué)生咨詢統(tǒng)計(jì)、學(xué)生專業(yè)分類統(tǒng)計(jì),、學(xué)生咨詢關(guān)鍵詞統(tǒng)計(jì)等功能,。兩者的結(jié)合使實(shí)驗(yàn)教學(xué)資源的推廣更加便捷。
參考文獻(xiàn)
?。?] 孔云,廖寅,資蕓,等.基于微信公眾賬號(hào)的圖書館移動(dòng)信息服務(wù)研究[J].情報(bào)雜志,2013,,32(9):167170,,198.
[2] 謝新洲,安靜.微信的傳播特征及其社會(huì)影響[J].中國(guó)傳媒科技,2013(6): 2123.
?。?] 陳夢(mèng)軼.微信公眾平臺(tái)的傳播學(xué)解讀[J].三明學(xué)院學(xué)報(bào),2014,,31(1):7680.
[4] 白浩,郝晶晶.微信公眾平臺(tái)在高校教育領(lǐng)域中的應(yīng)用研究[J].中國(guó)教育信息化(基礎(chǔ)教育),2013(2):7881.
?。?] HILSEN I A, HELVIK T.The construction of self in social medias, such as facebook[J].Ai & Society,2014,29(1):310.
?。?] 王勇,李懷蒼.國(guó)內(nèi)微信的本體功能及其應(yīng)用研究綜述[J].昆明理工大學(xué)學(xué)報(bào)(社會(huì)科學(xué)版),2014,14(2):100108.
[7] 鞠文飛.利用微信公眾平臺(tái)構(gòu)建移動(dòng)設(shè)備教學(xué)輔導(dǎo)環(huán)境[J].電腦編程技巧與維護(hù),2013(12):139141.
?。?] 朱小燕,安容宇.淺談PHP語(yǔ)言在網(wǎng)站后臺(tái)建設(shè)中的優(yōu)勢(shì)[J].電子制作,2013(9):100.