公交線路智能查詢系統(tǒng)方案
?。?)采用全DSP結(jié)構(gòu),處理能力強(qiáng)大,可減輕主機(jī)負(fù)擔(dān),保證高密度、大容量的應(yīng)用系統(tǒng)高效穩(wěn)定地運(yùn)行。同時(shí),DSP技術(shù)便于軟件升級。
數(shù)據(jù)庫系統(tǒng)采用SQL Server。SQL Server是Windows NT環(huán)境下比較成熟的數(shù)據(jù)庫產(chǎn)品,他具有大型數(shù)據(jù)庫系統(tǒng)的所有特性,而且便于與NT集成管理。
開發(fā)工具選擇Visual C++,Visual Basic等。Visual C++功能強(qiáng)大、控制靈活,可以處理各種程序設(shè)計(jì)的需要;Visual Basic編制程序速度快,對程序設(shè)計(jì)人員要求不高,因此將兩者結(jié)合起來使用。
2.2 軟件設(shè)計(jì)
本系統(tǒng)界面由Visual Basic 6.0編程實(shí)現(xiàn)。以漢字和圖標(biāo)明確顯示其功能,操作簡單,一目了然,便于值班人員操作和監(jiān)控。
各功能程序由Visual C++編程實(shí)現(xiàn),主要分為:檢測振鈴事件及接受用戶語音實(shí)現(xiàn)相應(yīng)的功能調(diào)用;確定進(jìn)入系統(tǒng)后界面菜單的有效狀態(tài)以及檢測和初始化電話語音卡;登錄數(shù)據(jù)庫服務(wù)器。
2.3 數(shù)據(jù)庫服務(wù)器的設(shè)計(jì)
客戶/服務(wù)器結(jié)構(gòu)[4]是基于數(shù)據(jù)庫的應(yīng)用程序廣泛采用的一種結(jié)構(gòu)。他利用了計(jì)算機(jī)系統(tǒng)硬件和軟件分布的不平衡性,把數(shù)據(jù)服務(wù)集中在服務(wù)器端,而識別客戶端則專門負(fù)責(zé)處理應(yīng)用邏輯和界面。這使得程序開發(fā)的復(fù)雜性大大降低,同時(shí)識別客戶端和識別服務(wù)器實(shí)時(shí)通信、協(xié)同工作,減少了時(shí)延,保證了較高的識別效率??蛻簦?wù)器結(jié)構(gòu)包括了2個獨(dú)立的實(shí)
體:識別客戶端和識別服務(wù)器。前者上運(yùn)行的應(yīng)用程序稱為”前端“或”前臺“,后者的稱為”后端“。也就是說,服務(wù)器增加了”后端數(shù)據(jù)庫引擎“,電話接入時(shí),識別客戶端接管電話用戶的語音輸入,實(shí)時(shí)傳送到識別服務(wù)器,并把識別服務(wù)器的識別結(jié)果向電話應(yīng)用平臺層返送,然后進(jìn)行內(nèi)部運(yùn)算查找符合條件的數(shù)據(jù),此時(shí)客戶機(jī)還可以利用這些閑置時(shí)間處理其他的工作,等到服務(wù)器處理完畢,就會把所需的數(shù)據(jù)傳遞給前端應(yīng)用程序。
由于客戶/服務(wù)器結(jié)構(gòu)的前端應(yīng)用程序并不直接對數(shù)據(jù)庫進(jìn)行處理,因此利用ODBC作為一個橋梁幫我們打開前端應(yīng)用程序與后端數(shù)據(jù)庫管理系統(tǒng)的通道,并且由ODBC API提供制式化的控制函數(shù)來維護(hù)服務(wù)器的數(shù)據(jù)庫數(shù)據(jù)。
語音合成的處理是通過邊合成邊播放的策略,避免了由于合成長文本帶來的較大的延時(shí)。該系統(tǒng)在分段播放語音時(shí),用戶的任何打斷都可以中止該次合成任務(wù),免去了無謂的資源消耗。
3 系統(tǒng)的實(shí)現(xiàn)
本系統(tǒng)在啟動時(shí),首先會訪問DataSource.ini文件,從中讀出有關(guān)數(shù)據(jù)庫信息,若數(shù)據(jù)庫服務(wù)器的數(shù)據(jù)改動時(shí),只需改動此文件便可。DataSource.ini文件內(nèi)容如下:
?。跾ource]
namc=flight
?。跠SN]
name=”O(jiān)DBC ;DSN=flight;UID=flight;PWD=flight’其中:nAME=flig
評論