高 翔 黃文康 唐孫茹
(廣西中醫(yī)藥大學(xué)公共衛(wèi)生與管理學(xué)院 (廣西中醫(yī)藥大學(xué)現(xiàn)代教育技術(shù)與信息中心 南寧 530200) 南寧 530200)
民族醫(yī)藥信息化一直是民族醫(yī)藥推廣的一個重要議題。民族醫(yī)藥的信息資源有別于其他學(xué)科,具有數(shù)據(jù)量龐大且關(guān)系極為復(fù)雜的獨(dú)特特征,只有經(jīng)過有效規(guī)劃、組織和獲取,才能成為有效、有用的資源。隨著科技的發(fā)展,中醫(yī)藥民族醫(yī)藥信息資源開發(fā)與利用成為各高校和科研機(jī)構(gòu)研究的重要內(nèi)容。目前,從國家中醫(yī)藥管理局到各大中醫(yī)藥院校及各省、市、自治區(qū)中醫(yī)醫(yī)院都已意識到利用移動互聯(lián)網(wǎng)對中醫(yī)藥傳統(tǒng)醫(yī)藥知識進(jìn)行推廣的必要性,紛紛建立相關(guān)中醫(yī)藥信息查詢平臺,很大程度推動中醫(yī)藥知識和中醫(yī)藥文化在民眾中的普及。然而,由于傳統(tǒng)互聯(lián)網(wǎng)對設(shè)備和場所有一定的要求,使用者無法隨時隨地地獲取信息。民族醫(yī)藥更因其數(shù)據(jù)分散稀缺珍貴,其信息化傳播較為滯后,在移動互聯(lián)網(wǎng)應(yīng)用方面民族醫(yī)藥遠(yuǎn)遠(yuǎn)落后于社會其他信息的傳播,基本處于未開發(fā)利用的階段,也從一方面制約了民族醫(yī)藥在人民群眾中的普及推廣。
最近5年移動互聯(lián)網(wǎng)獲得巨大的發(fā)展。各政府部門、媒體、企業(yè)紛紛選擇通過微信公眾平臺作為其信息發(fā)布、查詢的手段。微信基于位置的服務(wù)(Location Based Service,LBS)應(yīng)用上手簡單、能夠隨時隨地獲取信息。除其本身提供的后臺操作外,微信公眾平臺所提供的開發(fā)者選項(xiàng)可以為用戶提供各種實(shí)用信息。現(xiàn)階段民族醫(yī)藥的相關(guān)資料多被保存在專業(yè)的科研機(jī)構(gòu),不僅中醫(yī)藥愛好者需要一定的途徑才能學(xué)習(xí)、應(yīng)用相關(guān)知識,一般民眾更難接觸到。要想發(fā)展與推廣民族醫(yī)藥,移動信息平臺是其最優(yōu)選擇。廣西中藥材、壯藥材資源非常豐富,是全國藥材資源4大產(chǎn)區(qū)之一,居全國第3位,而壯、瑤、苗等少數(shù)民族特色醫(yī)療,更是中醫(yī)藥產(chǎn)業(yè)發(fā)展的重要補(bǔ)充?;诖?,本文依托廣西中醫(yī)藥大學(xué)豐富的民族醫(yī)藥信息資源,利用微信LBS應(yīng)用開放代碼,設(shè)計(jì)和實(shí)現(xiàn)一個功能較為完整、使用較為方便的民族醫(yī)藥移動信息平臺。
采用彈性計(jì)算服務(wù)(Eleastic Compute Service,ECS)云平臺作后臺服務(wù)器,依托移動互聯(lián)網(wǎng)微信公眾平臺技術(shù),利用其提供的開發(fā)者選項(xiàng)以及民族醫(yī)藥的數(shù)據(jù)庫,通過后臺代碼開發(fā)一個完全適宜民族醫(yī)藥的查詢服務(wù)移動信息平臺。除一般的信息推送功能外,該平臺具有智能應(yīng)答功能。用戶通過輸入關(guān)鍵字即可獲取相關(guān)信息推送,進(jìn)而查詢到民族醫(yī)藥的相關(guān)知識。同時還可以借助藥物的不同分類來查詢藥性、藥理以及相關(guān)圖片;通過藥性查尋相關(guān)藥物等;利用微信LBS特點(diǎn)開發(fā)基于位置的地域特產(chǎn)民族藥查詢。該平臺為學(xué)習(xí)者開辟去專業(yè)科研機(jī)構(gòu)或者圖書館查詢珍貴的民族醫(yī)藥資料之外另一更加便捷的學(xué)習(xí)方式,這將使廣大的學(xué)習(xí)者能夠隨時隨地了解他們需要的中醫(yī)藥民族醫(yī)藥知識,提高學(xué)習(xí)的實(shí)效性、便利性和覆蓋性。設(shè)計(jì)思路:(1)通過文獻(xiàn)研究和實(shí)際調(diào)查分析微信公眾平臺開發(fā)者選項(xiàng),探尋可以實(shí)現(xiàn)的具體功能。(2)依托廣西中醫(yī)藥大學(xué)民族醫(yī)藥資源,搜集并擴(kuò)展已有民族醫(yī)藥數(shù)據(jù)庫;依據(jù)民族醫(yī)藥各項(xiàng)特點(diǎn),建立數(shù)據(jù)庫基本數(shù)據(jù)編碼標(biāo)準(zhǔn)。(3)設(shè)計(jì)平臺的總體系統(tǒng)架構(gòu)并設(shè)置各功能部件,通過PHP實(shí)現(xiàn)微信公眾平臺開發(fā)者后臺系統(tǒng)二次開發(fā)。(4)使用測試工具測試平臺代碼的功能和性能,進(jìn)行多項(xiàng)測試和改進(jìn)。
一是實(shí)用性。應(yīng)能夠最大限度滿足用戶的需求,包括各項(xiàng)功能對數(shù)據(jù)的處理與響應(yīng)的時間,使平臺的實(shí)用性得到保證。二是可維護(hù)性與擴(kuò)展性。平臺各項(xiàng)功能設(shè)計(jì)應(yīng)確保組織化和模塊化,使其更易于維護(hù)和擴(kuò)展??紤]未來平臺規(guī)模增大的可能,也要保持良好的擴(kuò)展性。三是安全性與可靠性。通過設(shè)計(jì)考慮阻止非法入侵和數(shù)據(jù)庫備份的策略來確保數(shù)據(jù)的安全性和可靠性。四是用戶訪問便捷性。運(yùn)用PHP對微信公眾平臺進(jìn)行二次開發(fā),采用菜單模式供用戶訪問,允許用戶方便快捷地進(jìn)行功能切換,實(shí)現(xiàn)便于使用和學(xué)習(xí)的的訪問。五是數(shù)據(jù)庫再開發(fā)和可移植性。設(shè)計(jì)要能夠最大限度地滿足未來開發(fā)和移植的需要。
平臺主要有4大模塊。(1)民族藥名稱查詢模塊。通過輸入需要查找的民族藥的名稱,獲取該藥材的詳細(xì)信息(包含藥材名稱、描述、療效、特產(chǎn)地等)。(2)基于LBS技術(shù)的特有民族藥查詢模塊。通過LBS技術(shù)獲取用戶所在區(qū)域,在將區(qū)域地址反饋給用戶的同時顯示該區(qū)域特有民族藥材。(3)對癥民族藥物查詢模塊。通過輸入的病癥特點(diǎn),在后臺數(shù)據(jù)庫中搜索針對該病癥的民族藥,將民族藥材的相關(guān)信息通過平臺傳達(dá)給用戶。(4)混合查詢功能??梢酝瑫r分析用戶輸入的區(qū)域地址和病癥,在數(shù)據(jù)庫中匹配患者疾病所需藥材的產(chǎn)地并提示用戶在最近獲取相關(guān)民族藥材,使平臺查詢的靈活性得到很大提高。
主要由藥材數(shù)據(jù)表和菜單表組成。藥材數(shù)據(jù)表主要用于存儲民族藥材的相關(guān)信息,為用戶通過該平臺進(jìn)行搜索提供服務(wù)。用戶通過該平臺檢索數(shù)據(jù)時,菜單表定位用戶在菜單中所在的位置。其結(jié)構(gòu),見表1,表2。
表1 藥材數(shù)據(jù)表結(jié)構(gòu)
表2 菜單表結(jié)構(gòu)
圖1 平臺總體流程
具體流程:(1)發(fā)送關(guān)鍵詞——選擇菜單——名稱查詢——輸入所需藥材的名稱——藥材名稱查詢——用戶獲取藥材信息。(2)發(fā)送關(guān)鍵詞-選擇菜單-地址搜索-輸入所需藥材的地理位置——地址搜索——用戶獲取信息。(3)發(fā)送關(guān)鍵詞——選擇菜單——病癥查詢——輸入相關(guān)病癥——病癥查詢——獲得藥材信息。(4)發(fā)送關(guān)鍵詞——選擇菜單——聯(lián)合檢索——輸入所需藥物的信息和產(chǎn)地——聯(lián)合查詢——獲得附近區(qū)域的藥物信息。
該平臺為用戶提供民族醫(yī)藥的相關(guān)信息的查詢服務(wù)。用戶通過平臺輸入關(guān)鍵詞,后臺根據(jù)關(guān)鍵詞在數(shù)據(jù)庫中檢索相關(guān)藥物信息。如果有相關(guān)的民族藥物信息,會返回并直接發(fā)送給微信公眾號的用戶。如果沒有則提示用戶輸入錯誤或沒有相關(guān)信息,允許用戶重新輸入其他正確關(guān)鍵詞名稱進(jìn)行查詢,從而提高民族藥材查詢的精度,滿足用戶的使用需求。
LBS技術(shù)通過百度開發(fā)者平臺的定位功能來獲取用戶所處位置信息,本平臺使用getProvince()函數(shù)調(diào)用LBS技術(shù)從而獲取用戶所在的區(qū)域。平臺獲取用戶位置后,通過藥材數(shù)據(jù)表中的藥材產(chǎn)地?cái)?shù)據(jù)來查詢用戶所在區(qū)域的藥材,將相關(guān)信息顯示在微信公眾平臺上。getProvince()函數(shù)獲取用戶地址的核心代碼如下:
$url="http://api.map.baidu.com/geocoder/v2/?callback=renderReverse&location={$j},{$w}&output=xml&pois=0&ak=AK";//百度開發(fā)者平臺
$fa=file_get_contents($url);
$f=simplexml_load_string($fa);//讀取XML
$local=$f->result->addressComponent->province;//province省名
$thing="";
while($row=mysql_fetch_array($result)){
$thing="{$thing}"."{$row[name]}";
}
$contentStr="您當(dāng)前所在地區(qū)為:{$local},本地特產(chǎn)有:{$thing}";
該平臺采用菜單模式,用戶可以直接根據(jù)需求在菜單選擇相應(yīng)的功能,操作簡單方便。平臺根據(jù)用戶的消息以便來確認(rèn)每次對菜單的操作,保證能夠正確查詢到需要的信息,避免因不了解平臺功能可能出現(xiàn)的操作錯誤。定位功能通過記錄用戶每一次輸入內(nèi)容并將其與菜單表中相關(guān)信息進(jìn)行匹配來實(shí)現(xiàn)。平臺還為用戶提供每一步操作的提示,幫助用戶正常使用相關(guān)功能。
結(jié)合用戶發(fā)送的病癥信息和獲取的位置信息兩個關(guān)鍵詞在數(shù)據(jù)庫中查詢符合用戶需求的特定藥材,通過獲取用戶所輸入病癥文本和位置數(shù)據(jù),采用SQL語言中的雙模糊查詢語句在數(shù)據(jù)庫中匹配相關(guān)信息,將信息通過微信公眾平臺傳達(dá)給用戶,從而實(shí)現(xiàn)混合查詢的功能。
作為目前最流行的移動信息平臺,微信公眾平臺為開發(fā)人員提供開發(fā)者選項(xiàng),開發(fā)者可以進(jìn)行二次開發(fā)。本平臺采用PHP語言作為二次開發(fā)工具,阿里云作為后臺云服務(wù)器。通過基于微信公眾號的民族醫(yī)藥移動信息平臺的開發(fā),廣大學(xué)習(xí)者可以方便快捷地了解所需要的民族醫(yī)藥知識。在平臺使用之前進(jìn)行測試,實(shí)現(xiàn)預(yù)期需求的功能。目前,該微信公眾號已初步在廣西中醫(yī)藥大學(xué)壯醫(yī)藥、中醫(yī)等民族醫(yī)藥相關(guān)專業(yè)進(jìn)行測試,基本達(dá)到預(yù)期目標(biāo)。其功能頁面,見圖2。
圖2 公眾號平臺功能頁面
移動平臺實(shí)現(xiàn)民族醫(yī)藥信息平臺的系統(tǒng)化、標(biāo)準(zhǔn)化和自動化。創(chuàng)新性地利用微信公眾號的LBS功能對各種民族藥物的區(qū)域分布進(jìn)行統(tǒng)計(jì),滿足用戶對響應(yīng)時間的要求,簡便快捷;完成查詢功能,使用戶可以隨時隨地進(jìn)行診間、查詢;利用微信平臺的定位功能準(zhǔn)確獲取用戶位置;滿足用戶對區(qū)域內(nèi)民族醫(yī)藥信息查詢的需求。
當(dāng)前民族醫(yī)藥資源的收集和挖掘仍然需要盡力充實(shí)完善。需要咨詢更多的民族醫(yī)學(xué)專家,了解民族醫(yī)學(xué)數(shù)據(jù)的建立標(biāo)準(zhǔn),特別是一些民族藥物的起源和獨(dú)特療法更需要從當(dāng)?shù)氐拿褡遽t(yī)生那里了解,從而建立更完善的民族藥物數(shù)據(jù)庫,為民族醫(yī)藥的廣泛傳播做出貢獻(xiàn)。
基于微信定位服務(wù)的民族醫(yī)藥移動信息平臺是一款方便簡單的移動互聯(lián)網(wǎng)應(yīng)用,通過微信公眾號查詢可以方便快捷地獲取民族醫(yī)藥信息。過去公眾一般通過傳統(tǒng)數(shù)據(jù)庫或圖書館獲取民族藥材信息,方式單一,部分應(yīng)用操作要求用戶具備一定的使用水平?;谖⑿殴娞柕拿褡遽t(yī)藥移動信息平臺拓展原有信息傳播的方式,體現(xiàn)新型傳播媒介的靈活性,補(bǔ)充民族醫(yī)藥移動互聯(lián)網(wǎng)應(yīng)用的方式和途徑。同時,民族醫(yī)藥移動信息平臺采用標(biāo)準(zhǔn)化的格式表達(dá)民族醫(yī)藥的藥效、對癥和藥理,既體現(xiàn)科學(xué)性又增強(qiáng)實(shí)用性。將民族藥物的傳統(tǒng)功效、有效成分、現(xiàn)代藥理學(xué)、醫(yī)學(xué)技術(shù)等信息相結(jié)合。為民族醫(yī)藥的實(shí)際應(yīng)用、持續(xù)學(xué)習(xí)和知識挖掘提供了便利,同時促進(jìn)了中國民族醫(yī)藥的推廣。