倪禮豪
摘要:微信公眾平臺在教育中的研究只涉及消息推送、師生互動、針對具體一門學(xué)科在教學(xué)設(shè)計方面的支持。為了提高對翻轉(zhuǎn)課堂教學(xué)活動更好的信息化支撐,利用微信公眾平臺支持通過編程接口,實現(xiàn)對用戶管理、對文本、語音、視頻、圖片、位置信息、相冊等媒體內(nèi)容的管理和本地化存儲的功能,結(jié)合web3.0的技術(shù)特性,設(shè)計了基于微信公眾平臺二次開發(fā)的多終端應(yīng)用系統(tǒng)。通過實踐證明,平臺能有效的支撐翻轉(zhuǎn)課堂教學(xué)與管理。
關(guān)鍵詞:計算機(jī)軟件;微信公眾平臺;翻轉(zhuǎn)課堂;二次開發(fā);多終端應(yīng)用系統(tǒng)
中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A DOI:10.3969/j.issn.1003-6970.2015.04.026
0.引言
在已有的研究中,關(guān)于微信、微信公眾平臺在教學(xué)中應(yīng)用的研究主要有以下兩類。
第一類,作為信息傳播的途徑和工具,文獻(xiàn)1探究了微信對大學(xué)生道德教化的多方面影響,基于微信的大學(xué)道德教化信息的傳播與優(yōu)化徑路及微信的信息傳播機(jī)理。文獻(xiàn)2構(gòu)建了在微信支持下的混合式學(xué)習(xí)模式[引,文獻(xiàn)3證明了微信能有效的促進(jìn)混合式學(xué)習(xí)。
第二類,研究微信、微信公眾平臺的構(gòu)建,文獻(xiàn)4認(rèn)為微信公眾平臺教學(xué)效果預(yù)期佳,文獻(xiàn)5和文獻(xiàn)6闡述了微信公眾平臺支持下的翻轉(zhuǎn)課堂模式,文獻(xiàn)7通過創(chuàng)建一個名為“翻轉(zhuǎn)課堂”的QQ群來實施教學(xué),文獻(xiàn)8主要闡述微信公眾平臺輔助課堂教學(xué)模式構(gòu)建。微信公眾平臺在翻轉(zhuǎn)課堂中對翻轉(zhuǎn)課堂創(chuàng)新性學(xué)習(xí)未見論述,本文設(shè)計并實現(xiàn)了基于微信公眾平臺的多終端系統(tǒng),以支持翻轉(zhuǎn)課堂的教學(xué)活動。
1.微信公眾平臺在翻轉(zhuǎn)課堂中的支撐作用
1.1微信公眾平臺接口支持
微信公眾平臺服務(wù)號提供了豐富的接口,有對話服務(wù)、功能服務(wù)和網(wǎng)頁服務(wù)三大類,對話服務(wù)中基礎(chǔ)支持部分能獲取access token和微信服務(wù)器的IP地址,這為實現(xiàn)雙向認(rèn)證和下載多媒體資源準(zhǔn)備了條件,接受/發(fā)送消息接口為用戶和公眾平臺之間交互信息準(zhǔn)備了條件,接受消息和自動回復(fù)次數(shù)無限制,并且可以通過用戶管理接口、實現(xiàn)對用戶分組、設(shè)置備注名、獲取用戶基本信息、獲取用戶列表、獲取用戶地理位置信息;功能服務(wù)主要是面向微商的;網(wǎng)頁服務(wù)提供了Web頁面對用戶的管理接口,網(wǎng)頁服務(wù)次數(shù)無限制。
1.2微信公眾號在學(xué)習(xí)中的支撐手段
在翻轉(zhuǎn)課堂中,學(xué)生的個性化學(xué)習(xí)成為了主體,如何引導(dǎo)學(xué)生高效的自主學(xué)習(xí),實現(xiàn)學(xué)生與教師之間的有機(jī)溝通,學(xué)生之間的協(xié)作學(xué)習(xí),學(xué)生探索過程中的技術(shù)支撐,并對學(xué)習(xí)過程進(jìn)行有效的跟蹤,實現(xiàn)自我管理與評價是亟需解決的問題。
(1)多角度的技術(shù)支持,促進(jìn)個性化學(xué)習(xí)
在翻轉(zhuǎn)課堂中,學(xué)生的自主探究式學(xué)習(xí)主要在課外進(jìn)行,學(xué)習(xí)的起點是老師布置的問題、預(yù)先設(shè)置的教學(xué)目標(biāo)、自己感興趣的問題等。教師在課堂上可以把自己的問題截屏、拍攝成圖片、一段錄像或者一段錄音,發(fā)送到微信公眾平臺,利用微信公眾平臺提供的多媒體下載接口,通過編程,應(yīng)用服務(wù)器自動把提交的素材下載到本地服務(wù)器,素材的描述性信息存儲在數(shù)據(jù)庫,由于每個微信號在具體公眾平臺上有且只有一個永久的Openld,這樣就實現(xiàn)了所發(fā)送的內(nèi)容與發(fā)送者身份之間的雙向認(rèn)證,并且實現(xiàn)了在本地應(yīng)用服務(wù)器的持久化。在發(fā)送完素材后,微信公眾平臺會向發(fā)送者回復(fù)發(fā)送狀態(tài)標(biāo)識碼,如果發(fā)送成功,媒體并被本地應(yīng)用服務(wù)器保存,則回復(fù)的標(biāo)志碼中帶有該媒體在數(shù)據(jù)庫中保存的描述性信息的Id,此時,通過回復(fù)帶有該Id號的說明文字,即可以添加對素材的說明,從而解決了多媒體素材的自明性問題。多媒體素材與其描述性信息一一對應(yīng),描述性信息滿足關(guān)系型數(shù)據(jù)庫的特點,這樣,通過微信就實現(xiàn)了媒體素材與Web平臺的融合,借助手機(jī)、平板電腦等為素材的制造和發(fā)布帶來了極大的便利。
在翻轉(zhuǎn)課堂的自主探究式學(xué)習(xí)過程中,學(xué)習(xí)對象、學(xué)習(xí)場景、學(xué)習(xí)方式等都發(fā)生了很大的變化,突破了傳統(tǒng)的學(xué)生在書桌前看黑板、教科書或者參考書,用筆演算、記筆記等模式。比如在英語發(fā)音訓(xùn)練過程中,對學(xué)生發(fā)音進(jìn)行錄音,通過與標(biāo)準(zhǔn)發(fā)音對比,更能發(fā)現(xiàn)問題;又比如舞蹈課,錄像則是記錄排練過程的最好方式;有些實踐課程,需要我們動手制作,通過拍照提交學(xué)習(xí)成果就能避免信息丟失的問題;在學(xué)習(xí)的過程中,對于重要的場景,演講、講解、討論、個人靈感捕獲等等往往可以通過拍攝音頻視頻文件。
(2)學(xué)習(xí)過程有效跟蹤、實現(xiàn)學(xué)習(xí)自我管理與評價
在探索式學(xué)習(xí)的過程中,學(xué)生可以通過文字、圖片、音頻、視頻的形式記錄、保存學(xué)習(xí)內(nèi)容和學(xué)習(xí)成果,形成自己的學(xué)習(xí)素材,微信公眾平臺與本地的Web應(yīng)用服務(wù)器通過信息交互,能實現(xiàn)永久的存取素材。依據(jù)學(xué)習(xí)者的微信號在具體公眾平臺具有唯一Openld的特點,實現(xiàn)學(xué)習(xí)者與公眾平臺之間的雙向認(rèn)證;向公眾號發(fā)送的文字、圖片、音頻、視頻攜帶了Userld,即保存在本地服務(wù)器的素材與擁有者關(guān)聯(lián),素材可以被屬主進(jìn)行編輯、修改、刪除、備注操作,從而實現(xiàn)有效的管理。
本地Web服務(wù)器一方面是借助關(guān)系型數(shù)據(jù)庫,以關(guān)系模式存儲用戶的學(xué)習(xí)素材;另一方面則提供Web方式的管理和信息檢索,實現(xiàn)了手機(jī)、Pad等移動終端和桌面應(yīng)用同步共享一個信息系統(tǒng),發(fā)揮各自的長處。這樣設(shè)計的目的在于:學(xué)習(xí)者能方便的管理、跟蹤自己的學(xué)習(xí);構(gòu)建學(xué)習(xí)圈,方便進(jìn)行協(xié)作學(xué)習(xí);自覺形成評價數(shù)據(jù)。
(3)保障機(jī)制
可控的權(quán)限管理機(jī)制,由于公眾號與關(guān)注者微信號實現(xiàn)了雙向認(rèn)證,發(fā)送的素材攜帶了發(fā)送者的Openld,每個用戶的每個素材均有Id號。這樣,公眾平臺、關(guān)注者、素材之間就一一對應(yīng),在關(guān)系型數(shù)據(jù)庫的支持下,就能方便的實現(xiàn)權(quán)限管理。
同一個微信公眾平臺的關(guān)注者,在實名認(rèn)證的前提下,容易構(gòu)建學(xué)習(xí)圈,Web方式下的資源共享也有利于這種學(xué)習(xí)圈的形成和維系。在Web方式下,可以共享出自己的學(xué)習(xí)素材,也可以搜索、收藏他人的學(xué)習(xí)素材,并且可以就某一問題創(chuàng)建討論組等等,Web3.0的最新技術(shù)均適用于此。endprint
手機(jī)、Pad等移動設(shè)備成為了學(xué)習(xí)過程中貼身學(xué)習(xí)工具,且其固有的屬性無法被電腦等其它設(shè)備取代,比如手機(jī)中內(nèi)置的傳感器裝置。學(xué)習(xí)過程沉淀在Web系統(tǒng)中,便于學(xué)習(xí)過程自我管理與維護(hù),而不是僅僅復(fù)習(xí)筆記,通過時間的積累,有助于構(gòu)建知識地圖,并實現(xiàn)自我完善。同時,也記錄了學(xué)生學(xué)習(xí)軌跡,對學(xué)習(xí)過程的有效跟蹤,為個性化輔導(dǎo)提供了依據(jù),在翻轉(zhuǎn)課堂的討論環(huán)節(jié)更具針對性;也能了解在團(tuán)隊協(xié)作學(xué)習(xí)過程中各學(xué)生的角色及其作用,為學(xué)習(xí)成績的評價提供依據(jù)。
2.面向翻轉(zhuǎn)課堂的微信公眾平臺解決方案
2.1應(yīng)用體系結(jié)構(gòu)
系統(tǒng)的體系結(jié)構(gòu)是多層結(jié)構(gòu),第一層是數(shù)據(jù)庫服務(wù)器,第二層是Web服務(wù)器,第三層是微信服務(wù)器,用戶通過智能設(shè)備與公眾平臺交互實現(xiàn)與微信服務(wù)器交互,PC瀏覽器與Web服務(wù)器交互,核心是自建的Web服務(wù)器。
2.2微信公眾平臺接口功能實現(xiàn)關(guān)鍵點
(1)Web服務(wù)器與公眾號之間的相互認(rèn)證
通過在微信公眾平臺(https://mp.weixin.qq.com/)的服務(wù)器地址欄里設(shè)置應(yīng)用服務(wù)器處理頁面,在微信公眾平臺設(shè)置的應(yīng)用ID、應(yīng)用密鑰、令牌、消息加解密密鑰作為應(yīng)用服務(wù)器入口文件eheekSignature函數(shù)的參數(shù),進(jìn)行應(yīng)用服務(wù)器與微信服務(wù)器之間的雙向認(rèn)證。
(2)個人微信號和公眾平臺之間的認(rèn)證
每個微信號在具體的公眾號平臺對應(yīng)唯一的一個OpenlD,用戶在關(guān)注公眾平臺時公眾平臺響應(yīng)一個驗證碼給用戶,用戶憑此驗證碼以Web表單的形式在PC上完善自己的個人身份信息,即完成平臺的注冊,系統(tǒng)管理員以Web表單的形式在PC上審核注冊信息。在實際使用時,用戶在公眾號平臺上的身份驗證借助該用戶的微信號登錄驗證完成,無需額外驗證,通過Web管理自己向公眾平臺發(fā)送的素材,則需要進(jìn)行身份驗證,這樣就實現(xiàn)了關(guān)注者賬號、公眾號、Web應(yīng)用三者之間的相互認(rèn)證。
(3)獲取用戶OpenID
實現(xiàn)關(guān)注者賬號的激活、審核,關(guān)注者賬號實現(xiàn)Web驗證,它們的核心問題是要解決OpenlD,當(dāng)用戶向公眾平臺發(fā)送文本信息時,實際是向服務(wù)器發(fā)送了一個POST請求。數(shù)據(jù)基于XML格式,標(biāo)簽有ToUserName、FromUserName、CreateTime、MsgType、Content,分別表示開發(fā)者微信號、發(fā)送者微信號、消息創(chuàng)建時間、消息類型、發(fā)送的內(nèi)容。在程序中獲取FromUserName的值即得用戶的OpenlD。
(4)自定義菜單
在基于公眾平臺的二次開發(fā)中,自定義菜單主要支持上報地理位置信息、照片發(fā)送,支持從相冊選擇照片或者拍攝照片發(fā)送、語音上傳、語音識別、視頻拍攝、位置信息發(fā)送、從服務(wù)器下載媒體等。
自定義菜單分三步:第一步,獲取令牌access token;第二步,定義JSON字符串,描述菜單;第三步,向服務(wù)器POST該JSON,鑒于獲取令牌的代碼在微信公眾平臺的特定性。下面完整給出方法。
事件推送到微信公眾平臺的后臺是作為事件(Event)來處理的,如果是上報地理位置信息,事件類型為LOCATION,可以獲取到地理位置維度(Latitude)、地理位置經(jīng)度(Longitude)、地址位置精度(Precision)。自定義菜單的事件類型是CLICK,點擊菜單跳轉(zhuǎn)鏈接時的事件是View在程序中,通過SpostObi-Msg Type可以獲取到類型值even。通過Sobieet->Event可以獲取到事件的類型,比如LOCATION,CLICK,VIEW等。在JSON中,如果是自定義的點擊菜單,則要指定type、name和key三個參數(shù),在程序響應(yīng)時,通過obieet->EventKey獲取到設(shè)定的key值,即公眾平臺能感知到點擊了哪個菜單;如果是跳轉(zhuǎn)型的,則要指定type、name和url三個參數(shù),在點擊菜單時,直接跳轉(zhuǎn)到url指定的頁面。特別要指出,在最新的V6,1版的微信中,發(fā)送位置的事件類型為:location select,發(fā)送圖片的事件類型為pie photo or album,支持拍照或者從相冊選擇。
2.3擴(kuò)展功能:Web管理
該微信公眾平臺的設(shè)計,最突出的特色在于依賴微信公眾平臺的同時結(jié)合了Web系統(tǒng),兩者共一個關(guān)系型的數(shù)據(jù)持久層,相互協(xié)作而又保持邏輯的一致性。
要實現(xiàn)的關(guān)鍵點有兩個:關(guān)注者賬號管理,媒體素材管理。
當(dāng)用戶關(guān)注公眾平臺時,系統(tǒng)后臺檢測該Openid在本平臺是否有記錄,如果尚未記錄,則向user表插入一條記錄,保存userid和user openid字段的值,其中userid是user表的主鍵,user openid即Openid,形如ohXqXJii96 vx28ElnNbuGBnGHk的字符串。Openid在user表中是唯一的,可以作為user表的主鍵,本設(shè)計中增加了userid作為主鍵的目的是在應(yīng)用過程中公眾平臺與用戶交互信息更有友好。然后響應(yīng)一個信息給關(guān)注者,提示用指定的格式設(shè)置用戶名和密碼,比如#1#{u}#{password},這樣就可以更新userid為1的這條記錄,指定USer name為{userName}設(shè)定的值,user pwd為{password}設(shè)定的值。這樣,該用戶就在該公眾平臺設(shè)置了自己的賬號信息,在PC上可以通過web表單進(jìn)一步完善用戶信息。
管理下載的媒體,通常,各類媒體,包括文本,在微信公眾平臺只保留5天,本方案需要永久保留圖片、音頻、視頻文件,下載多媒體文件分三步。
(1)調(diào)用getAccessToken()方法驗證身份,返回值賦給$access token;
(2)拼接url,在微信提供的URL中發(fā)送access token和&media id屬性;endprint
(3)編程實現(xiàn)下載,Snoopy是個值得推薦的組件。對于下載的組件可以通過uuid來命名文件,解決文件重名的問題,進(jìn)而把文件的描述性屬性保存到數(shù)據(jù)庫。
在本地Web服務(wù)器保存了多媒體素材,就可以通過Web編程實現(xiàn)管理與分享。用戶通過對多媒體素材的精細(xì)化權(quán)限控制,可以分享、收藏相關(guān)材料,跟蹤個人學(xué)習(xí)軌跡構(gòu)建個人學(xué)習(xí)空間。經(jīng)過一定的數(shù)據(jù)積累,可以形成基于個性化推薦的智慧型學(xué)習(xí)系統(tǒng),對于教師、學(xué)校等教育工作做而言,分析這個全程跟蹤了學(xué)習(xí)個體的教育數(shù)據(jù)對改進(jìn)教育意義重大。
3.一個例子
結(jié)合應(yīng)用實際,開發(fā)了一個基于微信公眾平臺的應(yīng)用,通過抽象,保留核心的屬性,得到系統(tǒng)的E-R圖如圖1所示。
系統(tǒng)核心E-R圖包括兩個實體和一個聯(lián)系:user(微信公眾平的關(guān)注者)實體和content(媒體素材)實體,這兩個實體之間是一對多的關(guān)系,并得到“用戶收集的媒體”這個聯(lián)系,其它屬性根據(jù)業(yè)務(wù)實際的需要,可以合理擴(kuò)展。并且可以增加對媒體的評論等其它實體,這些都依據(jù)實際需要而定。
業(yè)務(wù)流程,本應(yīng)用包括客戶微信號與公眾微信號之間的信息交換和共享的基于Web形式的應(yīng)用,這兩者共享一個數(shù)據(jù)庫,包括數(shù)據(jù)庫中表的記錄和Web中的用戶媒體文件。微信號與公眾平臺之間的信息流轉(zhuǎn)流程如圖2所示。
用戶發(fā)送的文本直接保存在數(shù)據(jù)庫,圖片、音頻、視頻的相關(guān)屬性保存在數(shù)據(jù)庫的同時,媒體文件也存儲在了Web應(yīng)用服務(wù)器。Web方面的開發(fā)在此不作敘述。
當(dāng)用戶關(guān)注了公眾號后,可以用微信與公眾平臺交互信息,比如向公眾平臺發(fā)送圖片,可以從相冊選擇,也可以拍攝照片,當(dāng)上傳成功后,公眾平臺會回復(fù)類似“您的圖片已經(jīng)保存,您可以回復(fù)‘#62#說明文字以添加對圖片的說明,方便查詢。您可以登錄http://xxx.duapp.com/weixin/images/管理您的圖片”。其中62為該媒體素材在數(shù)據(jù)庫中記錄的contentld,此時,回復(fù)群62#三角函數(shù)筆記,即更新了該素材的描述信息,更新成功后,公眾平臺響應(yīng)“您已經(jīng)對圖片添加說明:三角函數(shù)筆記”。
通過PC的瀏覽器管理用戶自己的素材,打開Web應(yīng)用服務(wù)器的網(wǎng)址,以素材添加的時間逆序顯示該素材的縮略圖,點擊該縮略圖可以查看原圖及其說明。
4.結(jié)語
本文研究了微信公眾平臺在翻轉(zhuǎn)課堂中的技術(shù)支撐作用,結(jié)合教改實際,開發(fā)了基于微信公眾平臺與Web3.0相結(jié)合的應(yīng)用系統(tǒng),通過8000余名注冊學(xué)生、涉及6個專業(yè)、72門課程為期一個學(xué)期的試用,系統(tǒng)運行平穩(wěn),在實際翻轉(zhuǎn)課堂的實施中發(fā)揮了良好的作用。endprint