朱小蓮 王瑞宗
(廈門(mén)軌道建設(shè)發(fā)展集團(tuán)有限公司, 361021, 廈門(mén)∥第一作者, 高級(jí)工程師)
隨著城鎮(zhèn)化的發(fā)展和居民出行需求的增加,各個(gè)城市紛紛加快了城市軌道交通發(fā)展的速度,城市軌道交通逐漸成為城市引導(dǎo)綠色低碳出行的骨干交通方式之一。2017年12月31日,廈門(mén)地鐵1號(hào)線正式開(kāi)通試運(yùn)營(yíng),全線所有TVM(自動(dòng)售票機(jī))、BOM(半自動(dòng)售票機(jī))均支持互聯(lián)網(wǎng)支付購(gòu)票,同時(shí)也支持使用廈門(mén)地鐵APP刷碼進(jìn)出站。由于互聯(lián)網(wǎng)支付購(gòu)票和APP刷碼乘車(chē)較為便捷,近年來(lái)的使用量逐漸增多,陸續(xù)有多家單位希望接入廈門(mén)地鐵互聯(lián)網(wǎng)票務(wù)。然而,由于第三方單位的方案均通過(guò)各自單位自己生成的二維碼方式過(guò)閘,若要應(yīng)用和適配第三方單位的二維碼,將導(dǎo)致地鐵互聯(lián)網(wǎng)票務(wù)系統(tǒng)變得極為復(fù)雜。因此,需要對(duì)廈門(mén)地鐵的互聯(lián)網(wǎng)票務(wù)系統(tǒng)進(jìn)行規(guī)劃,并建設(shè)一套統(tǒng)一的互聯(lián)網(wǎng)票務(wù)云平臺(tái),以便于處理互聯(lián)網(wǎng)業(yè)務(wù)及第三方應(yīng)用的接入。
本文針對(duì)地鐵互聯(lián)網(wǎng)票務(wù)系統(tǒng)如何統(tǒng)一規(guī)劃建設(shè)并開(kāi)放給第三方應(yīng)用接入的問(wèn)題,通過(guò)統(tǒng)一規(guī)范和自主發(fā)碼等方法,成功使支付寶、微信和銀聯(lián)等第三方單位將各自開(kāi)發(fā)的APP接入廈門(mén)地鐵互聯(lián)網(wǎng)票務(wù)云平臺(tái)中,實(shí)現(xiàn)了廈門(mén)地鐵互聯(lián)網(wǎng)全平臺(tái)購(gòu)票、檢票功能的共用,為乘客的便捷出行提供多樣化的選擇。
互聯(lián)網(wǎng)票務(wù)云平臺(tái)在廈門(mén)地鐵APP電子票務(wù)、設(shè)備在線支付、對(duì)賬結(jié)算和管理后臺(tái)等現(xiàn)有模塊基礎(chǔ)上,增加多企業(yè)接入管理模式,能夠支持多商戶(hù)號(hào)的接入配置管理、商戶(hù)的業(yè)務(wù)運(yùn)營(yíng)及授權(quán)管理,以及接入調(diào)試。此外,所增加的多企業(yè)接入管理模式配備統(tǒng)一發(fā)碼、計(jì)費(fèi)、清算及第三方商戶(hù)管理等功能模塊。廈門(mén)地鐵APP電子票務(wù)模塊主要處理廈門(mén)地鐵APP上電子單程票的相關(guān)業(yè)務(wù)及地鐵運(yùn)營(yíng)服務(wù)等相關(guān)功能,包括購(gòu)票、電子單程票二維碼、更改終點(diǎn)、超時(shí)補(bǔ)繳、電子單程票更新、站點(diǎn)信息和意見(jiàn)反饋等。設(shè)備在線支付模塊主要處理設(shè)備在線支付相關(guān)業(yè)務(wù),包括TVM互聯(lián)網(wǎng)支付購(gòu)票、BOM退票及退款。對(duì)賬結(jié)算模塊主要負(fù)責(zé)與支付平臺(tái)、ACC(自動(dòng)售檢票清分中心)系統(tǒng)、AFC(自動(dòng)售檢票)系統(tǒng)終端設(shè)備進(jìn)行對(duì)賬。管理后臺(tái)模塊主要用于用戶(hù)及角色管理、站點(diǎn)信息管理、公告管理、數(shù)據(jù)查詢(xún)和對(duì)賬統(tǒng)計(jì)報(bào)表。統(tǒng)一發(fā)碼模塊主要負(fù)責(zé)生成二維碼數(shù)據(jù)和管理生成數(shù)據(jù)結(jié)果,并返回給第三方APP系統(tǒng)。計(jì)費(fèi)模塊主要負(fù)責(zé)接收AFC系統(tǒng)發(fā)送的原始交易數(shù)據(jù),根據(jù)進(jìn)出站交易與計(jì)費(fèi)規(guī)則計(jì)算交易金額,并生成賬單。第三方商戶(hù)管理模塊主要負(fù)責(zé)第三方商戶(hù)系統(tǒng)的接入管理?;ヂ?lián)網(wǎng)票務(wù)云平臺(tái)功能規(guī)劃示意圖如圖1所示。
圖1 互聯(lián)網(wǎng)票務(wù)云平臺(tái)功能規(guī)劃示意圖
第三方單位通過(guò)統(tǒng)一的標(biāo)準(zhǔn)化接口接入互聯(lián)網(wǎng)票務(wù)云平臺(tái)。當(dāng)乘客在第三方APP上領(lǐng)取乘車(chē)碼時(shí),由第三方APP向互聯(lián)網(wǎng)票務(wù)云平臺(tái)進(jìn)行申請(qǐng),互聯(lián)網(wǎng)票務(wù)云平臺(tái)按照二維碼生成規(guī)范統(tǒng)一生成二維碼,下發(fā)至第三方APP系統(tǒng),第三方APP系統(tǒng)依據(jù)所接收到的二維碼信息增加第三方商戶(hù)信息后,生成乘車(chē)碼,憑乘車(chē)碼即可進(jìn)出車(chē)站?;ヂ?lián)網(wǎng)票務(wù)云平臺(tái)主要業(yè)務(wù)流程示意圖如圖2所示。
注:0.1、0.2代表首次使用注冊(cè)和授權(quán)免密(可認(rèn)為是一次性操作),后續(xù)每次乘車(chē)直接從流程1開(kāi)始發(fā)起流程即可,無(wú)需再次注冊(cè);LCC為線路中央計(jì)算機(jī);SC為車(chē)站計(jì)算機(jī);AGM為自動(dòng)檢票機(jī)。
互聯(lián)網(wǎng)票務(wù)云平臺(tái)采用“雙活”模式,即設(shè)計(jì)兩個(gè)節(jié)點(diǎn)同時(shí)運(yùn)營(yíng)的電子票務(wù)業(yè)務(wù),并通過(guò)優(yōu)化互聯(lián)網(wǎng)網(wǎng)絡(luò)入口、優(yōu)化運(yùn)維資源、數(shù)據(jù)中心獨(dú)立部署等方式,提供兩個(gè)節(jié)點(diǎn)共享數(shù)據(jù)庫(kù)和緩存等資源數(shù)據(jù),強(qiáng)化平臺(tái)的“雙活”能力。當(dāng)任一節(jié)點(diǎn)發(fā)生故障時(shí),另一節(jié)點(diǎn)可獨(dú)立接管票務(wù)業(yè)務(wù)。“雙活”模式能夠提升廈門(mén)市城市軌道交通互聯(lián)網(wǎng)電子票務(wù)平臺(tái)的可靠性和穩(wěn)定性。互聯(lián)網(wǎng)票務(wù)云平臺(tái)網(wǎng)絡(luò)拓?fù)鋱D如圖3所示。
圖3 互聯(lián)網(wǎng)票務(wù)云平臺(tái)網(wǎng)絡(luò)拓?fù)鋱D
節(jié)點(diǎn)1和節(jié)點(diǎn)2為同等配置的兩套系統(tǒng),分別部署有相關(guān)數(shù)量的服務(wù)器、網(wǎng)絡(luò)設(shè)備和存儲(chǔ)設(shè)備,同時(shí)提供電子票務(wù)業(yè)務(wù)服務(wù),兩個(gè)節(jié)點(diǎn)均具有獨(dú)立接管業(yè)務(wù)的能力。互聯(lián)網(wǎng)運(yùn)營(yíng)商專(zhuān)線分別建立共有IP(互聯(lián)網(wǎng)協(xié)議)路由機(jī)制,可以實(shí)現(xiàn)毫秒級(jí)切換。在正常情況下,兩條專(zhuān)線的流量負(fù)載均衡,分別流向兩臺(tái)出口設(shè)備,當(dāng)某一條專(zhuān)線中斷時(shí),全部流量由另一專(zhuān)線進(jìn)行轉(zhuǎn)發(fā),其IP不變,業(yè)務(wù)也不中斷。運(yùn)維區(qū)域配置有安全審計(jì)系統(tǒng)、安全運(yùn)維審計(jì)系統(tǒng)(堡壘機(jī))、IT(信息技術(shù))運(yùn)維監(jiān)控系統(tǒng)、網(wǎng)頁(yè)防篡改系統(tǒng)、日志審計(jì)系統(tǒng)和殺毒軟件等。數(shù)據(jù)中心獨(dú)立部署,避免應(yīng)用服務(wù)與數(shù)據(jù)中心服務(wù)網(wǎng)絡(luò)和磁盤(pán)讀寫(xiě)相互搶占資源,影響對(duì)外業(yè)務(wù)服務(wù)?;ヂ?lián)網(wǎng)票務(wù)云平臺(tái)與AFC系統(tǒng)之間部署兩臺(tái)防火墻,防火墻同時(shí)接入節(jié)點(diǎn)1和節(jié)點(diǎn)2,用于AFC系統(tǒng)的區(qū)域隔離。
互聯(lián)網(wǎng)票務(wù)云平臺(tái)的安全設(shè)計(jì)主要從信息安全等級(jí)、云平臺(tái)與商戶(hù)后臺(tái)之間API(應(yīng)用程序編程接口)交互接口的安生性及容災(zāi)備份機(jī)制等方面進(jìn)行設(shè)計(jì)。
互聯(lián)網(wǎng)票務(wù)云平臺(tái)承載著廈門(mén)地鐵互聯(lián)網(wǎng)支付及購(gòu)票業(yè)務(wù),涉及支付、計(jì)費(fèi)和結(jié)算等重要功能。若信息系統(tǒng)遭到破壞,將影響地鐵互聯(lián)網(wǎng)電子票務(wù)系統(tǒng)的正常運(yùn)營(yíng),損害社會(huì)秩序和公共利益,因此在其上線前便完成了三級(jí)信息安全等級(jí)保護(hù)備案及評(píng)審工作。
互聯(lián)網(wǎng)票務(wù)第三方接口的安全性主要圍繞時(shí)間戳和簽名展開(kāi)設(shè)計(jì),保證交互接口的數(shù)據(jù)不被篡改和重復(fù)調(diào)用。用戶(hù)每次請(qǐng)求都帶上當(dāng)前時(shí)間的時(shí)間戳,服務(wù)端接收到時(shí)間戳后與當(dāng)前時(shí)間進(jìn)行比對(duì),如果時(shí)間差大于一定時(shí)間,則認(rèn)為該請(qǐng)求失效。同時(shí),將該請(qǐng)求參數(shù)用摘要算法運(yùn)算出摘要信息,然后用非對(duì)稱(chēng)加密算法對(duì)摘要信息進(jìn)行加密,加密后的結(jié)果即本次請(qǐng)求的簽名。服務(wù)端接收到簽名后,以相同規(guī)則、相同算法進(jìn)行驗(yàn)簽,若請(qǐng)求方的摘要信息與服務(wù)端的摘要信息不一樣,則驗(yàn)簽失敗。
互聯(lián)網(wǎng)票務(wù)云平臺(tái)應(yīng)用服務(wù)采用集群機(jī)制,網(wǎng)絡(luò)安全設(shè)備采用雙冗余結(jié)構(gòu),建設(shè)有異地?cái)?shù)據(jù)備份中心,并在本地設(shè)計(jì)兩個(gè)節(jié)點(diǎn)同時(shí)運(yùn)營(yíng)電子票務(wù)業(yè)務(wù),實(shí)現(xiàn)應(yīng)用級(jí)災(zāi)備。當(dāng)任一節(jié)點(diǎn)服務(wù)器、存儲(chǔ)等硬件設(shè)備出現(xiàn)故障時(shí),另一節(jié)點(diǎn)能夠主動(dòng)接管業(yè)務(wù),保障業(yè)務(wù)的可持續(xù)性和連續(xù)性,實(shí)現(xiàn)當(dāng)互聯(lián)網(wǎng)票務(wù)系統(tǒng)發(fā)生故障時(shí)仍能保持正常工作的功能,確?;ヂ?lián)網(wǎng)票務(wù)云平臺(tái)對(duì)外提供服務(wù)的實(shí)時(shí)可用性。
廈門(mén)地鐵乘車(chē)碼遵循“一人一碼”“一進(jìn)一出”的原則,采用先乘車(chē)后付費(fèi)方式。當(dāng)乘客進(jìn)出閘成功掃碼后,將從其綁定的支付賬戶(hù)中扣取本次行程產(chǎn)生的費(fèi)用。廈門(mén)地鐵乘車(chē)碼的設(shè)計(jì)基于交通部二維碼規(guī)范,為提高通行和傳輸效率,在廈門(mén)市軌道交通范圍內(nèi)將乘車(chē)碼優(yōu)化為本地碼,省略原交通部二維碼標(biāo)準(zhǔn)中關(guān)于跨城市互聯(lián)互通結(jié)算的內(nèi)容。該業(yè)務(wù)堅(jiān)持以乘客便利出行為宗旨,設(shè)計(jì)了相應(yīng)的降級(jí)模式。在閘機(jī)與第三方接入平臺(tái)網(wǎng)絡(luò)連通的情況下,采取線網(wǎng)驗(yàn)重模式;當(dāng)閘機(jī)與第三方接入平臺(tái)網(wǎng)絡(luò)斷開(kāi),則采用降級(jí)模式,由車(chē)站服務(wù)器進(jìn)行驗(yàn)重。乘客只需在運(yùn)營(yíng)日內(nèi)申請(qǐng)過(guò)乘車(chē)碼,該碼15 d內(nèi)均有效,無(wú)需重新申請(qǐng)拉碼,確保了手機(jī)在離線情況下也能正常使用乘車(chē)碼功能。目前,使用廈門(mén)地鐵乘車(chē)碼的客流比例已超過(guò)50%,隨著地鐵宣傳活動(dòng)的開(kāi)展和地鐵商圈的完善,這一客流比例將會(huì)繼續(xù)上升。
若要接入廈門(mén)地鐵乘車(chē)碼業(yè)務(wù),廈門(mén)地鐵第三方APP按照統(tǒng)一規(guī)范進(jìn)行開(kāi)發(fā)即可,廈門(mén)地鐵互聯(lián)網(wǎng)票務(wù)云平臺(tái)可以為其分配相應(yīng)參數(shù),無(wú)需針對(duì)每家接入方進(jìn)行個(gè)性化改造,廈門(mén)地鐵可對(duì)接入方收取一定的接入費(fèi)用。當(dāng)乘客在一個(gè)有效周期內(nèi)首次打開(kāi)第三方APP的乘車(chē)碼功能時(shí),第三方APP平臺(tái)向廈門(mén)地鐵互聯(lián)網(wǎng)票務(wù)云平臺(tái)實(shí)時(shí)申請(qǐng)乘車(chē)碼,并在申請(qǐng)成功后下發(fā)至第三方APP。每個(gè)乘客所申請(qǐng)的乘車(chē)碼在15個(gè)運(yùn)營(yíng)日內(nèi)有效。目前,已有支付寶、微信、云閃付和市民卡等第三方APP接入廈門(mén)地鐵乘車(chē)碼。
廈門(mén)地鐵乘客通過(guò)廈門(mén)地鐵APP訪問(wèn)互聯(lián)網(wǎng)票務(wù)云平臺(tái),完成電子單程票的購(gòu)買(mǎi)和票款的支付,互聯(lián)網(wǎng)票務(wù)云平臺(tái)向乘客手機(jī)提供電子單程票,乘客利用手機(jī)APP,根據(jù)電子單程票虛擬一張帶有地鐵專(zhuān)用票特征的車(chē)票,進(jìn)站乘車(chē)或下車(chē)出站。若乘客先后購(gòu)買(mǎi)了多張相同行程的電子單程票,使用時(shí)無(wú)需選擇具體的電子單程票,系統(tǒng)自動(dòng)按照購(gòu)票時(shí)間優(yōu)先選擇使用先購(gòu)買(mǎi)的電子單程票。乘客也可以一次性激活多張相同起點(diǎn)和終點(diǎn)的電子單程票,實(shí)現(xiàn)一人持票多人同行的功能。此外,廈門(mén)地鐵APP支持手機(jī)離網(wǎng)激活電子單程票,打開(kāi)電子單程票二維碼。
乘客在TVM上選擇購(gòu)票金額和購(gòu)票張數(shù),選擇在線支付后,TVM通知互聯(lián)網(wǎng)票務(wù)云平臺(tái)生成支付二維碼,乘客使用支付寶、微信和云閃付掃碼支付相應(yīng)的購(gòu)票訂單。支付成功后,TVM接收到互聯(lián)網(wǎng)票務(wù)云平臺(tái)返回的支付成功通知,進(jìn)行出票。若出票異常,TVM則通知互聯(lián)網(wǎng)票務(wù)云平臺(tái)進(jìn)行退款。
隨著使用互聯(lián)網(wǎng)票務(wù)服務(wù)出行的乘客越來(lái)越多,在為乘客提供多樣化選擇的同時(shí),需從功能規(guī)劃、流程設(shè)計(jì)、拓?fù)浣Y(jié)構(gòu)和安全性等方面統(tǒng)籌考慮互聯(lián)網(wǎng)票務(wù)云平臺(tái)的建設(shè),可通過(guò)統(tǒng)一規(guī)范、自主發(fā)碼方式實(shí)現(xiàn)第三方APP的共享接入,進(jìn)而解決第三方APP標(biāo)準(zhǔn)不一致、服務(wù)難保障等問(wèn)題。對(duì)乘客而言,互聯(lián)網(wǎng)票務(wù)的應(yīng)用解決了現(xiàn)金操作所涉及到的零錢(qián)問(wèn)題,也免去了高峰期排隊(duì)購(gòu)票的麻煩,不僅節(jié)約了出行時(shí)間,也獲得了更好的出行體驗(yàn)。對(duì)廈門(mén)地鐵而言,互聯(lián)網(wǎng)票務(wù)的應(yīng)用,以及支付寶、微信、云閃付和市民卡等第三方APP的接入,不僅為乘客提供了多樣化便捷出行的選擇,提升了地鐵運(yùn)營(yíng)服務(wù)的水平,也大大減輕了現(xiàn)金使用量,減少了車(chē)站現(xiàn)金管理和設(shè)備維護(hù)的壓力。由于電子單程票、乘車(chē)碼的使用減少了實(shí)體票的流通,在一定程度上降低了票卡的流失,也節(jié)省了票卡編碼分揀及庫(kù)存調(diào)配所消耗的人力和物力。