本發(fā)明涉及通信設(shè)備技術(shù)領(lǐng)域,尤其涉及一種自動獲取金融卡類型的方法。
背景技術(shù):
目前市場上存在大多數(shù)刷卡器可以同時兼容接觸式IC卡、非接觸式IC卡、磁卡等刷卡方式,廠家并提供相關(guān)使用接口,只能單一的對相應(yīng)模塊進行操作,并未實現(xiàn)自動判斷卡類型操作。在使用該類型刷卡器進行業(yè)務(wù)辦理時,操作人員要預(yù)先獲知即將刷卡類型,通過點擊相應(yīng)卡片的操作按鈕來進行刷卡操作,這種處理方法存在交互體驗差,有可能出現(xiàn)誤操作等現(xiàn)象,導(dǎo)致業(yè)務(wù)辦理流程卡頓。并且在一些自助終端上,存在部分客戶對卡類型的判斷都會出現(xiàn)錯誤,無法根據(jù)提示進行相關(guān)業(yè)務(wù)操作,這就大大的降低產(chǎn)品的易用性。
技術(shù)實現(xiàn)要素:
本發(fā)明要解決的技術(shù)問題,在于提供一種自動獲取金融卡類型的方法,通過上位機軟件和讀卡設(shè)備的交互,在軟件層面上實現(xiàn)了卡類型智能判斷,并可以預(yù)先加載卡片有效數(shù)據(jù),從而大大簡化操作步驟,減少和用戶交互次數(shù)及誤操作,提高了操作人員工作效率。
本發(fā)明是這樣實現(xiàn)的:一種自動獲取金融卡類型的方法,所述方法為:上位機的動態(tài)庫接口和讀卡設(shè)備通過通訊方式進行交互,讀卡設(shè)備接收到相關(guān)指令后,同時打開磁卡數(shù)據(jù)采集模塊、接觸式IC卡數(shù)據(jù)采集模塊和非接觸式IC卡數(shù)據(jù)采集模塊,并通過任務(wù)調(diào)度機制進行模塊輪詢,當(dāng)檢測到用戶相關(guān)操作后,通過相關(guān)模塊的數(shù)據(jù)處理單元,經(jīng)過一設(shè)定的格式將相關(guān)操作的數(shù)據(jù)封裝上傳給上位機,當(dāng)上位機檢測到相應(yīng)操作后,通過解析數(shù)據(jù)格式,獲取卡相關(guān)信息,使用當(dāng)前卡類型進行后續(xù)業(yè)務(wù)操作。
進一步的,所述讀卡設(shè)備設(shè)置有任務(wù)調(diào)度模塊,所述上位機設(shè)置有上位機調(diào)度模塊;
所述任務(wù)調(diào)度模塊由數(shù)據(jù)處理模塊和資源調(diào)度模塊組成;所述資源調(diào)度模塊包括所述的磁卡數(shù)據(jù)采集模塊、接觸式IC卡數(shù)據(jù)采集模塊和非接觸式IC卡數(shù)據(jù)采集模塊;
所述上位機調(diào)度模塊由控制數(shù)據(jù)處理模塊和協(xié)議調(diào)度模塊組成;
所述方法進一步為:所述讀卡設(shè)備的資源調(diào)度模塊接收到獲取卡類型指令后,同時打開磁卡數(shù)據(jù)采集模塊、接觸式IC卡數(shù)據(jù)采集模塊和非接觸式IC卡數(shù)據(jù)采集模塊進行數(shù)據(jù)采集操作,并輪詢相關(guān)數(shù)據(jù)處理結(jié)果,當(dāng)接收到磁卡數(shù)據(jù)采集模塊、接觸式IC卡數(shù)據(jù)采集模塊和非接觸式IC卡數(shù)據(jù)采集模塊的任一模塊的反饋后,即磁卡數(shù)據(jù)采集模塊、接觸式IC卡數(shù)據(jù)采集模塊和非接觸式IC卡數(shù)據(jù)采集模塊對應(yīng)的數(shù)據(jù)處理單元緩存數(shù)據(jù),再通過數(shù)據(jù)處理模塊進行數(shù)據(jù)封裝操作并和所述控制數(shù)據(jù)處理模塊進行數(shù)據(jù)交互,上位機調(diào)度模塊接收到數(shù)據(jù)后,通過解析數(shù)據(jù),獲取相關(guān)卡類型信息,并根據(jù)卡類型通過調(diào)用所述協(xié)議調(diào)度模塊進行協(xié)議處理后將數(shù)據(jù)返回給后臺業(yè)務(wù)系統(tǒng)進行后續(xù)業(yè)務(wù)操作。
進一步的,所述數(shù)據(jù)處理模塊進行和上位機的數(shù)據(jù)交互,上位機通過通訊方式發(fā)送字節(jié)流給讀卡設(shè)備,讀卡設(shè)備接收到指令后,通過指令解析流程分析出該指令的命令碼、數(shù)據(jù)參數(shù),并進行相關(guān)校驗操作,校驗通過后進行結(jié)構(gòu)封裝操作及向資源調(diào)度模塊發(fā)送。
進一步的,所述磁卡數(shù)據(jù)采集模塊由兩個邏輯單元組成,分別是:磁卡原始數(shù)據(jù)處理單元和磁卡數(shù)據(jù)處理單元;磁卡原始數(shù)據(jù)處理單元負責(zé)進行磁卡原始數(shù)據(jù)采集,通過觸發(fā)外部雙邊沿中斷,啟動定時器作為時鐘源,在中斷處理函數(shù)中獲取相連兩次中斷定時器的計數(shù)值之差作為位持續(xù)時間,緩存在FIFO緩存隊列中,并通過誤判校正,迭代平均得出正確的磁卡原始數(shù)據(jù);磁卡數(shù)據(jù)處理單元負責(zé)對磁卡原始數(shù)據(jù)處理單元緩存的磁卡原始數(shù)據(jù)進一步處理,根據(jù)磁卡協(xié)議標準,通過查找起始字符、解碼數(shù)據(jù)區(qū)數(shù)據(jù)和磁道數(shù)據(jù)校驗,得出磁卡各個磁道最終數(shù)據(jù)并緩存。
進一步的,接觸式IC卡數(shù)據(jù)采集模塊由三個邏輯單元組成,分別是:接觸式檢測單元、接觸式數(shù)據(jù)處理單元和ISO7816協(xié)議處理單元;
接觸式檢測單元負責(zé)進行接觸式IC卡在位判斷,用于檢測操作人員的卡插拔操作,并將結(jié)果上傳至接觸式數(shù)據(jù)處理單元,接觸式數(shù)據(jù)處理單元接收到相關(guān)卡狀態(tài)后,通過ISO7816協(xié)議處理單元根據(jù)ISO7816協(xié)議對卡片進行上電操作,并緩存相關(guān)ATR(均幅指標)數(shù)據(jù)及根據(jù)ATR數(shù)據(jù)得到卡片控制參數(shù),用于后續(xù)APDU命令操作。
進一步的,非接觸式IC卡數(shù)據(jù)采集模塊由三個邏輯單元組成,分別是:射頻檢測單元、射頻數(shù)據(jù)處理單元和ISO14443協(xié)議處理單元;
射頻檢測單元通過調(diào)用輪詢polling流程啟動射頻區(qū)進行卡片搜尋操作,當(dāng)檢測到有卡片進入射頻區(qū)后通過ISO14443協(xié)議處理單元啟動上電流程,執(zhí)行喚醒WakeUp、防撞擊Anticollision、選擇Select操作,并將上電信息緩存在射頻數(shù)據(jù)處理單元。
本發(fā)明具有如下優(yōu)點:本發(fā)明提供了一種包含硬件旁路、軟件旁路的可以智能識別金融卡類型的方法,能識別磁卡、接觸式IC卡、非接觸式IC卡三合一的金融卡,使得操作人員不需要知道相關(guān)金融卡類型便可以進行相關(guān)業(yè)務(wù)操作。利用該方法,通過上位機軟件和讀卡設(shè)備的交互,在軟件層面上實現(xiàn)了卡類型智能判斷,并可以預(yù)先加載卡片有效數(shù)據(jù),從而大大簡化操作步驟,減少和用戶交互次數(shù)及誤操作,提高了操作人員工作效率。
附圖說明
下面參照附圖結(jié)合實施例對本發(fā)明作進一步的說明。
圖1為本發(fā)明方法示意圖。
圖2為本發(fā)明方法中涉及的模塊原理示意圖。
具體實施方式
請參閱圖1和圖2所示,一種自動獲取金融卡類型的方法,所述方法為:上位機的動態(tài)庫接口和讀卡設(shè)備通過通訊方式進行交互,讀卡設(shè)備接收到相關(guān)指令后,同時打開磁卡數(shù)據(jù)采集模塊、接觸式IC卡數(shù)據(jù)采集模塊和非接觸式IC卡數(shù)據(jù)采集模塊,并通過任務(wù)調(diào)度機制進行模塊輪詢,當(dāng)檢測到用戶相關(guān)操作后,通過相關(guān)模塊的數(shù)據(jù)處理單元,經(jīng)過一設(shè)定的格式將相關(guān)操作的數(shù)據(jù)封裝上傳給上位機,當(dāng)上位機檢測到相應(yīng)操作后,通過解析數(shù)據(jù)格式,獲取卡相關(guān)信息,使用當(dāng)前卡類型進行后續(xù)業(yè)務(wù)操作。
進一步的,本發(fā)明的所述讀卡設(shè)備設(shè)置有任務(wù)調(diào)度模塊301,所述上位機設(shè)置有上位機調(diào)度模塊601;
所述任務(wù)調(diào)度模塊301由數(shù)據(jù)處理模塊401和資源調(diào)度模塊402組成;所述資源調(diào)度模塊包括所述的磁卡數(shù)據(jù)采集模塊、接觸式IC卡數(shù)據(jù)采集模塊和非接觸式IC卡數(shù)據(jù)采集模塊;
所述上位機調(diào)度模塊601由控制數(shù)據(jù)處理模塊701和協(xié)議調(diào)度模塊702組成;
所述方法進一步為:所述讀卡設(shè)備的資源調(diào)度模塊接收到獲取卡類型指令后,同時打開磁卡數(shù)據(jù)采集模塊、接觸式IC卡數(shù)據(jù)采集模塊和非接觸式IC卡數(shù)據(jù)采集模塊進行數(shù)據(jù)采集操作,并輪詢相關(guān)數(shù)據(jù)處理結(jié)果,當(dāng)接收到磁卡數(shù)據(jù)采集模塊、接觸式IC卡數(shù)據(jù)采集模塊和非接觸式IC卡數(shù)據(jù)采集模塊的任一模塊的反饋后,即磁卡數(shù)據(jù)采集模塊、接觸式IC卡數(shù)據(jù)采集模塊和非接觸式IC卡數(shù)據(jù)采集模塊對應(yīng)的數(shù)據(jù)處理單元緩存數(shù)據(jù),再通過數(shù)據(jù)處理模塊進行數(shù)據(jù)封裝操作并和所述控制數(shù)據(jù)處理模塊進行數(shù)據(jù)交互,上位機調(diào)度模塊接收到數(shù)據(jù)后,通過解析數(shù)據(jù),獲取相關(guān)卡類型信息,并根據(jù)卡類型通過調(diào)用所述協(xié)議調(diào)度模塊進行協(xié)議處理后將數(shù)據(jù)返回給后臺業(yè)務(wù)系統(tǒng)進行后續(xù)業(yè)務(wù)操作。
任務(wù)調(diào)度模塊301通過控制數(shù)據(jù)處理模塊401和控制數(shù)據(jù)處理模塊701進行數(shù)據(jù)交互,完成通訊過程。協(xié)議調(diào)度模塊702根據(jù)數(shù)據(jù)處理模塊401反饋數(shù)據(jù),通過調(diào)用控制數(shù)據(jù)處理模塊701進行協(xié)議數(shù)據(jù)處理,并將數(shù)據(jù)返回給后臺業(yè)務(wù)系統(tǒng)。
控制數(shù)據(jù)處理模塊401主要進行和上位機的數(shù)據(jù)交互,上位機通過特殊通訊方式發(fā)送字節(jié)流給設(shè)備,設(shè)備接收到指令后,通過指令解析流程分析出該指令的命令碼、數(shù)據(jù)等參數(shù),并進行相關(guān)校驗操作,校驗通過后進行結(jié)構(gòu)封裝操作及向資源調(diào)度模塊402發(fā)送。
資源調(diào)度模塊402主要進行程序內(nèi)部資源分配和調(diào)度操作,由磁卡數(shù)據(jù)采集模塊501、接觸式IC卡數(shù)據(jù)采集模塊502和非接觸式IC卡數(shù)據(jù)采集模塊503。
磁卡數(shù)據(jù)采集模塊501由兩個邏輯單元組成,分別是:磁卡原始數(shù)據(jù)處理模塊511和磁卡數(shù)據(jù)處理單元512。
磁卡原始數(shù)據(jù)處理模塊511負責(zé)進行磁卡原始數(shù)據(jù)采集,通過觸發(fā)外部雙邊沿中斷,啟動32位定時器作為時鐘源,在中斷處理函數(shù)中計算相連兩次中斷定時器的計數(shù)值之差作為位持續(xù)時間,緩存在FIFO緩存隊列中,并通過誤判校正,迭代平均值等方法,得出正確的磁卡原始數(shù)據(jù)。磁卡數(shù)據(jù)處理單元512負責(zé)對磁卡原始數(shù)據(jù)處理模塊511緩存的磁卡原始數(shù)據(jù)進一步處理,根據(jù)磁卡協(xié)議標準,通過查找起始字符、解碼數(shù)據(jù)區(qū)數(shù)據(jù)和磁道數(shù)據(jù)校驗,得出磁卡各個磁道最終數(shù)據(jù)并緩存。
接觸式IC卡數(shù)據(jù)采集模塊502由三個邏輯單元組成,分別是:接觸式檢測單元521、接觸式數(shù)據(jù)處理單元522和ISO7816協(xié)議處理單元523。
接觸式檢測單元521負責(zé)進行接觸式IC卡在位判斷,用于檢測操作人員的卡插拔操作,并將結(jié)果上傳至接觸式數(shù)據(jù)處理單元522,接觸式數(shù)據(jù)處理單元522接收到相關(guān)卡狀態(tài)后,通過ISO7816協(xié)議處理單元523根據(jù)ISO7816協(xié)議對卡片進行上電操作,并緩存相關(guān)ATR數(shù)據(jù)及根據(jù)ATR數(shù)據(jù)得到卡片控制參數(shù),用于后續(xù)APDU操作。
非接觸式IC卡數(shù)據(jù)采集模塊503由三個邏輯單元組成,分別是:射頻檢測單元531、射頻數(shù)據(jù)處理單元532和ISO14443協(xié)議處理單元533。
射頻檢測單元531通過調(diào)用polling流程啟動射頻區(qū)進行卡片搜尋操作,當(dāng)檢測到有卡片進入射頻區(qū)后通過ISO14443協(xié)議處理單元533啟動上電流程,執(zhí)行WakeUp、Anticollision、Select等操作,并將上電信息緩存在射頻數(shù)據(jù)處理單元532。
資源調(diào)度模塊402接收到獲取卡類型指令后,同時打開磁卡數(shù)據(jù)采集模塊501、接觸式IC卡數(shù)據(jù)采集模塊502、非接觸式IC卡數(shù)據(jù)采集模塊503進行數(shù)據(jù)采集操作,并輪詢相關(guān)數(shù)據(jù)處理結(jié)果,當(dāng)接收到任一模塊的反饋后,即磁卡數(shù)據(jù)處理單元512、接觸式數(shù)據(jù)處理單元522、射頻數(shù)據(jù)處理單元532緩存數(shù)據(jù),通過控制數(shù)據(jù)處理模塊401進行數(shù)據(jù)封裝操作并和701進行數(shù)據(jù)交互,601接收到數(shù)據(jù)后,通過解析數(shù)據(jù),獲取相關(guān)卡類型信息,并根據(jù)卡類型通過調(diào)用702進行協(xié)議處理后將數(shù)據(jù)返回給后臺業(yè)務(wù)系統(tǒng)。
總之,通過上位機軟件和讀卡設(shè)備的交互,在軟件層面上實現(xiàn)了卡類型智能判斷,并可以預(yù)先加載卡片有效數(shù)據(jù),從而大大簡化操作步驟,減少和用戶交互次數(shù)及誤操作,提高了操作人員工作效率。
雖然以上描述了本發(fā)明的具體實施方式,但是熟悉本技術(shù)領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,我們所描述的具體的實施例只是說明性的,而不是用于對本發(fā)明的范圍的限定,熟悉本領(lǐng)域的技術(shù)人員在依照本發(fā)明的精神所作的等效的修飾以及變化,都應(yīng)當(dāng)涵蓋在本發(fā)明的權(quán)利要求所保護的范圍內(nèi)。