專利名稱:帶有可編程鍵的電話設(shè)備圖形鍵盤的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及本發(fā)明涉及電話通信,而且更具體地涉及由用戶操作的可得到多種電話業(yè)務(wù)的終端設(shè)備。
2.現(xiàn)有技術(shù)的描述
圖1近年來(lái),基于計(jì)算機(jī)的電話管理系統(tǒng)已經(jīng)發(fā)展起來(lái),計(jì)算機(jī)本身提供與電話系統(tǒng)的人機(jī)接口。這種系統(tǒng)一般提供一個(gè)業(yè)務(wù)主機(jī),代替或取代傳統(tǒng)的、單獨(dú)的電話終端設(shè)備--例如電話機(jī)或傳真機(jī)--所提供的業(yè)務(wù)。通過(guò)增加恰當(dāng)?shù)能浖徒涌谟布?,例如?shù)據(jù)/語(yǔ)音/傳真調(diào)制解調(diào)器,現(xiàn)有的個(gè)人計(jì)算機(jī)可以很容易地轉(zhuǎn)換成功能強(qiáng)大的通信工具,用于建立常規(guī)的語(yǔ)音線路并發(fā)送和接收傳真圖象和數(shù)據(jù)文件。當(dāng)個(gè)人計(jì)算機(jī)連接到局域網(wǎng)時(shí),通過(guò)網(wǎng)絡(luò)常??梢蕴峁┕蚕淼耐ㄐ旁O(shè)施,不需要在每個(gè)個(gè)人計(jì)算機(jī)上帶有附加的電話接口硬件。
盡管健全的電話管理和通信功能可以使用個(gè)人計(jì)算機(jī)作為電話終端來(lái)提供,但是用戶已經(jīng)發(fā)現(xiàn)這些系統(tǒng)很難使用。因此,盡管所給出的個(gè)人計(jì)算機(jī)電話管理系統(tǒng)可能包括電話號(hào)碼的存儲(chǔ)數(shù)據(jù)庫(kù),可以使用計(jì)算機(jī)鍵盤或鼠標(biāo)選擇激活并操作,自動(dòng)撥出所需的電話號(hào)碼,但是用常規(guī)方式在已出版的電話簿中簡(jiǎn)單地查找號(hào)碼然后手動(dòng)地?fù)艹鎏?hào)碼常常更快,也更容易。因?yàn)檐浖_發(fā)人員給這種計(jì)算機(jī)電話管理系統(tǒng)添加了無(wú)窮擴(kuò)展的特性組合,這種系統(tǒng)必然變得很復(fù)雜而且非常難于使用,特別是不常使用的那些功能更是如此。因此,本發(fā)明的目的是為現(xiàn)代電話系統(tǒng)的復(fù)雜特性提供一種容易使用的用戶接口,并藉此使這些特性真正用于普通用戶。
發(fā)明概要本發(fā)明的目的通過(guò)使用改造的標(biāo)準(zhǔn)12鍵電話鍵盤與電話系統(tǒng)單元交互作用來(lái)實(shí)現(xiàn)。這種改造使鍵的圖標(biāo)可以動(dòng)態(tài)改變。用戶用熟悉的方式(在鍵盤上按下鍵)來(lái)與電話系統(tǒng)交互作用,但是當(dāng)用戶按鍵時(shí),單元通過(guò)按照交互作用的下一步所需而改變鍵上的圖標(biāo)來(lái)響應(yīng)。電話系統(tǒng)單元也通過(guò)執(zhí)行該交互作用所需的任何電話功能來(lái)響應(yīng)按鍵的按下。如果單元是PC或服務(wù)器這樣的設(shè)備,可以實(shí)現(xiàn)電話功能以外的功能,可重新設(shè)置圖標(biāo)的鍵盤就可以也用于與這些功能接口。
在本發(fā)明的特別有用的型式中,鍵盤是連接到PC的擴(kuò)展板的桌面電話的一部分,PC再連接到電話系統(tǒng)。電話也具有到電話系統(tǒng)的標(biāo)準(zhǔn)POTS(普通舊電話業(yè)務(wù))連接,而且當(dāng)PC故障時(shí),電話通過(guò)POTS連接轉(zhuǎn)到POTS業(yè)務(wù)。PC的故障由擴(kuò)展板檢測(cè),然后禁止可重新設(shè)置圖標(biāo)的鍵盤和PC之間的鏈路。一種電話型式包括當(dāng)PC故障并使用POTS連接時(shí)單獨(dú)使用的鍵盤。擴(kuò)展板還包括接入控制機(jī)制,保證擴(kuò)展板和PC其它單元之間沒有不想要的反作用。
本發(fā)明也可以用很多不同方式實(shí)現(xiàn)。在一種極端情況,本發(fā)明可以完全在連接到有線或無(wú)線電話系統(tǒng)的PC或其它桌面工作站中實(shí)現(xiàn)。在這種型式中,鍵盤在PC顯示器上顯示,用戶使用指點(diǎn)設(shè)備操作。另一種極端情況,本發(fā)明可以在直接連接到有線或無(wú)線電話或數(shù)據(jù)分組電話網(wǎng)絡(luò)的獨(dú)立設(shè)備中實(shí)現(xiàn)。這些實(shí)現(xiàn)的折衷是本發(fā)明通過(guò)PC中的擴(kuò)展板以及連接到擴(kuò)展卡的桌面設(shè)備來(lái)實(shí)現(xiàn)。
也有很多可能的結(jié)合本發(fā)明的的系統(tǒng)配置,在其范圍內(nèi)有這樣的系統(tǒng)--其中結(jié)合本發(fā)明的單個(gè)桌面電話通過(guò)電纜連接到PC的擴(kuò)展板,也有這樣的系統(tǒng)--其中多個(gè)桌面電話通過(guò)LAN連接到服務(wù)器、服務(wù)器再連接到電話系統(tǒng),也有這樣的系統(tǒng)--其中桌面電話連接到用戶交換機(jī),也有這樣的系統(tǒng)--其中桌面電話直接連接到電話網(wǎng)絡(luò)。電話與PC、服務(wù)器、用戶交換機(jī)、以及電話網(wǎng)絡(luò)之間的連接可以是有線的或無(wú)線的。使用本發(fā)明的電話設(shè)備特別適于數(shù)據(jù)分組電話,其中話音和控制信息都作為數(shù)字?jǐn)?shù)據(jù)分組傳輸。
當(dāng)熟讀了如下詳細(xì)描述和附圖,本發(fā)明的這些以及其它方面和目的將使本發(fā)明有關(guān)領(lǐng)域的技術(shù)人員明了,在附圖中附圖的簡(jiǎn)要描述圖1是說(shuō)明發(fā)明優(yōu)選實(shí)施例的主要單元之間關(guān)系的框圖2是說(shuō)明用于實(shí)現(xiàn)本發(fā)明的監(jiān)控程序所處理的按鍵操作的方式的控制流程圖;圖3-10說(shuō)明與電話設(shè)備八種相應(yīng)的模式狀態(tài)結(jié)合使用的八種鍵盤顯示;圖11是用于實(shí)現(xiàn)本發(fā)明的電話設(shè)備的邏輯框圖;圖12是圖11的電話設(shè)備中使用的接口電路的一個(gè)實(shí)施例的框圖;圖13是說(shuō)明圖11的電話設(shè)備中使用的LCD鍵開關(guān)和LCD鍵開關(guān)驅(qū)動(dòng)電路之間互連的邏輯框圖;圖14說(shuō)明優(yōu)選實(shí)施例中使用的數(shù)據(jù)文件機(jī)制和程序流程控制;圖15是優(yōu)選實(shí)施例中用于對(duì)擴(kuò)展板解鎖的狀態(tài)機(jī)圖;圖16是擴(kuò)展板中配置寄存器圖;圖17是擴(kuò)展板中鍵盤參數(shù)寄存器圖;圖18是擴(kuò)展板中鍵狀態(tài)鎖存器圖;圖19是擴(kuò)展板的詳細(xì)框圖;圖20是電話設(shè)備的詳細(xì)框圖;圖21是實(shí)施本發(fā)明的系統(tǒng)的通用圖;圖22是直接與電話交換機(jī)相互作用的本發(fā)明的實(shí)施例;圖23是直接與分組網(wǎng)絡(luò)相互作用的本發(fā)明的實(shí)施例;圖24說(shuō)明優(yōu)選實(shí)施例的自動(dòng)防故障特性;以及圖25是優(yōu)選實(shí)施例的軟件結(jié)構(gòu)。
附圖中的參照號(hào)至少是三位數(shù)字。最右兩位數(shù)字是圖內(nèi)的參照號(hào);最左的數(shù)字是該參照號(hào)所標(biāo)識(shí)的項(xiàng)在圖中首先出現(xiàn)的圖號(hào)。例如,帶有參考號(hào)203的項(xiàng)首先出現(xiàn)在圖2。
詳細(xì)描述簡(jiǎn)介如下詳細(xì)描述始于來(lái)自本專利申請(qǐng)的母申請(qǐng)的有關(guān)本發(fā)明所操作的軟件環(huán)境、本發(fā)明所實(shí)現(xiàn)的功能、以及本發(fā)明的實(shí)施例的描述。為此添加了擴(kuò)展卡以及電話設(shè)備的現(xiàn)在優(yōu)選實(shí)施例的描述、本發(fā)明的通用描述、以及本發(fā)明多個(gè)種類的描述。
結(jié)合本發(fā)明的系統(tǒng)的概述圖1圖1說(shuō)明發(fā)明優(yōu)選實(shí)施例的主要硬件和軟件單元之間的關(guān)系。如圖1所示,個(gè)人計(jì)算機(jī)100通過(guò)電話用戶線路102連接到電話業(yè)務(wù)中心局104。計(jì)算機(jī)100還通過(guò)接口連接112連接電話設(shè)備110。
電話設(shè)備110包括手機(jī)114,后者包括耳機(jī)揚(yáng)聲器116和話筒麥克風(fēng)118。當(dāng)不使用時(shí),手機(jī)114放在電話設(shè)備110的座上,使用以120表示的掛機(jī)開關(guān),將電話設(shè)備置于常規(guī)方式的“掛機(jī)”狀態(tài)。液晶顯示板124和鍵盤126處于電話設(shè)備110的外部面板。顯示器124能夠顯示多達(dá)24個(gè)字母數(shù)字字符,它們作為字符數(shù)據(jù)流通過(guò)接口連接112傳遞到電話設(shè)備110。
鍵盤126優(yōu)選地包括12個(gè)顯示鍵,按照常規(guī)電話鍵盤矩陣排列,由四行組成,每行三個(gè)鍵。無(wú)論何時(shí)鍵盤126中的任何鍵被按下或釋放,鍵盤觸發(fā)信號(hào)都通過(guò)接口連接112發(fā)送到個(gè)人計(jì)算機(jī)100。鍵盤112的每個(gè)鍵結(jié)合一個(gè)后照明的液晶顯示(LCD)板,能夠顯示圖形或字母數(shù)字圖象,通過(guò)連接112、以計(jì)算機(jī)100所產(chǎn)生并發(fā)送的象素圖象數(shù)據(jù)塊的形式將圖象傳遞到鍵上。此外,每個(gè)鍵的LCD顯示板的后照明由通過(guò)連接112提供給電話設(shè)備110的后照明命令信號(hào)選擇性地進(jìn)行控制,使得后照明可以以所選的顏色(例如白、綠或紅)關(guān)閉或打開。
電話設(shè)備110還提供了特殊的振鈴設(shè)備(圖1中未表示)、以130表示的揚(yáng)聲器、以及以132表示的拾取式麥克風(fēng)。揚(yáng)聲器130和麥克風(fēng)132允許電話設(shè)備110作為喇叭揚(yáng)聲器操作。從計(jì)算機(jī)100通過(guò)連接112發(fā)送的控制命令用于獨(dú)立地控制喇叭130所傳遞的音量以及手機(jī)114中耳機(jī)揚(yáng)聲器116所產(chǎn)生的音量。類似地,通過(guò)連接112發(fā)送的控制命令獨(dú)立地控制拾取式麥克風(fēng)132和話筒麥克風(fēng)118的增益。
硬件擴(kuò)展卡140中的電路用于建立計(jì)算機(jī)100和電話線路102之間以及計(jì)算機(jī)和電話設(shè)備110之間通過(guò)接口連接112的通信。擴(kuò)展卡114插入以150表示的標(biāo)準(zhǔn)的I/O系統(tǒng)總線硬件接口槽,以建立與個(gè)人計(jì)算機(jī)100的數(shù)據(jù)、地址和控制線路的連接。正如下面更詳細(xì)描述的,這里所描述的發(fā)明實(shí)施例適用于一般使用Intel386、486以及Pentium處理器系列、能夠運(yùn)行Microsoft Corp.發(fā)布的Windows95和Windows NT操作系統(tǒng)的個(gè)人計(jì)算機(jī)。因此,擴(kuò)展卡140優(yōu)選地適配于與根據(jù)這類計(jì)算機(jī)中通常使用的ISA或EISA(16比特)或PCI總線(32比特)接口標(biāo)準(zhǔn)配置的系統(tǒng)總線插槽配合并通信。這些工業(yè)標(biāo)準(zhǔn)總線配置中每一個(gè)的規(guī)范和完整描述可以在例如,Upgradingand Repairing PCs(PC機(jī)的升級(jí)和維修),第五章“Bus Slots andI/O Cards”(總線插槽和I/O卡)中找到,本書為5thEdition,ScottMeuller所著,Que Corp.Indianaplois,IN(1995),ISBN 0-7897-0321-1。
擴(kuò)展卡140優(yōu)選地包括常規(guī)設(shè)計(jì)的數(shù)據(jù)/傳真/話音調(diào)制解調(diào)器單元144。調(diào)制解調(diào)器單元144優(yōu)選地提供28.8Kbps的調(diào)制解調(diào)器數(shù)據(jù)傳輸,使用CCITT調(diào)制解調(diào)器協(xié)議V.34;V.Fast Class;V.32 terbo;V.42bis;V.42;V.32bis;V.32;V.22bis;以及V.22,支持MNP5差錯(cuò)校正/數(shù)據(jù)壓縮協(xié)議,以及用于包括自動(dòng)撥號(hào)支持的線路控制的Hayes AT命令集。調(diào)制解調(diào)器144還使用CCITT Group 3 Fax protocol(V.17)以14.4Kbps提供發(fā)送/接收FAX調(diào)制解調(diào)器文件傳輸。在撥號(hào)電話設(shè)施上提供這種工業(yè)標(biāo)準(zhǔn)的數(shù)據(jù)/傳真/話音能力的可用內(nèi)部擴(kuò)展卡在市場(chǎng)上已經(jīng)提供,例如U.S.Robotics Corp.8100 N.McCormick Blvd.,Skokie,IL 60076-2999銷售的Courier V.Everything with V.34 PC modem,以及Hayes MicrocomputerProducts,Inc.,P0 Box 105203,Atlanta,GA 30348銷售的Optima288I V.34/V.FC+FAX modem,它們都與16比特的ISA I/O總線兼容。常規(guī)的數(shù)據(jù)/話音/傳真調(diào)制解調(diào)器144一般包括電話線控制機(jī)制,用以完成脈沖和撥號(hào)音(DTMF)撥號(hào)、數(shù)據(jù)壓縮以及糾錯(cuò)、數(shù)據(jù)傳輸流控制以及協(xié)議支持,傳輸速度控制,以及傳輸控制。
如圖1所示,調(diào)制解調(diào)器單元通過(guò)標(biāo)準(zhǔn)的電話插座146連接到撥號(hào)電話線102,插座146與輔助電話插座147交叉連接,允許其它電話機(jī)設(shè)備連接到電話線路102。到話機(jī)設(shè)備110的接口連接112通過(guò)標(biāo)準(zhǔn)的25線PC并口連接148連接到擴(kuò)展卡140,25線中包括電源、雙向數(shù)據(jù)線、控制線、以及直接連接到電話線102的線路。見上面提到的第11章“Communications and Networking,”Upgrading andReparing PCs(“通信和組網(wǎng)”,PC機(jī)的升級(jí)和維修),其中有標(biāo)準(zhǔn)并口接口的插腳分配說(shuō)明。鍵盤126中的顯示鍵通過(guò)連接112的8比特并行數(shù)據(jù)輸出線接收顯示數(shù)據(jù),而且該連接的8根數(shù)據(jù)輸入線用于傳遞來(lái)自話機(jī)設(shè)備的按鍵信號(hào)并提供電話線電路102(塞尖和塞環(huán)線)的線路通道,它們?cè)陔娫挷遄B接器146和147之間直接交叉連接,并在25針插座148提供接口連接112的電話線路。這種直接交叉連接使話機(jī)設(shè)備在計(jì)算機(jī)100關(guān)閉時(shí)能夠作為常規(guī)電話操作。為了這個(gè)目的,最好在手機(jī)114中為話機(jī)設(shè)備提供常規(guī)的輔助按鈕音鍵盤(未表示)以及有關(guān)的撥號(hào)音產(chǎn)生電路,從而甚至當(dāng)計(jì)算機(jī)100不工作時(shí),也允許在手機(jī)手動(dòng)地?fù)艹鋈牒艚??;蛘撸I盤126的顯示鍵開關(guān)與撥號(hào)音產(chǎn)生器互連,當(dāng)計(jì)算機(jī)100關(guān)閉、不能使用調(diào)制解調(diào)器144產(chǎn)生撥號(hào)信號(hào)時(shí),能產(chǎn)生撥號(hào)音。類似地,電話機(jī)設(shè)備110包括振鈴電路(未表示),當(dāng)計(jì)算機(jī)100不工作時(shí),用于響應(yīng)電話線路電路102上出現(xiàn)的振鈴信號(hào)提供可聽的鈴聲,而且正如后面所討論的,響應(yīng)來(lái)自計(jì)算機(jī)100的振鈴命令在話機(jī)設(shè)備上提供振鈴信號(hào)。
軟件個(gè)人計(jì)算機(jī)100包括常規(guī)的海量存儲(chǔ)子系統(tǒng)(未表示),一般是磁性“硬”驅(qū)動(dòng)器,對(duì)程序文件提供永久存儲(chǔ),可以裝載入計(jì)算機(jī)的隨機(jī)存儲(chǔ)存儲(chǔ)器以供處理器執(zhí)行。這些程序文件由操作系統(tǒng)裝載,形成圖1中按框圖形式說(shuō)明的同時(shí)駐留、交互作用的模塊。這些模塊包括以162表示的監(jiān)控程序,它作為系統(tǒng)啟動(dòng)時(shí)自動(dòng)加載的程序而工作,此后只要計(jì)算機(jī)100加電就作為激活程序而連續(xù)駐留,盡管通常是休眠的,以便支持話機(jī)設(shè)備110的操作。
電話應(yīng)用程序接口庫(kù)164,例如構(gòu)成Windows 95操作系統(tǒng)一部分的TAPI動(dòng)態(tài)鏈接庫(kù)(DLL),Microsoft Corp.,Remond,WA銷售;電話設(shè)備業(yè)務(wù)提供者動(dòng)態(tài)鏈接庫(kù)166,它作為提供接口程序的硬件設(shè)備驅(qū)動(dòng)而操作,在話機(jī)硬件接口電路142和TAPI DLL 164之間提供通信;線路設(shè)備業(yè)務(wù)提供者動(dòng)態(tài)鏈接庫(kù)167,例如作為Windows 95一部分的UniModem SPI,它在數(shù)據(jù)/話音/傳真調(diào)制解調(diào)器144和TAPIDLL 164所定義的線路設(shè)備業(yè)務(wù)提供者接口(線路設(shè)備SPI)168之間提供設(shè)備驅(qū)動(dòng)接口;配置對(duì)話框程序169,它在監(jiān)控程序或諸如應(yīng)用程序170這樣的任何其它運(yùn)行應(yīng)用程序請(qǐng)求用戶提供配置信息時(shí),由話機(jī)設(shè)備SPIDLL 165,通過(guò)TAPI DLL 164和話機(jī)設(shè)備業(yè)務(wù)提供者165對(duì)配置對(duì)話框進(jìn)行請(qǐng)求,從而激活該程序;以及一個(gè)或多個(gè)附加應(yīng)用程序,由程序170所表示,它利用TAPI DLL提供的業(yè)務(wù)提供電話管理服務(wù)。
監(jiān)控程序162優(yōu)選地使用標(biāo)準(zhǔn)接口協(xié)議(例如TelephonyApplication Program Interface(電話應(yīng)用程序接口,即TAPI),Microsoft Corp.和Intel Corp.聯(lián)合開發(fā))與調(diào)制解調(diào)器144和話機(jī)設(shè)備接口電路140通信?;蛘逳ovell,Inc.發(fā)布的the TelephonyServices Application Program Interface(電話業(yè)務(wù)應(yīng)用程序接口,即TSAPI)以及其它也可以類似地使用,提供實(shí)際上相同的功能。發(fā)明的實(shí)施例,正如下面更詳細(xì)描述的,使用在Microsoft’s Windows95操作環(huán)境中實(shí)現(xiàn)、并在Microsoft WIN32 System Development Kit(SDK),“Telephony Application Programming Interface(電話應(yīng)用編程接口,即TAPI)”(作為Miccrosoft Development Library由Microsoft Corp.,Remond,Wa發(fā)表)中詳細(xì)描述的TAPI接口。
監(jiān)控程序162采取WIN32應(yīng)用程序形式,根據(jù)Microsoft Win32Programmer’s Reference(1995)(Microsoft Corp.發(fā)表,它完整描述了Win32應(yīng)用程序接口(API)的組成部分,包括功能及有關(guān)數(shù)據(jù)類型、宏、結(jié)構(gòu)和消息)中提出的軟件設(shè)計(jì)規(guī)范而操作。MicrosoftWin32 Programmer’s Reference(微軟視窗32程序員的參考書)是定義基于Win32應(yīng)用的組成部分的說(shuō)明性信息定義源。
正如下面結(jié)合圖2更詳細(xì)描述的,監(jiān)控程序162通過(guò)響應(yīng)與電話管理操作有關(guān)的Window消息、通過(guò)對(duì)構(gòu)成Windows 95操作系統(tǒng)一部分的TAPI.DLL 164進(jìn)行功能調(diào)用、并通過(guò)結(jié)合響應(yīng)TAPI.DLL 164功能調(diào)用的callback函數(shù),控制調(diào)制解調(diào)器144和話機(jī)設(shè)備110的操作。Microsoft Corp.發(fā)表的The Win32 Telephony(TAPI)Programmer’s Reference(視窗32電話(TAPI)程序員的參考書)(1995),定義了Microsoft Windows Telephony應(yīng)用程序接口(API),提供了使應(yīng)用開發(fā)者向?yàn)镸icrosoft Win32開發(fā)的應(yīng)用(API)增加電話通信的服務(wù)。附加信息,包括說(shuō)明應(yīng)用程序使用TAPI實(shí)現(xiàn)電話功能所用的機(jī)制的示范程序,在如下文章中描述“Tappinginto TAPI”,Nancy Winnick Cluts,Microsoft Developer NetworkNews,Vol 4.No.6(Nov.-Dec.1995);“Creating a TAPI ConnectionUsing CtapiConnection,(利用Ctapi連接產(chǎn)生TAPI連接)”NancyWinnick Cluts,Microsoft Developer Network News,Vol 5.No.1(Jan.1996);以及“Developing Applications Using the WindowsTelephony API(利用視窗電話API開發(fā)應(yīng)用程序)”,Toby Nixon,MSDN Conferences/Tech*Ed 1994/Microsoft At Work(1994)。
監(jiān)控程序162優(yōu)選地在Windows 95操作系統(tǒng)初始化時(shí)、在系統(tǒng)啟動(dòng)時(shí)加載。監(jiān)控程序162和所有Windows 95應(yīng)用程序一樣,在它的主程序中,包括重復(fù)調(diào)用WIN32函數(shù)GetMessage的消息循環(huán)??刂瞥绦?62在后臺(tái)操作,它的唯一目的是響應(yīng)傳遞到程序線程消息隊(duì)列的window消息而執(zhí)行代碼。如果沒有未決消息,操作系統(tǒng)就將線程置入休眠并且不再將CPU時(shí)間分配給該線程。當(dāng)消息出現(xiàn)在線程的消息隊(duì)列中時(shí),系統(tǒng)喚醒該線程。GetMessage將消息從隊(duì)列復(fù)制到&msg變量,然后Windows執(zhí)行函數(shù)DispatchMessage,將消息數(shù)據(jù)傳遞到控制程序162的window程序。
TAPI用于通知事件應(yīng)用程序的機(jī)制基于函數(shù)callbacks,TAPI為這些callbacks定義參數(shù)概要。當(dāng)事件發(fā)生時(shí),應(yīng)用程序的callback函數(shù)從應(yīng)用程序線程中喚醒(此時(shí)應(yīng)用程序調(diào)用GetMessage函數(shù)),提供一般的、全功能的運(yùn)行環(huán)境,所有WindowsAPIs可以安全地在這個(gè)環(huán)境中調(diào)用。為了執(zhí)行必須異步處理地執(zhí)行操作,TAPI提供應(yīng)答callback機(jī)制。對(duì)應(yīng)用程序進(jìn)行的應(yīng)答callback傳遞請(qǐng)求ID和錯(cuò)誤指示。這個(gè)應(yīng)答的有效的錯(cuò)誤指示與那些為有關(guān)請(qǐng)求而同步返回的指示相同,或者以0代表成功。只有發(fā)出請(qǐng)求的應(yīng)用程序才會(huì)收到應(yīng)答callback,但是當(dāng)該請(qǐng)求引起設(shè)備或呼叫狀態(tài)的改變時(shí),其它有關(guān)的應(yīng)用程序也可以接收與事件有關(guān)的消息。TAPI保證應(yīng)答callback對(duì)每個(gè)同步操作的請(qǐng)求而進(jìn)行,而且它規(guī)定了同步通知哪些函數(shù)以及異步通知哪些函數(shù)。
從TAPI發(fā)送到應(yīng)用程序的消息利用應(yīng)用程序環(huán)境中應(yīng)用程序提供的callback函數(shù),lineCallbackFunc。當(dāng)應(yīng)用程序使TAPI函數(shù)調(diào)用lineInitalize或phoneInitialize時(shí),它通過(guò)傳遞其指針作為參數(shù)而指定一個(gè)callback函數(shù)。Callback消息總是包含指向有關(guān)對(duì)象(話機(jī)、線路、或呼叫)的句柄。Callback的參數(shù)概要包括多目的句柄參數(shù),用于將句柄傳遞到有關(guān)的話機(jī)、線路、或呼叫。Callback函數(shù)可以從傳遞到callback的消息確定句柄的類型。某些消息用于通知應(yīng)用程序有關(guān)對(duì)象狀態(tài)的改變。這些消息提供對(duì)象句柄并給出哪個(gè)狀態(tài)項(xiàng)已經(jīng)改變的指示。應(yīng)用程序可以調(diào)用恰當(dāng)?shù)膶?duì)象的“get status”函數(shù),得到對(duì)象的全部狀態(tài)。
來(lái)自TAPI、代表線路設(shè)備事件(標(biāo)志調(diào)制解調(diào)器144和電話線路102的狀態(tài)和功能的事件)的消息由UniModem線路設(shè)備服務(wù)提供者167來(lái)產(chǎn)生。類似地,標(biāo)志電話機(jī)設(shè)備110的狀態(tài)和功能的話機(jī)設(shè)備事件由話機(jī)設(shè)備服務(wù)提供者140產(chǎn)生。這些服務(wù)提供者都以設(shè)備驅(qū)動(dòng)的形式操作,支持用于硬件事件通信的TAPI SPI并通過(guò)TAPI線路設(shè)備SPI和TAPI電話機(jī)設(shè)備SPI給TAPI DLL發(fā)信號(hào)。有關(guān)Windows 95設(shè)備驅(qū)動(dòng)的結(jié)構(gòu)和操作的詳細(xì)信息通常包括在The Device DriverProgrammer’s Reference(設(shè)備驅(qū)動(dòng)器程序員參考書),MicrosoftCorp.(1995)中,它詳述了與Microsoft Windows 95一起使用的基于Windows的設(shè)備驅(qū)動(dòng)的結(jié)構(gòu)和操作。Microsoft Windows 95 DeviceDriver Development Kit(微軟視窗95設(shè)備驅(qū)動(dòng)器開發(fā)配套程序),Microsoft Corp.(1995)提供了其它通常用于實(shí)現(xiàn)設(shè)備驅(qū)動(dòng)的細(xì)節(jié)和例子,有關(guān)適于將健全的話音/數(shù)據(jù)/傳真調(diào)制解調(diào)器與TAPI SPI接口的線路設(shè)備驅(qū)動(dòng)程序的組成的特殊信息可以在Windows 95Modem Development Kit(視窗95調(diào)制解調(diào)器開發(fā)配套程序(MDK),Microsoft Corp.(1995)中找到,它提供了工具、樣本INF文件、以及為AT(數(shù)據(jù))和AT+V(話音)命令調(diào)制解調(diào)器建立和測(cè)試Windows95格式的INF文件所需的信息。Windows 95 INF文件是調(diào)用WindowsTelephony API(TAPI)進(jìn)行數(shù)據(jù)/傳真/話音呼叫的程序使用調(diào)制解調(diào)器所必須的,包括Windows 95 applets HyperTerminal,Dial-up Networking,Phone Dialer,以及其它為Windows95所寫的Win32通信應(yīng)用程序。
正如上面所注意到的,圖1所見的發(fā)明優(yōu)選實(shí)施例,可以使用市場(chǎng)有售的數(shù)據(jù)/話音/傳真調(diào)制解調(diào)器140以及常規(guī)的線路設(shè)備服務(wù)提供者DLL 167。但是應(yīng)該理解TAPI線路服務(wù)可以由其它常規(guī)方式提供,例如高速ISDN連接、到共享調(diào)制解調(diào)器或PBX的網(wǎng)絡(luò)接口、以及類似物,采用實(shí)際上對(duì)話機(jī)設(shè)備110和監(jiān)控程序162的操作透明的方式。線路設(shè)備服務(wù)提供者167因此可以采取作為Windows 95一部分提供的通用調(diào)制解調(diào)器驅(qū)動(dòng)程序(UniModem)的形式,一種與TAPI結(jié)合為數(shù)據(jù)和傳真調(diào)制解調(diào)器以及話音提供業(yè)務(wù)的操作系統(tǒng)層,使得用戶和應(yīng)用程序開發(fā)者不必為撥號(hào)、應(yīng)答和配置調(diào)制解調(diào)器而處理困難的調(diào)制解調(diào)器AT命令。而且,UniModem通過(guò)使用調(diào)制解調(diào)器硬件廠商所寫的微驅(qū)動(dòng)程序自動(dòng)執(zhí)行這些任務(wù),大多數(shù)調(diào)制解調(diào)器都作為Windows 95的一部分提供這些驅(qū)動(dòng)程序,或者由調(diào)制解調(diào)器廠商單獨(dú)提供。UniModem既是VCOMM設(shè)備驅(qū)動(dòng)程序(支持DOS遺留的程序)也是TAPI服務(wù)提供者。其它服務(wù)提供者(例如,支持其它設(shè)備的那些,諸如ISDN適配器、PBX系統(tǒng)的電話、或AT-命令調(diào)制解調(diào)器)也可以與TAPI一起使用并藉此供話機(jī)設(shè)備110所使用。
電話機(jī)設(shè)備服務(wù)提供者165類似地作為WIN32設(shè)備驅(qū)動(dòng)器而操作,但是執(zhí)行更有限的功能集合,支持TAPI話機(jī)設(shè)備接口內(nèi)置函數(shù)以及處理所有如下單元的協(xié)議掛機(jī)開關(guān)/轉(zhuǎn)換器。Windows 95 Telephony API識(shí)別可以帶幾個(gè)轉(zhuǎn)換器的電話機(jī)設(shè)備,這些轉(zhuǎn)換器可以在應(yīng)用程序(例如,監(jiān)控程序162)的控制下或手工用戶控制來(lái)激活和關(guān)閉(摘機(jī)或掛機(jī))。TAPI處理出現(xiàn)在電話機(jī)設(shè)備110中的兩種掛機(jī)開關(guān)設(shè)備手機(jī)114--必須手動(dòng)地從掛機(jī)開關(guān)120上提起并放在用戶耳旁的傳統(tǒng)的話筒及耳機(jī)組合,以及揚(yáng)聲器130和拾取式麥克風(fēng)132的組合構(gòu)成的喇叭揚(yáng)聲器--使用戶能夠進(jìn)行免提呼叫。電話機(jī)設(shè)備110的喇叭揚(yáng)聲器的話機(jī)開關(guān)狀態(tài)可以手動(dòng)改變以及通過(guò)監(jiān)控程序162響應(yīng)電話機(jī)中的顯示鍵按下來(lái)改變。
音量控制/增益控制/靜音。每個(gè)掛機(jī)開關(guān)設(shè)備是一對(duì)揚(yáng)聲器和麥克風(fēng)單元。TAPI API提供揚(yáng)聲器單元的音量控制和靜音以及麥克風(fēng)單元的增益控制或靜音。
振鈴器。通常通過(guò)一個(gè)鈴用于提示用戶的裝置。電話機(jī)設(shè)備110優(yōu)選地包括振鈴提示器,可以以多種模式或方式振鈴,提供由控制程序162的命令所確定并通過(guò)TAPI發(fā)送到電話機(jī)設(shè)備110中的振鈴電路的獨(dú)特的振鈴。
顯示。圖1所示的LCD顯示面板134,在TAPI顯示功能支持下向用戶提供可見的消息。TAPI兼容的電話機(jī)顯示由它的行數(shù)和列數(shù)所標(biāo)志。在這里描述的說(shuō)明性實(shí)施例中,顯示由單個(gè)LCD面板124組成,顯示一個(gè)單個(gè)的、從控制程序162通過(guò)TAPI顯示接口傳遞的24個(gè)字符的字母數(shù)字串。
按鈕和燈。TAPI按鈕接口用于支持鍵盤126中12個(gè)后照明的顯示鍵陣列。無(wú)論何時(shí)用戶按下鍵盤126上的按鈕,TAPI就向應(yīng)用程序(例如,監(jiān)控程序162)報(bào)告相應(yīng)的按鈕被按下。TAPI按鈕-燈ID標(biāo)識(shí)一對(duì)按鈕和燈。每個(gè)按鈕中的白色后照明源被認(rèn)為是與構(gòu)成一種這樣的TAPI“對(duì)”的有關(guān)物理鍵盤按鈕相關(guān)聯(lián)的燈。TAPI也提供沒有按鈕或沒有燈的按鈕-燈組合,因此使用兩組12個(gè)“無(wú)按鈕”組合處理顯示鍵的綠和紅后照明源。后照明燈因此要單獨(dú)由API控制,可以通過(guò)單獨(dú)改變?nèi)N后照明燈顏色(白、紅和綠)中每一個(gè)的開關(guān)頻率為其提供關(guān)閉、快閃、閃爍或快閃-閃爍模式,以不同模式來(lái)照亮。這種模式和顏色控制產(chǎn)生特殊的視覺效果,用于向用戶指示特殊的特性和功能。每個(gè)燈、顏色和模式可以單獨(dú)地使用用于識(shí)別被控?zé)舻腡API按鈕-燈ID來(lái)設(shè)置。
數(shù)據(jù)區(qū)。TAPI還在電話機(jī)設(shè)備中提供了可尋址存儲(chǔ)區(qū)的裝載。一般在TAPI環(huán)境中用于存儲(chǔ)可以從電話機(jī)設(shè)備下載及/或上載的電話機(jī)設(shè)備指令代碼或數(shù)據(jù),本發(fā)明也利用這種TAPI數(shù)據(jù)移動(dòng)機(jī)制,從控制程序162向鍵盤126中的顯示鍵發(fā)送單個(gè)的顯示鍵位圖,正如下面更詳細(xì)描述的內(nèi)容。
除了利用上述TAPI進(jìn)行從應(yīng)用程序(例如,控制程序162)到電話機(jī)設(shè)備110的控制命令交換,TAPI也用于向應(yīng)用程序發(fā)送有關(guān)鍵盤上鍵的激活信息。當(dāng)一個(gè)按鈕按下時(shí),PHONE_BUTTON消息發(fā)送到應(yīng)用程序callback函數(shù)。這條消息的參數(shù)是電話機(jī)設(shè)備的句柄和所按按鈕的按鈕-燈ID。給鍵盤按鈕(一般標(biāo)為“0”到“9”,以及“#”)分配了固定的按鈕+白燈ID,0到11。這些按鈕消息表示何時(shí)按鈕被按下以及何時(shí)被放開,使監(jiān)控程序能夠維護(hù)對(duì)每個(gè)按鈕的軟件狀態(tài)指示,允許監(jiān)控程序識(shí)別并響應(yīng)兩個(gè)或更多的被同時(shí)按下的按鈕,產(chǎn)生特殊的效應(yīng),可以按照在計(jì)算機(jī)鍵盤上同時(shí)按下鍵相同的方式分配特殊的意義。
監(jiān)控程序162如圖2所示響應(yīng)每個(gè)按鍵操作。用戶使用鍵盤126所進(jìn)行的每個(gè)擊鍵操作(在圖2中以202表示)向程序162的callback函數(shù)204發(fā)送PHONE BUTTON消息。Callback函數(shù)204檢查輸入消息,將輸入消息中標(biāo)識(shí)的按鈕ID所關(guān)聯(lián)的開關(guān)狀態(tài)變量設(shè)置為一個(gè)值,該值由該消息是否表示按鈕已經(jīng)按下或釋放來(lái)確定。表示按鈕已經(jīng)按下的消息傳遞到消息例程函數(shù)206,該函數(shù)響應(yīng)存儲(chǔ)在208的模式狀態(tài)變量的當(dāng)前值而調(diào)用特定的消息處理函數(shù)。
模式狀態(tài)變量208包括預(yù)定的順序值集合中的一個(gè),每個(gè)值表示一個(gè)特定的機(jī)器狀態(tài)。消息處理函數(shù)與每個(gè)狀態(tài)相關(guān)聯(lián)。圖2表示八個(gè)這樣的函數(shù),以211-218表示。當(dāng)機(jī)器狀態(tài)處于特定模式時(shí),每個(gè)模式函數(shù)211-218翻譯并響應(yīng)來(lái)自鍵盤126的按鍵信號(hào)。因此,當(dāng)模式狀態(tài)變量處于MAIN模式時(shí),每個(gè)輸入PUSH-BUTTON消息被路由選擇到MAIN消息處理函數(shù)211;當(dāng)模式狀態(tài)為MANUAL時(shí),路由選擇函數(shù)將PHONE_BUTTON消息作為參數(shù)傳遞到MANUAL消息處理函數(shù)212,依次類推。
在很多情況下,消息處理函數(shù)通過(guò)切換模式狀態(tài)來(lái)響應(yīng)特定的按鍵。模式狀態(tài)改變通過(guò)如下步驟完成(1)將模式狀態(tài)變量208設(shè)置為新值,藉此改變輸入消息的路由選擇;(2)向鍵盤126發(fā)送一組新的按鈕圖形顯示以及后照明燈設(shè)置;(3)發(fā)送新的字母數(shù)字串,用于LCD板124的顯示。所說(shuō)明的按鈕和LCD顯示在附圖的圖3-10中表示,這些圖表示了八個(gè)所說(shuō)明的模式狀態(tài)中每一個(gè)所使用的按鈕圖形以及字母數(shù)字顯示,它們相應(yīng)的消息處理函數(shù)如下表按鈕模式狀態(tài) 消息顯示描述 處理圖3 主(Main)(空閑態(tài)) 211圖4 手動(dòng)撥號(hào)(Manual Dialing) 212圖5 最近被呼叫方(Recently Cailed Parties) 213圖6 1級(jí)目錄(Directory Level 1)214圖7 2級(jí)目錄(Directory Level 2)215圖8 3級(jí)目錄(Directory Level 3)216圖9 呼叫等待建立(Call Waiting Setup) 217圖10呼叫在進(jìn)行(Call in Progress) 218當(dāng)監(jiān)控程序初始化時(shí),它將電話機(jī)設(shè)備置于MAIN模式狀態(tài)。此外,如果系統(tǒng)空閑(由一段預(yù)定時(shí)間過(guò)后沒有擊鍵活動(dòng)來(lái)標(biāo)識(shí))監(jiān)控程序162就自動(dòng)將話機(jī)設(shè)備返回MAIN(空閑)模式狀態(tài)。
每次監(jiān)控程序?qū)㈦娫挋C(jī)設(shè)備置于任何新的模式狀態(tài),它都至少執(zhí)行如下動(dòng)作(1)ModeState變量設(shè)置為表示新模式狀態(tài)的新值,使得此后所有PHONE_BUTTON消息都路由選擇到恰當(dāng)?shù)哪J綘顟B(tài)消息處理例程211-220。
(2)新的字母數(shù)字串發(fā)送到圖1所示的顯示124。TAPI提供對(duì)電話機(jī)顯示的訪問(wèn),使用函數(shù)調(diào)用phoneSetDisplay向打開的電話機(jī)設(shè)備110的顯示124寫入信息來(lái)重寫電話機(jī)的顯示。
(3)一組新的12位圖發(fā)送到鍵盤124的12個(gè)鍵顯示。Telephony API將話機(jī)設(shè)備劃分為具有一個(gè)或多個(gè)下載或上載區(qū)。每個(gè)區(qū)域由范圍從0到話機(jī)所能提供的數(shù)據(jù)區(qū)數(shù)減1的數(shù)字來(lái)標(biāo)識(shí)。每個(gè)區(qū)域的大小可以改變而且數(shù)據(jù)本身的格式是設(shè)備特定的。在所說(shuō)明的實(shí)施例中,12個(gè)下載區(qū)留做單色位圖,每個(gè)比特表示給定象素是ON還是OFF。32×16(512)比特的鍵顯示分辨率為提供有意義的功能識(shí)別提供了足夠的分辨率,但是更多的描述性信息(例如隨后要討論的在快速撥號(hào)目錄中顯示的被叫方姓名)可以使用更大的位圖來(lái)提供。在如下例子中,假設(shè)以64×64比特顯示,需要設(shè)計(jì)4096比特(512字節(jié))TAPI下載區(qū)。TAPI phoneSetData函數(shù)將一組緩存數(shù)據(jù)下載到電話機(jī)中的給定數(shù)據(jù)區(qū)。每個(gè)模式狀態(tài)的12個(gè)位圖存儲(chǔ)在以模式狀態(tài)值和按鈕號(hào)0-11索引的二維距陣中。當(dāng)進(jìn)入新模式狀態(tài)時(shí),監(jiān)控程序調(diào)用phoneSetData 12次以便將與新模式狀態(tài)關(guān)聯(lián)的12個(gè)鍵的位圖傳遞到鍵盤126。
(4)當(dāng)進(jìn)入新模式狀態(tài)時(shí),使用TAPI phoneSetLamp將每個(gè)鍵的后照明復(fù)位,以給定的燈照明模式點(diǎn)亮特定的打開話機(jī)設(shè)備上的燈。TAPI支持如下燈模式規(guī)定PHONELAMPMODE_OFF-燈關(guān)閉PHONELAMPMODE_STEADY-燈繼續(xù)點(diǎn)亮PHONELAMPMODE_FLASH-“Flash”意味著緩慢地開關(guān)PHONELAMPMODE_FLUTTER-“Flutter”意味著快速地開關(guān)PHONELAMPMODE_BROKENFLUTTER-“Broken flutter”是flash和flutter的重合;以及PHONELAMPMODE_WINK-燈慢閃爍。
圖3表示所說(shuō)明的MAIN(主)(空閑)模式中呈現(xiàn)的位圖顯示。在圖3-10中,LCD顯示124所提供的字母數(shù)字顯示被表示為緊靠在12鍵位圖顯示的上面。在MAIN模式狀態(tài)中,LCD顯示表示每天的當(dāng)前日期和當(dāng)前時(shí)間,監(jiān)控程序中的定時(shí)器例程每分鐘對(duì)其更新,該例程從系統(tǒng)得到日期和時(shí)間,構(gòu)造并格式化顯示串,使用TAPI函數(shù)調(diào)用phoneSetDisplay將所得的串發(fā)送到顯示器。
在MAIN模式狀態(tài)中,鍵盤上的12個(gè)按鈕顯示圖3所示的位圖,所有從TAPI接收的PHONE_BUTTON消息被路由選擇到以211表示的MAIN例程,該例程當(dāng)識(shí)別到各個(gè)按鈕號(hào)0-11時(shí)按如下操作按鈕0按下請(qǐng)求手動(dòng)撥號(hào)(Manual Dialing),系統(tǒng)被置于MANUAL(手動(dòng))模式狀態(tài),得到圖4所示的顯示,而且所有PHONE_BUTTON消息此后都由MANUAL消息處理器212來(lái)處理。
按鈕1按下用戶請(qǐng)求重?fù)茏詈髶艿奶?hào)碼。每個(gè)所撥號(hào)碼都由監(jiān)控程序存儲(chǔ)在可撥的電話地址串變量LAST_DIALED中,可使用lineMakeCall或LineDial函數(shù)調(diào)用將它送至TAPI。然后模式狀態(tài)切換到INPROGRESS(在進(jìn)程中)模式(圖10),將包含“Dialing”和LAST_DIALED串變量連接組合的串發(fā)送到顯示124,以便覆蓋進(jìn)入INPROGRESS模式時(shí)隱合的顯示消息。
按鈕2按下用戶請(qǐng)求顯示最近所撥的號(hào)碼,通過(guò)進(jìn)入PREVIOUS(先前)模式狀態(tài)來(lái)實(shí)現(xiàn),該狀態(tài)的顯示示于圖5。當(dāng)呼叫建立時(shí),由監(jiān)控程序162將圖3所示的所顯示的9個(gè)最近被叫方存儲(chǔ)在永久存儲(chǔ)數(shù)據(jù)庫(kù)中的最近使用棧中。本發(fā)明最有用的特性之一是能夠可視地將可呼叫方的標(biāo)識(shí)與一個(gè)鍵相關(guān)聯(lián)。如圖3和5所示,將9個(gè)最近被叫方中所選一個(gè)重?fù)艿娜蝿?wù)只包括兩次按鍵,第一次按標(biāo)為“RedialPrev.”的鍵,隨后鍵盤上顯示出9個(gè)最近的被叫方,然后按所要被叫方的鍵,不需要接觸計(jì)算機(jī)鍵盤、啟動(dòng)特定電話管理程序、或者以鼠標(biāo)操作window對(duì)象。不需要計(jì)算機(jī)技術(shù),兒童可以按照完全熟悉而且直覺的方式很容易地理解并使用該系統(tǒng)。
按鈕3按下用于請(qǐng)求訪問(wèn)多級(jí)電話本,該電話本采用常規(guī)的關(guān)系數(shù)據(jù)庫(kù)(未表示)的形式,在計(jì)算機(jī)100中永久存儲(chǔ)并由控制程序162訪問(wèn)。按下標(biāo)為“Phore Book”的按鈕2,將模式狀態(tài)設(shè)置到LEVEL_1(1-級(jí)),產(chǎn)生圖6中所示的顯示,路由選擇保證PHONE_BUTTON消息到達(dá)Level-1消息處理例程214。在LEVEL_1模式中,用戶可以在圖6所示的各種子目錄之間選擇,包括如下可選子目錄按鈕(1)按照字母順序排列的商業(yè)設(shè)施內(nèi)部本地號(hào)碼,(2)按照工作組組織的相同本地號(hào)碼,(3)按可呼人的姓氏字母順序組織的外部電話號(hào)碼,(4)按公司名稱字母順序排列的外部號(hào)碼,(5)按地理位置字母順序排列的外部電話號(hào)碼。當(dāng)按下按鈕選擇按字母順序所組織的子目錄時(shí),控制程序162首先執(zhí)行一個(gè)子程序,其中包括向鍵盤發(fā)送圖7所示類型的鍵盤顯示,以便從用戶得到標(biāo)識(shí)電話本數(shù)據(jù)庫(kù)目錄的字母順序子部分的選擇。例如,如果用戶希望對(duì)名稱為“Alice Brookstone”的組織外人員呼叫,在MAIN模式狀態(tài)中首先要按下“Phone Book”鍵,呈現(xiàn)圖6的顯示。然后,用戶按下標(biāo)為“Outside be Name”的按鈕,產(chǎn)生圖7的顯示。接下來(lái),按下標(biāo)為“ABC”的按鈕,產(chǎn)生一串按姓氏的字母順序顯示的可呼叫方,如圖8所示,包括帶有顯示“Alice Brookstn”(縮寫了以便適應(yīng)64×64比特的顯示)的按鈕。按下該按鈕,將以前面表示的方式對(duì)她的電話號(hào)碼進(jìn)行呼叫,然后將她的標(biāo)識(shí)置入前面所討論的最近被叫方的棧中以及LAST_DIALED變量中,使得使用MAIN模式“Redial Last”和“Redial Prev.”按鈕可以提供她的名字和號(hào)碼。
按鈕4。通過(guò)按下MAIN模式狀態(tài)中的“Bill To”按鈕,用戶可以使用類似于上面所示的電話本查找過(guò)程的數(shù)據(jù)庫(kù)查找功能,以便標(biāo)識(shí)將來(lái)的呼叫將要被計(jì)費(fèi)的特定計(jì)費(fèi)帳號(hào)。當(dāng)在MAIN模式按下按鈕4時(shí),電話機(jī)設(shè)備被復(fù)位到BILLTO模式狀態(tài),鍵盤上出現(xiàn)圖7所示的字母碼成組顯示,除了LCD顯示以例如“Bill To Ajax.Corp.”這樣的顯示來(lái)表示當(dāng)前所選的帳號(hào)。如果用戶確定當(dāng)前設(shè)置是正確的,可以按下“Main Menu”或“Back”鍵,將系統(tǒng)返回到MAIN模式狀態(tài)。注意,為了給用戶提供一致的接口,三種功能總是出現(xiàn)在鍵盤同樣位置上“MAIN MENU”(將系統(tǒng)復(fù)位到MAIN模式狀態(tài)),“BACK”(將系統(tǒng)返回稱為當(dāng)前狀態(tài)的模式狀態(tài),可以是、也可以不是MAIN模式狀態(tài)),以及“NEXT”,(調(diào)用一個(gè)模式狀態(tài),該狀態(tài)確實(shí)包括附加選項(xiàng)并確實(shí)是當(dāng)前狀態(tài)的擴(kuò)展)。在查找功能情況下,例如實(shí)現(xiàn)“phone book”和“bill to”選項(xiàng)的那些功能,“NEXT”鍵用于連續(xù)地在給定的目錄級(jí)中階躍,一次9項(xiàng),當(dāng)?shù)竭_(dá)目錄級(jí)結(jié)尾時(shí)返回第一項(xiàng)。為了實(shí)現(xiàn)計(jì)帳功能,每次完成一個(gè)呼叫,監(jiān)控程序向計(jì)帳文件添加一個(gè)記錄,記錄與之進(jìn)行通信一方的標(biāo)識(shí)、呼叫開始和結(jié)束時(shí)間(從中可以確定持續(xù)時(shí)間以便計(jì)費(fèi))、以及帳號(hào)標(biāo)識(shí)(使用上面描述的Bill To鍵序列選擇)以便將呼叫歸類。實(shí)際的計(jì)費(fèi)報(bào)告可以在任何時(shí)候通過(guò)讀取存儲(chǔ)在累積計(jì)帳文件中的數(shù)據(jù)來(lái)產(chǎn)生。
如前面的例子所述,本發(fā)明實(shí)際上允許由無(wú)經(jīng)驗(yàn)的用戶通過(guò)簡(jiǎn)單地按下所標(biāo)的鍵以指示所需的功能來(lái)激活任何電話管理功能。正如圖3中所看到的顯示所說(shuō)明的,這些功能另外可以包括呼叫等待建立控制、語(yǔ)音信箱、呼叫轉(zhuǎn)發(fā)控制、喇叭擴(kuò)音器激活及控制、數(shù)據(jù)庫(kù)登錄功能、等等。
此外,如圖8中所示,當(dāng)系統(tǒng)處于INPROGRESS(在進(jìn)程中)模式狀態(tài)時(shí),顯示鍵盤和LCD可以用于控制進(jìn)行中呼叫的處理。按下圖8中可見的“Flash”按鈕,使CallProgress消息處理器218通過(guò)調(diào)用TAPI功能lineDrop、得到新?lián)芴?hào)音、并將系統(tǒng)復(fù)位到MAIN模式狀態(tài)以便允許發(fā)起新呼叫,從而結(jié)束當(dāng)前連接。按下“Hold”按鈕,不丟失連接地掛起當(dāng)前呼叫,如果有附加線路可用,允許同時(shí)進(jìn)行另一次通話。
注意操作系統(tǒng)所包含的TAPI DLL的能力允許多條不同的線路同時(shí)激活,并允許給定電話機(jī)設(shè)備可編程地與這種邏輯線路“連接”。類似地,本發(fā)明所強(qiáng)調(diào)的顯示鍵盤控制機(jī)制可以用于特別有利于控制Telephony SPI所定義的、不包括在基本電話子集中的“輔助業(yè)務(wù)”。這些業(yè)務(wù)包括所有在包括保持、轉(zhuǎn)移、會(huì)議、停頓等的現(xiàn)代PBX上可以找到的所謂輔助特性。根據(jù)在給定設(shè)置中連接的線路設(shè)備的業(yè)務(wù)能力,本發(fā)明可以通過(guò)TAPI DLL控制這些業(yè)務(wù),并可以詢問(wèn)一條線路或電話機(jī)設(shè)備是否提供輔助業(yè)務(wù)集合。注意單個(gè)輔助業(yè)務(wù)可能由多個(gè)功能調(diào)用和消息組成。
最后,正如控制揚(yáng)聲器音量和麥克風(fēng)增益、以及LCD板124顯示控制信息的鍵盤使用所說(shuō)明的,電話機(jī)設(shè)備內(nèi)任何裝置也可以通過(guò)從顯示鍵盤經(jīng)過(guò)TAPI向控制程序發(fā)送按鈕消息并以及從控制程序經(jīng)由TAPI向話機(jī)設(shè)備發(fā)送控制命令來(lái)控制。正如下面結(jié)合圖11所討論的,電話機(jī)設(shè)備本身可以包括可編程微控制器,控制話機(jī)的操作,TAPI接口一般用于從計(jì)算機(jī)向電話機(jī)設(shè)備下載特定的指令和命令以便實(shí)現(xiàn)特定的電話機(jī)設(shè)備功能。但是重要的是認(rèn)識(shí)到本發(fā)明所考慮的電話機(jī)設(shè)備提供自己的用戶接口,即使它可以根據(jù)連接計(jì)算機(jī)處理業(yè)務(wù)進(jìn)行調(diào)用。本發(fā)明的電話機(jī)設(shè)備被設(shè)計(jì)為在正常操作過(guò)程中模仿常規(guī)電話機(jī)的操作,以及在發(fā)生斷電或者LCD鍵盤中元件或控制LCD鍵盤的元件出故障時(shí),保持常規(guī)電話機(jī)的功能。
盡管監(jiān)控程序在后臺(tái)操作,不需要用戶注意,而且不需要在計(jì)算機(jī)100顯示屏上的用戶接口窗口,但是話機(jī)設(shè)備業(yè)務(wù)提供者165可調(diào)用的一個(gè)配置對(duì)話框提供了通過(guò)計(jì)算機(jī)100從用戶得到信息以及向用戶顯示信息的機(jī)制。正如TAPI API函數(shù)lineConfigDialog允許正運(yùn)行的應(yīng)用程序請(qǐng)求調(diào)用線路業(yè)務(wù)提供者DLL(例如UniModem)所提供的對(duì)話框(未表示),TAPI函數(shù)phoneConfigDialog使電話機(jī)設(shè)備業(yè)務(wù)提供者165顯示一個(gè)對(duì)話框(附屬于呼叫應(yīng)用的hwndOwner)以便用戶瀏覽和配置與電話機(jī)設(shè)備有關(guān)的參數(shù)。當(dāng)用戶用鼠標(biāo)“右擊”業(yè)務(wù)提供者通常方式下的最小化圖標(biāo)以便顯示一個(gè)包括“Configure”選項(xiàng)的彈出菜單時(shí),以169所示的電話機(jī)設(shè)備對(duì)話框可以由計(jì)算機(jī)100響應(yīng)來(lái)自監(jiān)控程序的請(qǐng)求而調(diào)用。或者,電話機(jī)上的顯示鍵可以在適當(dāng)?shù)哪J綘顟B(tài)顯示“Config”提示,然后監(jiān)控程序可以響應(yīng)該鍵的激活而調(diào)用phoneConfigDialog TAPI函數(shù)。
配置對(duì)話框169最好用于顯示位圖、目錄和計(jì)費(fèi)數(shù)據(jù)庫(kù)維護(hù)例程,提供一種機(jī)制,用于標(biāo)識(shí)并將圖形位圖文件與文字結(jié)合構(gòu)成每個(gè)模式狀態(tài)中每個(gè)鍵的可下載位圖,等等。用這種方式,電話機(jī)設(shè)備的功能可以由監(jiān)控程序或任何其它電話管理程序(圖1中用應(yīng)用程序170說(shuō)明)編程配置,這些程序包括用于調(diào)用任何TAPI兼容的應(yīng)用程序可支持的phoneConfigDialog函數(shù)的機(jī)制。用這種方式,那些并非設(shè)計(jì)為支持與顯示鍵盤126關(guān)聯(lián)的功能的應(yīng)用程序也可以配置話機(jī)設(shè)備110。
圖11是更詳細(xì)地表示電話機(jī)設(shè)備優(yōu)選實(shí)施例的邏輯框圖,該實(shí)施例在圖1中以模塊形式表示。電話機(jī)設(shè)備包括標(biāo)準(zhǔn)的多功能電子電話電路1102,后者由通過(guò)控制線路1105附加連接到LCD鍵盤接口電路1106的本身的微控制器1104來(lái)控制。通過(guò)DC電源1108供電,LCD鍵盤接口電路1106(圖12中詳細(xì)表示)通過(guò)25線并行接口連接器112連接到計(jì)算機(jī)100的擴(kuò)展卡140。LCD鍵盤接口電路1106也通過(guò)LCD驅(qū)動(dòng)電路1114(圖13中詳細(xì)表示)連接,以便從LCD鍵盤126上的12個(gè)LCD鍵開關(guān)1116集合接收擊鍵信號(hào),并向其發(fā)送顯示位圖,這12個(gè)LCD鍵開關(guān)按照熟悉的四行三列的按鍵電話機(jī)方式排列。
多功能電子電話機(jī)電路1102是常規(guī)的,而且在例如Fink,DonaldG。和Christiansen,Donald,eds(1989)的“The ElectronicsEngineers Handbook”(電子工程師手冊(cè)),第三版的22-85到22-86頁(yè)中描述。電話機(jī)1102在以1104表示的專用微控制器控制下操作。盡管本發(fā)明的優(yōu)選實(shí)施例利用了圖11所示的電子電話機(jī),但是也可以使用標(biāo)準(zhǔn)的共電制電話機(jī)電路。塞尖和塞環(huán)電話線1120和1122通過(guò)到計(jì)算機(jī)100的接口連接112中的兩根數(shù)據(jù)輸入線而連接到相連的撥號(hào)電話網(wǎng)絡(luò)。
電話機(jī)1102中的微計(jì)算機(jī)1104從各個(gè)功能電路(例如常規(guī)的按鍵鍵盤1124,正如前面所注意到的,這個(gè)鍵盤優(yōu)選地處于手機(jī)114中)接收信息,還通過(guò)控制其它電路(例如喇叭揚(yáng)聲器1126)來(lái)響應(yīng)這個(gè)信息。在本發(fā)明中,控制指令可以在監(jiān)控程序162的控制之下使用TAPI數(shù)據(jù)上載和下載命令另外地從計(jì)算機(jī)100下載,使微控制器1104可以用各種方式來(lái)編程。TAPI SPI將這些話機(jī)劃分成具有一個(gè)或多個(gè)下載及/或上載區(qū)。每個(gè)區(qū)由從0到話機(jī)所能提供的數(shù)據(jù)區(qū)數(shù)減1范圍內(nèi)的一個(gè)數(shù)來(lái)標(biāo)識(shí)。每個(gè)區(qū)的大小可以改變而且數(shù)據(jù)本身的格式對(duì)于特定的電話機(jī)微控制器來(lái)說(shuō)是設(shè)備專用的。這些話機(jī)功能下載區(qū)用數(shù)字來(lái)標(biāo)識(shí),這個(gè)數(shù)字不同于用于分配鍵顯示位圖的區(qū)域標(biāo)識(shí)符。TAPI功能TSPI_phoneSetData將一個(gè)緩存區(qū)數(shù)據(jù)下載到電話機(jī)設(shè)備RAM中的給定數(shù)據(jù)區(qū),該RAM可以優(yōu)選地用非易失存儲(chǔ)器實(shí)現(xiàn),使話機(jī)一旦初始化執(zhí)行特定功能,當(dāng)電源中斷時(shí)就不必重新編程。狀態(tài)數(shù)據(jù)和其它信息可以使用TAPI TSPI_phoneGetDate函數(shù)從微控制器1102上載,該函數(shù)將電話機(jī)設(shè)備中給定數(shù)據(jù)區(qū)內(nèi)容使用TAPI接口上載到運(yùn)行應(yīng)用程序處理空間中的指定緩存區(qū)。當(dāng)電話機(jī)設(shè)備的數(shù)據(jù)區(qū)改變時(shí),PHONE_STATUS消息發(fā)送到TAPI DLL的callback,以通知TAPI DLL狀態(tài)的改變。這條消息的參數(shù)提供對(duì)改變的指示。
圖12中詳細(xì)表示了LCD鍵盤接口電路1106的說(shuō)明性實(shí)施例,該實(shí)施例代表了所發(fā)布的、轉(zhuǎn)讓給Feltscope Limited的PCT申請(qǐng)No.WO95/12843中所示的LCD可重新設(shè)置圖標(biāo)的鍵盤接口的改進(jìn)。接口電路1106通過(guò)標(biāo)準(zhǔn)的25芯連接器1209連接到圖1所示的計(jì)算機(jī)100所連接的25線接口連接112,連接器1209連接到標(biāo)準(zhǔn)的25線接口電纜,如圖1和11中以112所示的。
信息從計(jì)算機(jī)100通過(guò)8根數(shù)據(jù)輸入線1206發(fā)送到話機(jī)設(shè)備110。緩存器1214將輸入線連接到三個(gè)數(shù)據(jù)鎖存器的輸入,該鎖存器在三個(gè)選通輸入線的控制下接收數(shù)據(jù)地址選通線1208、數(shù)據(jù)選通線1210、以及控制選通線1212。輸入數(shù)據(jù)線1206上的數(shù)據(jù)內(nèi)容根據(jù)所激活的選通線而不同。
數(shù)據(jù)從計(jì)算機(jī)100通過(guò)八根數(shù)據(jù)線1206接收,每次八比特,然后并行置入緩存器1214。如果激活地址選通線1208,放置在鎖存器1216中的輸入線1206上的數(shù)據(jù)指定鍵盤126的特定數(shù)據(jù)傳送目標(biāo)并標(biāo)識(shí)如下對(duì)象之一12個(gè)位圖目標(biāo)地址、12個(gè)白燈模式、12個(gè)紅燈模式、以及12個(gè)綠燈模式對(duì)。位圖目標(biāo)地址的出現(xiàn)表示512個(gè)數(shù)據(jù)字節(jié)(對(duì)于64×64象素的分辨率)將發(fā)送到所標(biāo)識(shí)的LCD鍵,而燈地址的出現(xiàn)表示出這樣一個(gè)燈,該燈的模式將由通過(guò)數(shù)據(jù)鎖存器1226所提供的燈模式碼來(lái)建立。
如果數(shù)據(jù)選通線1210被激活,數(shù)據(jù)線1206上接收的數(shù)據(jù)比特將包含8比特的位圖數(shù)據(jù)段(它被發(fā)送到特定的LCD鍵開關(guān)1116以便在LCD上產(chǎn)生特定的圖標(biāo)),或者包含8比特表示燈模式設(shè)置的碼。位圖和燈模式數(shù)據(jù)比特順序地從緩存器1214鎖存到鎖存器1226,再在時(shí)鐘1230的控制下傳遞到并串變換器1228,然后再到以前收入到鎖存器1216中的地址所指定的特定LCD鍵或燈寄存器。
鍵盤接口電路最好包括串行、非易失存儲(chǔ)器單元1222,其中存儲(chǔ)當(dāng)系統(tǒng)初始化、復(fù)位、或掉電時(shí)要在LCD鍵開關(guān)1116上顯示的缺省位圖。復(fù)位由計(jì)算機(jī)100通過(guò)25路連接器模塊1110上的RESET選通線1224來(lái)控制。缺省的位圖最好產(chǎn)生如附圖的圖4所示的鍵盤顯示(用于MANUAL模式狀態(tài)),除了“Main Menu”鍵顯示由星號(hào)“*”顯示來(lái)代替以便產(chǎn)生完全常規(guī)的按鍵鍵盤符號(hào)。通過(guò)將缺省的鍵盤顯示存儲(chǔ)在本地,即使當(dāng)計(jì)算機(jī)100斷開或掉電時(shí),顯示鍵盤126仍可以以常規(guī)方式用于操作電話設(shè)備。當(dāng)合適的控制碼裝入控制鎖存器1234時(shí),非易失存儲(chǔ)器1222可以使用數(shù)據(jù)選通1210從計(jì)算機(jī)100裝載。
如果控制選通線1212被激活,所接收的數(shù)據(jù)比特被傳遞到鎖存器1234,從那里再傳遞到電話機(jī)微控制器1104或等效的電話機(jī)設(shè)備機(jī)制以便控制包括喇叭揚(yáng)聲器、字母數(shù)字顯示板等如前面所示的那樣??刂七x通線1212用于向圖11中以1102說(shuō)明性表示的標(biāo)準(zhǔn)電話電路發(fā)送命令。當(dāng)控制選通線1212上加以脈沖時(shí),數(shù)據(jù)線1206將包含代表各種控制命令的比特并從緩存器1214鎖存到控制比特鎖存器1234,從此通過(guò)常規(guī)電路到微計(jì)算機(jī)1104或接口的其它部分。通過(guò)數(shù)據(jù)線1206傳遞到鎖存器1234的控制命令是電話機(jī)設(shè)備業(yè)務(wù)提供者所寫的、已放置在圖1所示的接口電路140中的I/O數(shù)據(jù)鎖存器(未表示)中的代碼,它包括打開或關(guān)閉喇叭揚(yáng)聲器1126以及改變喇叭揚(yáng)聲器或手機(jī)音量的代碼??刂泼钜部梢园ㄔ谖⒖刂破?104的控制之下發(fā)送到顯示LCD 1130的字符串。
附圖的圖13更詳細(xì)地說(shuō)明了示意性的鍵盤接口邏輯電路。12個(gè)相同LCD顯示鍵模塊中的兩個(gè)以框圖的形式在1302和1304表示。模塊1304包括時(shí)鐘信號(hào)輸入1311,用于將串行數(shù)據(jù)的傳遞按時(shí)鐘控制傳送入串行數(shù)據(jù)輸入1312,以便將顯示位圖和后照明燈模式選擇傳遞到鍵開關(guān)模塊。正如前面所注意的,如果每個(gè)鍵開關(guān)中的LCD板顯示64×64的象素位圖,當(dāng)數(shù)據(jù)使能線1320被鍵ID解碼器1322允許時(shí),512字節(jié)的數(shù)據(jù)串行傳遞到每個(gè)鍵開關(guān),鍵ID解碼器1322從鎖存器1216(圖12)接收按鈕/燈地址碼,該碼表示正通過(guò)串行數(shù)據(jù)線1312向其發(fā)送數(shù)據(jù)的特定的按鈕或后照明燈。如果地址碼表示一個(gè)燈正被裝載,串行數(shù)據(jù)線1312接收一個(gè)字節(jié),該字節(jié)規(guī)定哪個(gè)燈(白、紅或綠)狀態(tài)將要改變以及該燈的新模式。燈模式定時(shí)信號(hào)發(fā)生器1350分別通過(guò)共享的燈供電線路1313、1314和1315提供共享的快閃、閃爍和慢閃供電信號(hào)。
當(dāng)LCD鍵開關(guān)(例如以模塊1302所示的開關(guān)1350)已經(jīng)被用戶按下或釋放,只要鍵開關(guān)被按下或釋放,這個(gè)信息就被鍵ID編碼器1365轉(zhuǎn)換成適當(dāng)?shù)陌粹o動(dòng)作碼,通過(guò)接口112中的線路1236向所連接的計(jì)算機(jī)100發(fā)送一個(gè)中斷信號(hào)。接口微控制器1220也接收激活的特定LCD鍵開關(guān)1116的4比特地址(按鈕號(hào))。線路1242上的第5比特用于表示與該中斷關(guān)聯(lián)的鍵激活究竟是按鍵還是釋放鍵.這些輸出比特通過(guò)接口連接112傳遞到計(jì)算機(jī)100,在那里它們與系統(tǒng)總線中斷請(qǐng)求線的激活共同地被放置在系統(tǒng)數(shù)據(jù)總線上。電話機(jī)設(shè)備驅(qū)動(dòng)例程165包括中斷處理,將按鈕標(biāo)識(shí)格式化為針對(duì)TAPI按鈕消息而定義的格式并將該消息通過(guò)TAPI SPI傳遞到TAPI.DLL,后者再將PHONE_BUTTON消息通過(guò)應(yīng)用程序callback函數(shù)傳遞,以便由控制程序線程來(lái)處理。電話機(jī)設(shè)備也可以使用相同的硬件/軟件接口來(lái)提供來(lái)自微計(jì)算機(jī)1104的狀態(tài)信息,以便支持那些標(biāo)志所連接的電話機(jī)設(shè)備性質(zhì)和狀態(tài)的TAPI狀態(tài)報(bào)告功能。
在優(yōu)選的實(shí)施例中,12個(gè)LCD顯示鍵(例如以1302和1304所示的那些)將顯示放在鍵的活動(dòng)部分,而接觸部分在鍵的活動(dòng)部分后面。這種適于與本發(fā)明一起使用的活動(dòng)的、可重新設(shè)置圖標(biāo)的鍵開關(guān)是常規(guī)的,而且在例如轉(zhuǎn)讓給Dowty Electronic ComponentsLimited的歐洲專利No.EP-A-0 232 137中描述,進(jìn)一步的細(xì)節(jié)可以參考它。或者可以使用帶透明可移動(dòng)帽的具有固定顯示的LCD鍵開關(guān)實(shí)現(xiàn)本發(fā)明,例如美國(guó)專利No.4,897,651(DeMonte)或者英國(guó)專利No.GB-A-2 150 722(Muller)中所描述的。
鍵開關(guān)1302和1304當(dāng)按下時(shí)以按鍵方式物理上可移動(dòng)并給用戶提供觸覺反饋。因此,工作在手動(dòng)方式的顯示鍵開關(guān)完全與用戶在常規(guī)的按鍵電話機(jī)中所經(jīng)歷的熟悉的“按鍵”相一致。用于實(shí)現(xiàn)本發(fā)明所研究的顯示鍵開關(guān)的可移動(dòng)鍵的類似外觀和感覺是使用根據(jù)本發(fā)明的電話機(jī)設(shè)備直覺上舒適感的重要因素。
在已經(jīng)描述的說(shuō)明性發(fā)明實(shí)施例中,每個(gè)LCD鍵開關(guān)顯示可以選擇性地通過(guò)三種不同顏色(白、紅、和綠)中的每一種來(lái)做后照明,使用幾種照明模式完全照明、快閃爍、閃爍、慢閃爍或關(guān)閉。為鍵開關(guān)的后照明提供幾種不同的燈顏色是通過(guò)將兩個(gè)燈/空按鈕對(duì)與一個(gè)燈/激活按鈕對(duì)相關(guān)聯(lián)、然后單獨(dú)尋址每個(gè)燈來(lái)實(shí)現(xiàn)的。
后照明的獨(dú)立控制以及位圖顯示使得應(yīng)用程序開發(fā)者很容易地提供特殊功能。例如,不同顏色或燈模式可以用于將執(zhí)行功能的鍵與只用于顯示信息的鍵區(qū)別開來(lái)。或者,不同顏色可用于表示狀態(tài)情況;例如,當(dāng)喇叭揚(yáng)聲器和呼叫等待分別關(guān)閉時(shí),標(biāo)為“Spkr Phone”和“Call Waiting”的鍵可以用白色做后照明,當(dāng)所表示的功能打開時(shí)每個(gè)鍵可以用綠色做后照明。為了模仿按鍵電話,表示不同線路激活、保持等的鍵可以用白色、白色快閃、或紅色表示不同的狀態(tài)。
附圖的圖14表示發(fā)明的優(yōu)選實(shí)施例所維護(hù)和操作的主要數(shù)據(jù)結(jié)構(gòu)。這些數(shù)據(jù)結(jié)構(gòu)采取永久存入計(jì)算機(jī)100的海量存儲(chǔ)系統(tǒng)中的文件形式,并包括一個(gè)帳號(hào)代碼文件1410、鍵定義文件1420、模式狀態(tài)定義文件1430、以及電話本文件1440。
帳號(hào)代碼文件1410優(yōu)選地采取常規(guī)的關(guān)系數(shù)據(jù)庫(kù)文件的形式,包含有關(guān)特定電話呼叫所計(jì)費(fèi)的帳號(hào)信息。帳號(hào)代碼文件1410一般可以是現(xiàn)有的數(shù)據(jù)庫(kù),它由現(xiàn)有的記錄管理系統(tǒng)1441來(lái)維護(hù),該系統(tǒng)可以按通常方式調(diào)用或者根據(jù)電話機(jī)設(shè)備配置對(duì)話框169增加、編輯或刪除帳號(hào)標(biāo)識(shí)符記錄來(lái)調(diào)用。當(dāng)電話機(jī)設(shè)備110正工作時(shí),所選狀態(tài)中的所選鍵(例如,圖3中所描述的MAIN模式狀態(tài)中的“BillTo”鍵)使1460處的消息處理函數(shù)調(diào)用帳號(hào)表查找函數(shù)1461,后者從帳號(hào)代碼數(shù)據(jù)庫(kù)1410將所需的帳號(hào)標(biāo)識(shí)符返回1460處的消息處理函數(shù)。帳號(hào)代碼文件1410優(yōu)選地用可顯示的帳號(hào)標(biāo)識(shí)符域來(lái)索引,使得可以訪問(wèn)帳號(hào)標(biāo)識(shí)符并按名字的字母順序顯示,以便給用戶提供多級(jí)的顯示選項(xiàng)訪問(wèn)序列,如圖7和8所示。消息處理器將所收到的帳號(hào)標(biāo)識(shí)符轉(zhuǎn)換成合適的顯示位圖形式,以便發(fā)送到圖14中的1463所表示的鍵顯示器。盡管預(yù)定的顯示位圖可以存儲(chǔ)在每個(gè)帳號(hào)標(biāo)識(shí)符記錄文件中以便可視地指定每個(gè)帳號(hào),但是最好使用Windows GDI函數(shù)將數(shù)字或字符串帳號(hào)標(biāo)識(shí)符轉(zhuǎn)換成適合傳輸?shù)芥I顯示器1463的位圖數(shù)據(jù)結(jié)構(gòu)。當(dāng)用戶使用顯示鍵盤從文件1410選擇了特定的帳號(hào)代碼之后,該代碼此后就與連接開始和結(jié)束時(shí)間、被連接方的標(biāo)識(shí)(電話號(hào)碼)一起放在電話連接記錄中,所產(chǎn)生的連接記錄被添加到日志文件1465中,可由報(bào)表生成程序1467在任何時(shí)間處理以產(chǎn)生1469所示的計(jì)帳報(bào)表。
以類似方式,電話本文件1440可采取關(guān)系數(shù)據(jù)庫(kù)的形式由常規(guī)的電話本維護(hù)程序1471來(lái)維護(hù),該程序也可以通過(guò)電話業(yè)務(wù)提供者DLL 165從電話設(shè)備配置對(duì)話框169調(diào)用,這是通過(guò)執(zhí)行前述的應(yīng)用程序響應(yīng)TAPI phoneConfigDialog函數(shù)調(diào)用來(lái)進(jìn)行的。當(dāng)用戶在預(yù)定模式狀態(tài)按下預(yù)定鍵(例如,圖3所示的MAIN模式狀態(tài)中的“PhoneBook”鍵)時(shí),1460處的消息處理器調(diào)用電話本查找例程1473,后者便返回指定的可呼叫方的標(biāo)識(shí)符數(shù)據(jù),而且這個(gè)標(biāo)識(shí)符數(shù)據(jù)便在顯示鍵1463上顯示,從而允許用戶選擇被撥打方。
電話本數(shù)據(jù)庫(kù)文件1440也優(yōu)選地通過(guò)電話號(hào)碼來(lái)索引,使得當(dāng)主叫I.D.業(yè)務(wù)可由所連接的電話業(yè)務(wù)提供者提供時(shí),發(fā)起入呼呼叫的電話號(hào)碼可以與數(shù)據(jù)庫(kù)1440核對(duì),如果存在匹配,標(biāo)識(shí)入呼呼叫者的描述性文字可以從數(shù)據(jù)庫(kù)1440發(fā)送到圖1中124所示的LCD顯示板。用類似方式,數(shù)據(jù)庫(kù)1440中每個(gè)可呼叫方的簡(jiǎn)短文字描述以位圖形式由查找例程1473傳遞到顯示鍵1463,以允許用戶選擇被撥打方,并在連接建立之后,已經(jīng)建立連接方的較長(zhǎng)文字描述可以從數(shù)據(jù)庫(kù)1440傳輸?shù)絃CD顯示124(見圖10中所示的呼叫正在進(jìn)行模式狀態(tài)顯示的例子)。
為了從計(jì)算機(jī)100對(duì)電話機(jī)110的操作編程,用戶所請(qǐng)求的配置對(duì)話框169調(diào)用1480處的模式狀態(tài)編輯器,它在模式狀態(tài)定義數(shù)據(jù)庫(kù)1430中添加、刪除或編輯記錄。文件1430中的記錄如下定義每個(gè)模式狀態(tài)為每個(gè)模式狀態(tài)規(guī)定一個(gè)模式狀態(tài)變量、模式狀態(tài)激活時(shí)要顯示在面板124上的缺省字母數(shù)字串、以及一組12個(gè)鍵定義標(biāo)識(shí)符(其每個(gè)標(biāo)識(shí)文件1430中的特定鍵定義)。使用模式狀態(tài)編輯器1430,安裝者/開發(fā)者可以產(chǎn)生或修改新的模式狀態(tài),定義新的鍵組合。
單個(gè)鍵的外觀和功能使用鍵定義編輯器1483來(lái)確定,該編輯器可以從模式狀態(tài)編輯器1480調(diào)用。模式狀態(tài)編輯器最好以圖形形式顯示12個(gè)鍵和LCD板的外觀,標(biāo)識(shí)模式狀態(tài)名稱,并允許用戶在任何鍵顯示上“右擊”以便規(guī)定該鍵的特性。
鍵定義編輯器允許用戶使用Windows GDI從現(xiàn)有位象或從數(shù)據(jù)庫(kù)的規(guī)定域(該數(shù)據(jù)庫(kù)包含字符或圖元文件數(shù)據(jù),它們可以由Windows GDI、以及所存儲(chǔ)的表示該鍵每個(gè)后照明顏色的缺省后照明模式的代碼在執(zhí)行時(shí)刻轉(zhuǎn)換成位圖)中為每個(gè)鍵產(chǎn)生圖形位圖。
除了每個(gè)鍵的位圖和后照明模式定義,數(shù)據(jù)庫(kù)1425中的每個(gè)鍵定義記錄還包括按鍵時(shí)要執(zhí)行的函數(shù)說(shuō)明。為此,鍵定義編輯器1483最好包括腳本文件編輯器,它作于編輯說(shuō)明每個(gè)模式狀態(tài)由用戶激活每個(gè)鍵時(shí)執(zhí)行的函數(shù)、或函數(shù)序列的宏語(yǔ)言文件。在操作中,當(dāng)顯示和后照明模式在預(yù)定鍵定義記錄中定義的鍵被激活時(shí),按鍵消息處理器就在其鍵定義記錄中取得并解釋該鍵記錄的宏腳本,藉此完成以前編程的操作,包括將系統(tǒng)切換到新指定的模式狀態(tài)及/或執(zhí)行腳本文件中的語(yǔ)句所說(shuō)明的函數(shù)或函數(shù)序列。給定鍵的腳本文件可以很容易地編程以便執(zhí)行腳本驅(qū)動(dòng)的操作序列,以便撥號(hào)并登錄到遠(yuǎn)程計(jì)算機(jī),然后完成自動(dòng)文件傳輸功能以及類似功能。
當(dāng)幾個(gè)電話機(jī)設(shè)備用于一個(gè)連網(wǎng)環(huán)境中時(shí),帳號(hào)代碼文件1410、電話本文件1440、模式狀態(tài)定義文件1430以及鍵定義文件1420可以由所有設(shè)備共享,或者信息可以存儲(chǔ)在包含共享數(shù)據(jù)的共享文件以及包含特定用戶專用數(shù)據(jù)的本地存儲(chǔ)文件的組合中。
電話機(jī)設(shè)備的其它實(shí)施例和應(yīng)用通過(guò)繼續(xù)致力于本專利申請(qǐng)的母申請(qǐng)所揭示的電話機(jī)設(shè)備,已導(dǎo)致產(chǎn)生了優(yōu)選實(shí)施例軟件結(jié)構(gòu)的進(jìn)一步進(jìn)展、擴(kuò)展卡140和電話機(jī)設(shè)備110的低成本實(shí)現(xiàn)的進(jìn)展、以及對(duì)電話機(jī)設(shè)備可使用的環(huán)境和在那些環(huán)境中如何實(shí)現(xiàn)電話機(jī)設(shè)備的更深的理解。如下材料首先描述了軟件結(jié)構(gòu),然后是低成本實(shí)現(xiàn),最后是話機(jī)設(shè)備的其它環(huán)境。
優(yōu)選實(shí)施例的軟件結(jié)構(gòu)圖25圖25表示了目前優(yōu)選實(shí)施例中使用的軟件結(jié)構(gòu)2501。以最接近硬件2502的級(jí)別開始,存在一個(gè)設(shè)備驅(qū)動(dòng)2503,它是直接控制擴(kuò)展卡140的軟件。為此,使用了擴(kuò)展卡140的程序員接口,下面將更詳細(xì)地對(duì)其進(jìn)行描述。接著的上頁(yè)一級(jí)是TSP業(yè)務(wù)提供者2505,它提供Microsoft公司提供的電話API(TAPI)2507和設(shè)備驅(qū)動(dòng)2503之間的接口。應(yīng)用程序和TAPI 2507之間的接口由Sybil API庫(kù)2509提供。Sybil API庫(kù)2509中的例程直接由應(yīng)用程序調(diào)用,以便控制擴(kuò)展卡140和話機(jī)設(shè)備110。庫(kù)2509中使用的例程和數(shù)據(jù)結(jié)構(gòu)遵循標(biāo)準(zhǔn)編程接口,例如Microsoft DDE或OLE接口。在Microsoft操作系統(tǒng)中,單元2503到2509都由動(dòng)態(tài)鏈接庫(kù)或DLL實(shí)現(xiàn),即與擴(kuò)展卡140和話機(jī)設(shè)備110一起操作的應(yīng)用程序當(dāng)開始執(zhí)行時(shí)將這些庫(kù)鏈接到它的地址空間。
該結(jié)構(gòu)的應(yīng)用層示于2515。正如這里所表示的,很多應(yīng)用程序2513(i)可以使用2509以下的層。應(yīng)用程序可以為電話設(shè)備110定制,或者它們可以是已經(jīng)適配于電話設(shè)備110的現(xiàn)有應(yīng)用程序。這種應(yīng)用程序的一個(gè)例子是這樣的應(yīng)用原始用戶通過(guò)在計(jì)算機(jī)終端上顯示并由用戶鼠標(biāo)輸入而相互作用。這種現(xiàn)有的應(yīng)用需要附加一層粘合代碼2511,它在應(yīng)用所需的數(shù)據(jù)形式和擴(kuò)展卡140和話機(jī)設(shè)備110所需的數(shù)據(jù)形式之間做轉(zhuǎn)換。這里應(yīng)該指出的是對(duì)于很多現(xiàn)有的應(yīng)用程序2513(i),為使應(yīng)用程序在話機(jī)設(shè)備110上工作必須寫的就是相應(yīng)的粘合代碼2511(i)。
擴(kuò)展卡140和電話機(jī)設(shè)備110的低成本實(shí)現(xiàn)類似本專利申請(qǐng)的母申請(qǐng)所揭示的任何系統(tǒng)成功的關(guān)鍵方面是低成本。母專利申請(qǐng)中所揭示系統(tǒng)上的進(jìn)一步工作已經(jīng)得到了很低成本的實(shí)現(xiàn)。節(jié)約已經(jīng)通過(guò)將原有實(shí)現(xiàn)中的微控制器1104替換為4個(gè)現(xiàn)場(chǎng)可編程門陣列(FPGA)集成電路(三個(gè)在擴(kuò)展卡140中,一個(gè)在電話機(jī)設(shè)備110中)來(lái)實(shí)現(xiàn)。而且,認(rèn)識(shí)到這樣的事實(shí)實(shí)際上所有較新的個(gè)人計(jì)算機(jī)(PC)都包含調(diào)制解調(diào)器,該實(shí)現(xiàn)現(xiàn)在可以使用PC中的調(diào)制解調(diào)器,而不是在擴(kuò)展卡140中配備自己的調(diào)制解調(diào)器。
如下對(duì)低成本實(shí)現(xiàn)的討論將以對(duì)低成本實(shí)現(xiàn)擴(kuò)展卡的程序員接口的討論開始,然后討論實(shí)現(xiàn)的細(xì)節(jié)。
程序員接口圖15-18擴(kuò)展卡的程序員接口是到擴(kuò)展卡I/O地址空間的特定地址的一組I/O讀寫命令。設(shè)備驅(qū)動(dòng)2503使用這些命令向擴(kuò)展卡的寄存器中寫數(shù)據(jù)和讀數(shù)據(jù)并向可重新設(shè)置圖標(biāo)的鍵盤寫入位圖和顯示特性。下面,將詳細(xì)討論這些命令和寄存器,以為擴(kuò)展卡解鎖所使用的命令序列開始。
在優(yōu)選實(shí)施例中,擴(kuò)展卡所使用的計(jì)算機(jī)系統(tǒng)是IBM兼容PC。這種PC是開放式系統(tǒng),即,附加在PC上的這類擴(kuò)展卡可以用于執(zhí)行很多不同的功能而且由不同廠商制造。目前還沒有對(duì)這種擴(kuò)展卡設(shè)計(jì)的明確標(biāo)準(zhǔn),對(duì)各種卡如何相互作用也沒有明確的定義。在這樣環(huán)境中設(shè)計(jì)擴(kuò)展卡的問(wèn)題是確保給定PC的其它硬件及/或軟件單元的操作不會(huì)對(duì)擴(kuò)展卡產(chǎn)生不利影響而且擴(kuò)展卡的操作不會(huì)對(duì)其它硬件及/或軟件單元產(chǎn)生不利影響。
這個(gè)問(wèn)題已經(jīng)在擴(kuò)展卡的目前實(shí)現(xiàn)中解決,通過(guò)要求PC對(duì)擴(kuò)展卡“解鎖”而進(jìn)行特定的動(dòng)作組合。在擴(kuò)展卡被解鎖之前,它將不響應(yīng)來(lái)自PC的命令。這種動(dòng)作組合這里稱為訪問(wèn)密鑰。在優(yōu)選實(shí)施例中使用的訪問(wèn)密鑰1501示于圖15。密鑰由主機(jī)系統(tǒng)必須順序執(zhí)行的8個(gè)動(dòng)作組成,在擴(kuò)展卡的本實(shí)現(xiàn)開始正常操作之前不能中斷。如表1501所示,第一個(gè)動(dòng)作是PC從擴(kuò)展卡讀取。下6個(gè)動(dòng)作是寫入地址X’8201’,在大多數(shù)PC系統(tǒng)中這是可以讀取、不能寫入的游戲口。如表中所示,這些寫入的每一個(gè)都通過(guò)數(shù)據(jù)總線上的一個(gè)特定值來(lái)完成。在第6次寫入X’8201’之后,最后一次寫入是XC201’,在解鎖序列中被譯為擴(kuò)展卡配置寄存器的地址。該次寫入的數(shù)據(jù)是使用擴(kuò)展卡的程序希望配置寄存器被設(shè)置的值。
當(dāng)將擴(kuò)展卡連接到PC的總線表示系統(tǒng)已經(jīng)復(fù)位或當(dāng)使用擴(kuò)展卡的程序在配置寄存器中設(shè)置了軟件復(fù)位(SWRST)時(shí),擴(kuò)展卡被加鎖。正如下面對(duì)硬件的討論所詳細(xì)解釋的,加鎖在優(yōu)選實(shí)施例中是通過(guò)有限狀態(tài)機(jī)實(shí)現(xiàn)的,它只有收到規(guī)定順序的特定輸入時(shí)才會(huì)到達(dá)解鎖狀態(tài)。
配置寄存器確定擴(kuò)展卡和電話機(jī)設(shè)備整個(gè)行為的多種重要方面。具有設(shè)置并讀取配置寄存器的命令;特別是,當(dāng)系統(tǒng)復(fù)位時(shí),配置寄存器被復(fù)位。圖16表示了配置寄存器1601的優(yōu)選實(shí)施例。該寄存器包括8比特,前3比特,0..2 1603,包含一個(gè)代碼,它規(guī)定主機(jī)系統(tǒng)的I/O地址空間中八個(gè)不同地址范圍中的一個(gè)。在擴(kuò)展卡上讀寫是使用1603中的代碼所規(guī)定的范圍中的地址來(lái)完成的。比特31605是SWRST比特。當(dāng)程序設(shè)置SWRST比特時(shí),擴(kuò)展卡如上所述加鎖;當(dāng)系統(tǒng)復(fù)位時(shí)SWRST也設(shè)置。比特4 1607是STD比特。當(dāng)這個(gè)比特為1時(shí),電話機(jī)設(shè)備在鍵盤126上不顯示任何圖標(biāo)并使用它的輔助按鍵鍵盤作為標(biāo)準(zhǔn)POTS電話操作。STD比特1607以兩種方式設(shè)置通過(guò)裝載配置寄存器在程序控制下進(jìn)行;或者當(dāng)擴(kuò)展卡在前面這類命令之后0.5秒內(nèi)不能從設(shè)備驅(qū)動(dòng)2503接收系統(tǒng)監(jiān)視定時(shí)器復(fù)位命令時(shí)自動(dòng)進(jìn)行。
當(dāng)主機(jī)PC停止執(zhí)行控制擴(kuò)展卡的軟件時(shí),系統(tǒng)監(jiān)視定時(shí)器復(fù)位命令連同著當(dāng)STD 1607設(shè)置時(shí)擴(kuò)展卡的前述行為一起提供自動(dòng)將電話機(jī)設(shè)備置入POTS模式的機(jī)制。系統(tǒng)監(jiān)視器復(fù)位命令本身是向擴(kuò)展卡I/O地址空間的基地址的一次簡(jiǎn)單的I/O讀或?qū)?。設(shè)備驅(qū)動(dòng)2503在運(yùn)行時(shí)必須每0.5秒提供系統(tǒng)監(jiān)視器復(fù)位命令。設(shè)備驅(qū)動(dòng)2503在如下情況下不能提供系統(tǒng)監(jiān)視器復(fù)位命令·主PC故障,因而設(shè)備驅(qū)動(dòng)2503不能執(zhí)行。
·設(shè)備驅(qū)動(dòng)2503檢測(cè)到PC操作系統(tǒng)的故障。
設(shè)備驅(qū)動(dòng)2503通過(guò)周期性輪詢操作系統(tǒng)來(lái)檢測(cè)操作系統(tǒng)的故障。如果操作系統(tǒng)不響應(yīng),設(shè)備驅(qū)動(dòng)2503就停止向系統(tǒng)發(fā)送監(jiān)視器復(fù)位命令。
配置寄存器1601中的比特5..7 1609選擇連接擴(kuò)展卡和主機(jī)系統(tǒng)的總線中八根不同中斷線中的一個(gè)。所選的中斷線是目前由擴(kuò)展卡用于向主機(jī)系統(tǒng)發(fā)送中斷的一個(gè)。
具有一個(gè)命令用于讀配置寄存器,一個(gè)命令用于寫。讀命令是向擴(kuò)展卡的當(dāng)前I/O基地址+1進(jìn)行I/O讀;配置寄存器1601的當(dāng)前內(nèi)容在總線的數(shù)據(jù)比特0..7上輸出到主機(jī)。寫命令是向上述地址的I/O寫;數(shù)據(jù)比特0…7傳遞寫入配置寄存器1601的值。注意這個(gè)寫命令不同于上述鍵訪問(wèn)序列中使用的寫命令;剛描述的讀及寫命令僅當(dāng)擴(kuò)展卡已經(jīng)解鎖后才有效。
圖中沒有表示的另一個(gè)寄存器是8比特的裝置ID寄存器。它是只讀寄存器,當(dāng)擴(kuò)展卡制造時(shí)設(shè)置,用以表示擴(kuò)展卡的型號(hào)。讀該寄存器的命令是I/O基地址加6;寄存器的內(nèi)容出現(xiàn)在數(shù)據(jù)總線的比特0..7上。
圖17表示鍵參數(shù)寄存器。這個(gè)寄存器由主機(jī)上的程序用于尋址鍵盤126中的鍵。當(dāng)位圖被下載時(shí),寄存器中的地址表示哪個(gè)鍵在接收位圖;此外,當(dāng)鍵被按下或釋放時(shí),該寄存器用于為每個(gè)鍵設(shè)置是否中斷主機(jī)以及讀取當(dāng)前為該鍵設(shè)置的中斷類型。寄存器1701包含8比特,其中兩個(gè)在優(yōu)選實(shí)施例中不用。比特0..4 1703包含一個(gè)代碼,在鍵盤126的12個(gè)鍵中選出一個(gè)。對(duì)于該鍵,比特6 1705和71709規(guī)定產(chǎn)生該中斷的鍵動(dòng)作。有四種可能
用來(lái)寫這個(gè)表的命令是I/O寫命令,地址為擴(kuò)展卡當(dāng)前基地址+5。寫入的比特在數(shù)據(jù)線0..7上。讀命令是相同地址的I/O讀命令。正在讀的比特在數(shù)據(jù)線0…7上。
圖18表示鍵狀態(tài)寄存器1801,其中使用擴(kuò)展板的程序來(lái)讀該寄存器,以便確定哪個(gè)鍵產(chǎn)生程序正在服務(wù)的中斷。寄存器1801還包含8比特,其中兩個(gè)空閑。比特0..3 1805包含一個(gè)代碼,標(biāo)識(shí)12個(gè)鍵中的哪個(gè)引起該中斷;比特6 1807包含一個(gè)比特,當(dāng)鍵被按下時(shí),表示引起該中斷的鍵是否已經(jīng)釋放。比特7 1809包含一個(gè)比特,表示電話設(shè)備是否忙,即,它是否還在為前面所選的鍵下載一個(gè)位圖。只要使用擴(kuò)展板的程序服務(wù)一個(gè)擊鍵中斷,以及只要程序在進(jìn)行連續(xù)的位圖下載,該程序就必須讀取寄存器1801。讀該寄存器的命令是I/O讀命令,地址由當(dāng)前I/O基地址加8形成。還有一個(gè)中斷確認(rèn)命令,清除鍵狀態(tài)寄存器中當(dāng)前指定的未決擊鍵中斷。該命令是寫入基地址加4的I/O寫命令。
鍵盤中鍵的位圖和確定鍵顏色以及鍵是否閃爍的屬性由兩個(gè)命令序列設(shè)置裝載啟動(dòng)字節(jié)跟隨裝載鍵命令/數(shù)據(jù)。在驅(qū)動(dòng)2503為一個(gè)鍵發(fā)出這些命令之前,它在參數(shù)寄存器1701中設(shè)置域1703以選擇該鍵。裝載啟動(dòng)字節(jié)命令是寫入基地址+2的I/O寫命令。寫入的字節(jié)包含0值,正如下面更詳細(xì)解釋的,該字節(jié)當(dāng)?shù)竭_(dá)鍵組合時(shí)具有偶校驗(yàn)。裝載啟動(dòng)字節(jié)命令必須在每個(gè)裝載鍵命令/數(shù)據(jù)之前。裝載鍵命令/數(shù)據(jù)命令是寫入基地址+3的I/O寫。寫入這個(gè)地址的是一個(gè)命令字節(jié)跟隨多達(dá)108字節(jié)的數(shù)據(jù)。命令和數(shù)據(jù)具有奇校驗(yàn)。優(yōu)選實(shí)施例中的鍵盤響應(yīng)四個(gè)命令一個(gè)表示如下數(shù)據(jù)是鍵的象素?cái)?shù)據(jù),即鍵的位圖,一個(gè)表示鍵的背景顏色,兩個(gè)用于初始化時(shí)規(guī)定鍵盤的刷新速率。對(duì)用于優(yōu)選實(shí)施例的鍵組合編程的進(jìn)一步細(xì)節(jié),見用于優(yōu)選實(shí)施例的LC 24.2 TREND鍵組合的HE Electronics’Data Sheet。該數(shù)據(jù)手冊(cè)可從HE Electronics Technologie&Systemtechnik,AmGneisenaufloz 8,D-66538,Neunkirrchen,Germany得到。
擴(kuò)展板硬件圖19圖19是擴(kuò)展板優(yōu)選實(shí)施例1901的高級(jí)框圖。擴(kuò)展板由ISA連接器1903連接到主PC的ISA總線,并由帶26芯連接器1941的電纜連接到電話機(jī)設(shè)備。IS A總線的輸入和輸出如下·16比特的系統(tǒng)地址1905。這些只是輸入而且用于命令。
·8比特?cái)?shù)據(jù)1907這些是雙向的而且用于從板1901的寄存器寫和讀,并將位圖寫入鍵。
·8根中斷請(qǐng)求線1909,將板1901的中斷請(qǐng)求輸出到主PC。
·由設(shè)備驅(qū)動(dòng)激活的裝置允許線1911。為使板1901響應(yīng)PC的命令輸入該線必須激活。
·IO寫線1913,表示I/O寫操作。
·IO讀線1915,表示I/O讀操作。
從板1901到電話機(jī)設(shè)備的線示于裝置連接器1941·BACP 1957從板1901向電話設(shè)備提供時(shí)鐘信號(hào)。當(dāng)這個(gè)時(shí)鐘信號(hào)停止時(shí),電話設(shè)備作為POTS電話工作。
·DAPD 1955是串行數(shù)據(jù)線,向鍵盤傳遞鍵位圖數(shù)據(jù)。
·ASK(0..3)1953是四根線,電話機(jī)設(shè)備激活它以便表示鍵盤的哪個(gè)鍵已經(jīng)按下。
·BKS(0..3)1951是四根線,板1901激活它以便表示正下載的數(shù)據(jù)是用于哪個(gè)鍵的。
·TEIRQ 1949是從鍵盤到板1901的輸入,表示已經(jīng)按下的鍵被釋放。
其余的輸入和輸出是將主機(jī)系統(tǒng)中的模擬設(shè)備連接到電話機(jī)設(shè)備中的模擬設(shè)備的模擬輸入和輸出。SPKR 1947從插座1959接收其輸入,并將信號(hào)輸出到電話機(jī)設(shè)備中的揚(yáng)聲器;MIC 1945從電話設(shè)備中的麥克風(fēng)接收其輸入并將信號(hào)輸出到插座1961;最后TIP/RNG1943是三組tip/ring線。在優(yōu)選實(shí)施例中,只使用兩組,另一個(gè)用于電話機(jī)設(shè)備,一組用于可以連接到電話機(jī)設(shè)備的傳真機(jī),一組用于電話機(jī)設(shè)備中的插座。兩組線到RJ11-4插座,允許電話機(jī)設(shè)備連接到墻上電話插座以及PC。
ISA連接器1903和裝置連接器1941之間連接了三個(gè)現(xiàn)場(chǎng)可編程門陣列1917、1921和1931。在優(yōu)選實(shí)施例中使用的門陣列是屬于Altera Corporation,2610 Orchard Parkway San Jose,CA.的MAX7000可編程邏輯器件族的器件。有關(guān)該門陣列的其它信息可以從Altera Corporation對(duì)該器件的數(shù)據(jù)手冊(cè)中得到。
門陣列實(shí)現(xiàn)到板1901的程序員接口中說(shuō)明的寄存器同時(shí)也實(shí)現(xiàn)執(zhí)行命令所必需的控制邏輯。陣列中的功能劃分一般具有如下特點(diǎn)·陣列1917對(duì)地址線1905(0..4)解碼,說(shuō)明不同的操作并進(jìn)一步解碼來(lái)自門陣列1921的中斷選擇信息線以便激活中斷請(qǐng)求線1909中恰當(dāng)?shù)囊粋€(gè)。
·陣列1921實(shí)現(xiàn)配置寄存器1601和應(yīng)用程序ID寄存器,從一個(gè)振蕩器得到用于控制電話設(shè)備的時(shí)鐘信號(hào)AP_CLK 1925,并實(shí)現(xiàn)解鎖板1901的狀態(tài)機(jī)。
·陣列1931實(shí)現(xiàn)鍵參數(shù)寄存器1701以及鍵狀態(tài)寄存器1801,并進(jìn)一步控制板1901與電話機(jī)設(shè)備的相互作用。特別是,陣列1931實(shí)現(xiàn)裝載鍵位圖和設(shè)置顯示屬性的命令,并且也接收表示鍵已經(jīng)激活的輸入。
更具體地以板1901所執(zhí)行的三種操作來(lái)繼續(xù),即,解鎖、檢測(cè)主PC的故障、以及裝載位圖,如前面所解釋的,解鎖以狀態(tài)機(jī)實(shí)現(xiàn)。表1501中描述的每個(gè)輸入將狀態(tài)機(jī)置于下一狀態(tài);當(dāng)所有狀態(tài)完成之后,F(xiàn)PGA 1921激活A(yù)P_ON 1923線,使FPGA 1917開始響應(yīng)在I/O基地址的低有效比特上接收的命令。
如前面所表示的,控制板1901的主PC中的程序必須每0.5秒至少發(fā)一次系統(tǒng)監(jiān)視定時(shí)器復(fù)位命令。在優(yōu)選實(shí)施例中,F(xiàn)PGA 1917通過(guò)激活連接到監(jiān)視器1927的SMTR 1919線響應(yīng)該命令。在板1901中,監(jiān)視器1927是一個(gè)計(jì)數(shù)器,SMTR 1919復(fù)位該計(jì)數(shù)器。如果計(jì)數(shù)器沒有復(fù)位,它就到達(dá)最大計(jì)數(shù)值并激活到FPGA 1931的SMRST1929線。FPGA 1931通過(guò)停止輸出XAP_CLK 1933(一個(gè)從AP_CLK 1925得到的時(shí)鐘信號(hào))來(lái)響應(yīng)SMRST 1929。XAP_CLK 1933作為BACP 1957輸出到電話機(jī)設(shè)備,而且當(dāng)這個(gè)信號(hào)停止時(shí),電話設(shè)備開始作為標(biāo)準(zhǔn)POTS電話工作。
程序員接口的討論揭示了向電話機(jī)設(shè)備下載位圖是通過(guò)裝載啟動(dòng)字節(jié)和裝載命令/數(shù)據(jù)命令的序列來(lái)完成的。每個(gè)裝載命令/數(shù)據(jù)命令下載多達(dá)108字節(jié)的數(shù)據(jù)到BKS(0..4)1951所指定的鍵,這些數(shù)據(jù)是在SYSDATA(0...7)上接收到的。對(duì)于裝載啟動(dòng)字節(jié)命令所提供的字節(jié)與裝載命令/數(shù)據(jù)命令所提供的字節(jié),電話設(shè)備通過(guò)前面字節(jié)具有偶校驗(yàn)而后面具有奇校驗(yàn)這個(gè)事實(shí)來(lái)區(qū)分。
門陣列1917通過(guò)激活由門陣列1931和奇偶發(fā)生器1937所接收的LDSB 1935來(lái)響應(yīng)裝載啟動(dòng)字節(jié)命令。門陣列1931通過(guò)向移位寄存器1939輸出LD信號(hào)1934繼續(xù)進(jìn)行響應(yīng),從而使移位寄存器1939裝載SYSDATA 1907上的數(shù)據(jù)字節(jié)。該字節(jié)的前面是開始比特,后面跟隨奇偶比特和兩個(gè)停止比特。開始比特和停止比特由移位寄存器1939產(chǎn)生。同時(shí),奇偶發(fā)生器1937通過(guò)為SYSDATA 1907上到移位寄存器1909的字節(jié)輸出偶校驗(yàn)1938來(lái)響應(yīng)LDSB 1935。一旦該字節(jié)被裝載,它就在XAP_CLK1933的控制下從移位寄存器輸出到連接器1941。
有關(guān)裝載命令/數(shù)據(jù)遵循相同的通用模式。門陣列1917通過(guò)激活連接到FGPA 1931的LDKSC/D 1930來(lái)響應(yīng)裝載命令/數(shù)據(jù)。然后FPGA1931激活LD 1934,后者使移位寄存器1939裝載SYSDATA 1907上的字節(jié)。這次不激活奇偶發(fā)生器1937,也不反轉(zhuǎn)該字節(jié)的奇偶比特。一旦裝載,字節(jié)就從移位寄存器1939輸出,如上所述。
電話設(shè)備110的硬件圖20圖20表示了電話設(shè)備110的降低成本的目前優(yōu)選實(shí)施例2001。實(shí)施例2001由電纜連接到擴(kuò)展板1901;電話設(shè)備2001和擴(kuò)展板1901之間傳輸?shù)男盘?hào)已經(jīng)在上面討論擴(kuò)展板1901時(shí)解釋過(guò)了。模擬信號(hào),SPKR 1947、MIC 1945、以及塞尖/塞環(huán)信號(hào)1945進(jìn)入電話設(shè)備110的有關(guān)設(shè)備,而且也到RJ11-4插座。數(shù)字信號(hào)為鍵盤126中的鍵裝載數(shù)據(jù)并響應(yīng)來(lái)自鍵盤126的信號(hào)。如這里所示,每個(gè)鍵2018(i)有兩個(gè)輸入和一個(gè)輸出。輸入包括時(shí)鐘信號(hào)KEY_CL 2007(它是從擴(kuò)展板1901提供的BACP 1957中得到的),串行數(shù)據(jù)線DATA 2017(i)(它傳輸鍵2018(i)的位圖和設(shè)置鍵2018(i)顯示屬性的數(shù)據(jù))、以及KS 2027(i)(它表示鍵2018(i)目前是否被按下)。
電纜插座2003和鍵陣列126之間連接著現(xiàn)場(chǎng)可編程門陣列2005,它包含將DAPD 1955上接收的數(shù)據(jù)傳遞到BKS(0..3)所指定的鍵以及將KS 2027(i)的輸入轉(zhuǎn)換成表示哪個(gè)鍵2018(i)被按下的AKS1953上輸出所必需的控制邏輯。以數(shù)據(jù)傳遞到鍵開始,F(xiàn)PGA 2005就在BACP 1957上接收時(shí)鐘信號(hào)和DAPD 1955上的串行數(shù)據(jù),并將DATA(i)上的數(shù)據(jù)輸出到目前BKS(0..3)1951所指定的鍵2018(i)。數(shù)據(jù)通過(guò)從BACP 1957得到的時(shí)鐘KEY_LK 2007的控制而進(jìn)入鍵2018(i)。這里應(yīng)該注意的是當(dāng)KEY_CLK 2007沒有按有規(guī)律的方式發(fā)送時(shí)鐘信號(hào)時(shí),鍵陣列126不能被裝載而且也不能刷新目前裝載位圖的顯示。
以傳遞擊鍵信息來(lái)繼續(xù)下去,該信息是當(dāng)鍵2018(i)被按下或釋放時(shí)產(chǎn)生。這個(gè)信息存在兩個(gè)必須解決的問(wèn)題首先,鍵一般不是簡(jiǎn)單地打開或關(guān)閉,而是在最終進(jìn)入一種或另一種狀態(tài)之前“跳動(dòng)”(bounce)。第二,在目前優(yōu)選實(shí)施例中的擴(kuò)展板1901和使用板1901的軟件期待表示只有一個(gè)鍵2018(i)被按下的信號(hào);但是可能會(huì)偶然或無(wú)意識(shí)地同時(shí)按下多個(gè)鍵。
同時(shí)按下鍵的問(wèn)題可以通過(guò)擊鍵優(yōu)先器2028來(lái)解決,當(dāng)一個(gè)以上的線KS 2017被激活時(shí),擊鍵優(yōu)先器2028是根據(jù)預(yù)定優(yōu)先級(jí)選擇一個(gè)鍵2018來(lái)進(jìn)行響應(yīng)的。發(fā)生擊鍵由線SD 2029上的值來(lái)表示。選擇哪個(gè)鍵由線SEN(0..6)2025上的值表示。上述這些線和線SD2029輸入到FPGA 2005。但是那些線上的值會(huì)反映出“跳動(dòng)”,因此,在延遲10 MSEC之后,F(xiàn)PGA 2005才響應(yīng)SEN(0..6)2025。這個(gè)延時(shí)由延時(shí)定時(shí)器2013產(chǎn)生。當(dāng)SD 2029表示已經(jīng)擊鍵時(shí),F(xiàn)PGA 2005激活線SEQ 2011,后者接著再啟動(dòng)延時(shí)定時(shí)器2013的運(yùn)行。當(dāng)運(yùn)行到10 MS時(shí),激活輸入到FPGA 2005的線MKS_EN 2015。當(dāng)該線激活時(shí),F(xiàn)PGA 2005從線SEN(0..6)2025的狀態(tài)確定哪個(gè)鍵被按下并因此激活線AKS(0..3)1953。如果沒有線SEN(0..6)被激活,當(dāng)MKS_EN2015被激活時(shí),F(xiàn)PGA 2005激活TE_IRQ 1949。
當(dāng)包含擴(kuò)展卡1901的PC出故障時(shí),延時(shí)定時(shí)器2013也用于禁止激活線AKS(0..3)。如前面所表示的,當(dāng)PC故障時(shí),BACP 1957停止提供定時(shí)信號(hào)。定時(shí)信號(hào)KEY_CLK#2009從BACP 1957得到,并且當(dāng)定時(shí)信號(hào)停止時(shí),KEY_CLK#2009也停止了。因此停止延時(shí)定時(shí)器2013的操作,2013接著又阻止MKS_EN 2015產(chǎn)生,藉此禁止AKS(0..3)的激活。
設(shè)備的種類和其它類型圖21-23對(duì)本發(fā)明的母發(fā)明中所揭示設(shè)備的進(jìn)一步研究已經(jīng)顯然使該設(shè)備可以以多種方式實(shí)現(xiàn),而且可以用于很多不同的提供電話業(yè)務(wù)的環(huán)境。盡管如此,該設(shè)備的某些特性對(duì)于此后所考慮的所有實(shí)現(xiàn)方案和環(huán)境都是共同的。這些特性示于圖21。圖中的系統(tǒng)2101有三個(gè)主要部件按鈕表示2103、接口2111、以及電話設(shè)備2113。按鈕表示2103可以是諸如鍵盤126這樣的鍵盤,帶有可重新設(shè)置圖標(biāo)的按鈕,或者它可以是計(jì)算機(jī)系統(tǒng)顯示器中的鍵盤表示。在后一種情況下,按鈕又是可重新設(shè)置圖標(biāo)的,但是通過(guò)諸如鼠標(biāo)或指示筆(stylus)這樣的指示設(shè)備來(lái)選擇。在任一情況下,按鈕表示2103都從接口2111接收代表按鈕圖標(biāo)的位圖2107并返回表示用戶選擇了哪個(gè)按鈕205的鍵選擇信息2109。
接口2111將提供給按鈕表示2103以及從按鈕表示2103接收的信息置成適當(dāng)?shù)母袷?,以便傳輸?shù)诫娫捲O(shè)備2113。因此,在優(yōu)選實(shí)施例中,它接收位圖2112并將它們導(dǎo)向目標(biāo)鍵,“去跳動(dòng)”(debounce)鍵選擇信息2109并將其編碼為擊鍵信息21114。
為了這個(gè)目的,電話設(shè)備2113可以被考慮為具有三個(gè)主要部件位圖存儲(chǔ)器2116(它存儲(chǔ)發(fā)送到按鈕表示2103的位圖2112),擊鍵解釋器2115(它通過(guò)激活電話功能2117及/或向接口211發(fā)送一個(gè)或多個(gè)新位圖2112來(lái)響應(yīng)按鈕表示2103的用戶對(duì)按鈕2105的選擇),以及電話功能2117(它管理到電話網(wǎng)絡(luò)2119的接口以及電話音頻輸入2113和音頻輸出2121)。電話設(shè)備可以實(shí)現(xiàn)各種有線或無(wú)線電話(包括數(shù)據(jù)分組電話)業(yè)務(wù)。接口2111和電話設(shè)備2113之間的連接也可以是有線或無(wú)線的。
系統(tǒng)2101如下進(jìn)行操作當(dāng)用戶選擇按鈕2105時(shí),按鈕表示2103向接口2111提供鍵選擇信息2109,接口2111將其置成用于電話設(shè)備2113的適當(dāng)?shù)男问?114。鍵選擇解釋器2115按照要求進(jìn)行響應(yīng),將本組位圖顯示在表示2103上。在一些情況下,所要求的響應(yīng)是電話功能,而且解釋器2115激活電話功能2117中所需的功能。在另一些情況下,所要求的響應(yīng)是一組新的位圖而且解釋器2115恢復(fù)所需的位圖并將它們提供給接口2111,接口2111再將它們提供給按鈕表示2103。在其它一些情況下,解釋器2115激活電話功能并提供位圖。
系統(tǒng)2101的部件可以按多種方式分布在各個(gè)硬件設(shè)備上。而且這些部件也可按多種方式彼此通信并與電話系統(tǒng)通信。在目前優(yōu)選實(shí)施例中,與電話系統(tǒng)的通信是模擬的,而電話設(shè)備和PC之間控制信息的傳遞是數(shù)字的,用于連接電話設(shè)備的電纜包括數(shù)字信號(hào)線和模擬信號(hào)線。在其它實(shí)施例中,電話設(shè)備和PC之間的連接依靠LAN,數(shù)字信號(hào)以分組形式在LAN上傳輸,而且在另一些實(shí)施例中,電話系統(tǒng)可以是數(shù)據(jù)分組電話系統(tǒng),話音信號(hào)以及數(shù)字控制信息將數(shù)據(jù)以分組形式傳輸。
在一類實(shí)現(xiàn)方案中,系統(tǒng)2101的所有部件都可以在單個(gè)硬件設(shè)備(即個(gè)人計(jì)算機(jī)或工作站)中實(shí)現(xiàn)。在這個(gè)實(shí)現(xiàn)方案中,按鈕表示2103顯示在PC的顯示器上,音頻輸入和輸出由PC中的電話板來(lái)提供。在目前優(yōu)選的實(shí)現(xiàn)中,按鈕表示2103、接口211、以及音頻輸出2121和音頻輸入2123是與實(shí)現(xiàn)電話設(shè)備2113的PC所連接的一個(gè)分立設(shè)備的一部分。電話設(shè)備可以是模擬電話或數(shù)字分組電話。當(dāng)然,在整個(gè)系統(tǒng)2101在一個(gè)PC中實(shí)現(xiàn)或至少按鈕表示2103是連接到PC的一個(gè)分立設(shè)備一部分的實(shí)施例中,按鈕表示2103中的按鈕可以用于與除了PC中的電話程序以外的程序相互作用。這類程序的例子可以是那些用于顯示與使用系統(tǒng)2101進(jìn)行的電話呼叫有關(guān)的數(shù)據(jù)的程序。
在其它實(shí)施例中,可以具有剛描述的分立設(shè)備,而且電話設(shè)備2113可能是PBX交換機(jī)、甚至中心局交換機(jī)而不是PC.與交換機(jī)的通信可以完全是模擬的,在這種情況下數(shù)字信息必須通過(guò)調(diào)制解調(diào)器或通過(guò)DTMF信號(hào)來(lái)傳遞,可以象目前優(yōu)選實(shí)施例中那樣是混合模擬和數(shù)字的,或者可以是完全數(shù)字的。在后一種情況下,分立設(shè)備可以通過(guò)任何類型的分組網(wǎng)絡(luò)而連接到電話設(shè)備。實(shí)際上,電話設(shè)備可以是一個(gè)分組網(wǎng)絡(luò)的服務(wù)器,多個(gè)分立設(shè)備通過(guò)諸如Ethernet協(xié)議(Ethernet是Xerox Corporation的注冊(cè)商標(biāo))這樣的協(xié)議與之通信。這種服務(wù)器當(dāng)然可以在任何類型計(jì)算機(jī)上實(shí)現(xiàn),其中包括PC機(jī)。在另外一些實(shí)施例中,分立設(shè)備本身可以包括電話設(shè)備2113,并且直接連接到電話網(wǎng)絡(luò)2119。這種類型對(duì)于分組電話特別有吸引力,因?yàn)榈湫偷姆纸M網(wǎng)絡(luò)使其本身局限于路由選擇功能,所有其它功能都由網(wǎng)絡(luò)邊緣的智能設(shè)備來(lái)完成。當(dāng)然,在分立設(shè)備是獨(dú)立數(shù)據(jù)分組電話的地方,還是可以通過(guò)分組網(wǎng)絡(luò)來(lái)連接到服務(wù)器以及其它這樣的數(shù)據(jù)分組電話,而且服務(wù)器可以實(shí)現(xiàn)優(yōu)選實(shí)施例中由PC執(zhí)行的功能。這樣一種設(shè)計(jì)是特別適于部門電話系統(tǒng)采納的。
位圖存儲(chǔ)器2116也可以處于不同部件中。如果它是可以下載的并處于分立設(shè)備中,則可得到最大的靈活性。在這樣的實(shí)施例中,選擇位圖的鍵選擇解釋器2115部分也處于分立設(shè)備中。下載位圖的設(shè)備也可以下載那些在鍵選擇解釋器2115恰當(dāng)?shù)亟忉審奈粓D得到的擊鍵時(shí)所需要的代碼。
圖22表示一個(gè)實(shí)現(xiàn)方案2201,其中包含有鍵盤2221、音頻輸出2121、以及音頻輸入2123的設(shè)備直接連接到電話交換機(jī)2203。在這種實(shí)現(xiàn)方案中,位圖存儲(chǔ)器2205以及鍵選擇解釋器2207都設(shè)在交換機(jī)2203中,還有除了設(shè)備2213中所需的響應(yīng)入呼叫的功能以外的所有電話功能2209。交換機(jī)2203通過(guò)路徑2211連接到設(shè)備2213。路徑2211必須傳輸電話呼叫所需的標(biāo)準(zhǔn)模擬音頻信號(hào)以及與鍵盤2221交互作用所需的數(shù)字信息。一種傳輸這兩種信息的方法是將數(shù)字信息按照DTMF音頻序列編碼;另一種是在交換機(jī)2203和設(shè)備2213中都包括調(diào)制解調(diào)器并使用調(diào)制解調(diào)器發(fā)送數(shù)字信息。還有一種方法是為數(shù)字信息和音頻信號(hào)提供單獨(dú)的線路。在任一情況下,交換機(jī)接口2215都必須通過(guò)路徑2217將數(shù)字信息提供給鍵盤接口2219并通過(guò)路徑2223將模擬信息提供給電話硬件2227。
如果設(shè)備連接到分組網(wǎng)絡(luò),在交換機(jī)和設(shè)備之間發(fā)送音頻信息和數(shù)字信息的問(wèn)題就可以解決。在這樣的網(wǎng)絡(luò)中,傳輸?shù)乃行畔⒍际菙?shù)字?jǐn)?shù)據(jù)分組,分組的類型表示接收設(shè)備將如何解釋數(shù)字?jǐn)?shù)據(jù)。圖23表示了一個(gè)帶獨(dú)立設(shè)備2307的電話系統(tǒng)2301,用于連接到分組網(wǎng)絡(luò)2303。設(shè)備2307具有分組網(wǎng)2303中的地址并從網(wǎng)絡(luò)2303接收分組2305。這些分組是從介質(zhì)上獲得的,分組收發(fā)機(jī)2309將它們發(fā)送到這種介質(zhì)上并置成設(shè)備2307內(nèi)部使用的格式。分組接口2311從收發(fā)機(jī)2309接收輸入的分組2305并根據(jù)它們的類型分配到設(shè)備2307的各單元中。接口2311也將各單元產(chǎn)生的分組輸出到收發(fā)機(jī)2309,收發(fā)機(jī)2309再將它們置成適于發(fā)送介質(zhì)的形式。
為此,設(shè)備2307的單元可以分成三組處理鍵盤2313的組、完成電話控制功能的組、以及處理包含音頻數(shù)據(jù)的分組的組。包含音頻數(shù)據(jù)的分組由DSP硬件2323處理,2323從接口2311接收這種音頻分組,將它們轉(zhuǎn)換成模擬音頻信號(hào),并將音頻信號(hào)輸出到音頻輸出2327。DSP硬件2323也進(jìn)行逆操作,從音頻輸入2329接收模擬音頻信號(hào),對(duì)音頻信號(hào)數(shù)字化,并將它們置成分組以便輸出到網(wǎng)絡(luò)2303。電話控制功能2321解釋并產(chǎn)生包含控制消息的分組,這些消息確定分組網(wǎng)絡(luò)2302的作用以及附加其上的電話設(shè)備的作用。在這個(gè)功能中,TCF 2321響應(yīng)來(lái)自鍵選擇解釋器2319的輸入以及網(wǎng)絡(luò)上接收的控制分組。TCF 2321不僅產(chǎn)生通過(guò)網(wǎng)絡(luò)2303傳輸?shù)目刂品纸M,而且提供控制信號(hào)給數(shù)字信號(hào)處理器2323。除了擊鍵解釋器2319以外,前面所描述的鍵盤2313、鍵選擇解釋器2319、接口2315以及位圖存儲(chǔ)器2317都與電話控制功能2321相互作用。在一些實(shí)施例中,擊鍵解釋器2319也能從分組網(wǎng)絡(luò)2303接收包含位圖和程序的分組。位圖當(dāng)然要裝載入位圖存儲(chǔ)器2317,而程序則變成鍵選擇解釋器2319的一部分。
因?yàn)楦郊拥椒纸M網(wǎng)絡(luò)2323的設(shè)備彼此相互作用,但不與分組網(wǎng)絡(luò)2313相互作用(2313只是對(duì)分組進(jìn)行路由選擇),連接到分組網(wǎng)絡(luò)的設(shè)備2307可以以任何方式與其它設(shè)備相互作用,包括連接到分組網(wǎng)絡(luò)的其它設(shè)備2307。對(duì)于連接到分組網(wǎng)絡(luò)以允許設(shè)備2307的用戶與給定設(shè)備相互作用的給定設(shè)備來(lái)說(shuō),所有需要的就是向設(shè)備2307發(fā)送相互作用所需的位圖和程序。不需要改變分組網(wǎng)絡(luò)2303來(lái)適應(yīng)新的相互作用。如上所示,分組網(wǎng)絡(luò)2303可以是任何類型的分組網(wǎng)絡(luò),從公用分組網(wǎng)絡(luò)到局域網(wǎng)、直到一個(gè)將多個(gè)設(shè)備2303連接到PC的網(wǎng)絡(luò),而且本地網(wǎng)絡(luò)可以通過(guò)路由器(當(dāng)然,它可以是PC)連接到公用網(wǎng)絡(luò)。分組在其上傳輸?shù)膶?shí)際介質(zhì)可以是用于此目的的任何類型,從雙絞線到光纖、到無(wú)線。
防故障的電話設(shè)備圖24任何數(shù)字電話系統(tǒng)存在的問(wèn)題是當(dāng)數(shù)字單元故障時(shí)系統(tǒng)停止工作。最常見的故障原因是電源斷電。模擬電話系統(tǒng)是自供電的,即,電話系統(tǒng)在電話線上接收用以執(zhí)行POTS功能的足夠電源。因此在電源斷電時(shí),模擬電話系統(tǒng)可以繼續(xù)工作。但是,通過(guò)電話線提供的電源不適于數(shù)字系統(tǒng),因此大多數(shù)這種系統(tǒng)要從標(biāo)準(zhǔn)的電源系統(tǒng)接收電源。當(dāng)電源斷電時(shí)系統(tǒng)就會(huì)停止工作。
在系統(tǒng)2101的優(yōu)選實(shí)施例情況下,電話設(shè)備2113是PC機(jī)。PC當(dāng)然不僅受到電源故障的影響,而且要受到過(guò)電壓、以及帶有錯(cuò)誤的執(zhí)行軟件的影響。正如在本申請(qǐng)的母申請(qǐng)中指出而且在上面對(duì)PC擴(kuò)展卡1901的描述中詳細(xì)解釋的,本發(fā)明的本優(yōu)選實(shí)施例通過(guò)切換到POTS業(yè)務(wù)來(lái)響應(yīng)PC故障。因此只要電話系統(tǒng)提供POTS業(yè)務(wù),該系統(tǒng)就可以提供電話通信。圖24提供了實(shí)現(xiàn)這種可能性的優(yōu)選實(shí)施例中使用的技術(shù)概況。在系統(tǒng)2401中,提供位圖并響應(yīng)可重新設(shè)置圖標(biāo)鍵盤2415所必需的所有功能由個(gè)人計(jì)算機(jī)2419提供,因此,當(dāng)個(gè)人計(jì)算機(jī)2419不工作、或者當(dāng)電源故障、過(guò)電壓、以及引起PC崩潰或掛起的軟件錯(cuò)誤時(shí),這些功能將不能提供。此外,當(dāng)設(shè)備2403在PC 2419和可重新設(shè)置圖標(biāo)鍵盤2415的控制下操作時(shí),PC 2419提供從設(shè)備2403到電話網(wǎng)絡(luò)的連接2421。當(dāng)PC 2419故障時(shí)這個(gè)連接也會(huì)失效。
當(dāng)PC 2419發(fā)生故障時(shí)設(shè)備2403仍然可用,這是由于它具有一組允許它作為標(biāo)準(zhǔn)POTS電話工作的單元2404。這些單元包括不可重新設(shè)置圖標(biāo)鍵盤2405、POTS接口2407以及到電話網(wǎng)絡(luò)的獨(dú)立接口2402。鍵盤2405、揚(yáng)聲器2409、以及麥克風(fēng)2411都連接到POTS接口2407,因此,只要電話網(wǎng)絡(luò)本身可用,設(shè)備2403可以繼續(xù)提供POTS電話業(yè)務(wù)。到電話網(wǎng)絡(luò)2402的連接可以直接通到用戶環(huán)路或連接到用戶環(huán)路的PBX。為了保證設(shè)備2403的用戶了解到可重新設(shè)置圖標(biāo)鍵盤2415控制之下的部分2413不能工作,PC 2419中的擴(kuò)展卡1901(如前所述)通過(guò)停止向部分2413提供時(shí)鐘信號(hào)BACP 1957來(lái)響應(yīng)PC 2419的故障。然后接口2417不再給鍵盤2415提供時(shí)鐘信號(hào),接口2407不再響應(yīng)鍵盤2415的輸入,鍵盤2415不再刷新位圖,而且圖標(biāo)符號(hào)以及顏色背景消失。當(dāng)部分2413處于這種狀態(tài)時(shí),用戶就簡(jiǎn)單地使用鍵盤2405。
結(jié)論前面的詳細(xì)描述已經(jīng)對(duì)本領(lǐng)域的技術(shù)人員進(jìn)行了如下揭示有關(guān)如何制造和使用一種電話設(shè)備,該設(shè)備使用標(biāo)準(zhǔn)電話鍵盤的可重新設(shè)置圖標(biāo)表示與其它電話設(shè)備(例如交換機(jī)或執(zhí)行電話功能的服務(wù)器)相互作用。當(dāng)詳細(xì)描述揭示了實(shí)現(xiàn)本發(fā)明的發(fā)明者目前所了解的最佳模式時(shí),顯然對(duì)于該詳細(xì)描述以及發(fā)明本身的性質(zhì)可以創(chuàng)立能夠?qū)崿F(xiàn)發(fā)明原則的不同類型的實(shí)施例。本發(fā)明的各單元可在電話設(shè)備、服務(wù)器或交換機(jī)上按照多種方式進(jìn)行分布,而且本發(fā)明的各單元彼此進(jìn)行通信及與電話系統(tǒng)進(jìn)行通信的方式也有很多種。特別是,本發(fā)明可以在任何類型的電話系統(tǒng)中實(shí)現(xiàn),無(wú)論有線或無(wú)線,模擬或數(shù)字。
對(duì)于前述的所有原因,該詳細(xì)描述應(yīng)該在所有方面都認(rèn)為是示范生的而不是限制性的,這里所揭示的發(fā)明范圍不是從詳細(xì)描述確定的,而是按照專利法所允許的完整范圍解釋從權(quán)利要求書確定的。
權(quán)利要求
1.一種與執(zhí)行電話功能的第一設(shè)備一起使用的用戶接口設(shè)備,該用戶接口設(shè)備包括標(biāo)準(zhǔn)12鍵電話鍵盤按鈕的表示,該按紐是用戶可重新設(shè)置圖標(biāo)的、和可操作的,而且到第一設(shè)備的接口,該接口將一個(gè)指示從用戶接口設(shè)備提供到第一設(shè)備,表示用戶執(zhí)行的操作已經(jīng)選擇了一個(gè)給定的按鈕并將按鈕的圖標(biāo)從第一設(shè)備提供給用戶接口設(shè)備,第一設(shè)備通過(guò)給接口提供圖標(biāo)及/或執(zhí)行一個(gè)或多個(gè)電話功能來(lái)響應(yīng)該指示。
2.權(quán)利要求1中提出的用戶接口設(shè)備,其特征在于執(zhí)行電話功能的第一設(shè)備還執(zhí)行其它功能;而且該設(shè)備還通過(guò)向接口提供圖標(biāo)及/或執(zhí)行一個(gè)或多個(gè)其它功能來(lái)響應(yīng)該指示。
3.權(quán)利要求1中提出的用戶接口設(shè)備,其特征在于該接口還將故障指示從第一設(shè)備提供到用戶接口設(shè)備,該故障指示表示第一設(shè)備不能正常工作,而且用戶接口設(shè)備還包括故障響應(yīng)裝置,它通過(guò)禁止按鈕表示來(lái)響應(yīng)該故障指示。
4.權(quán)利要求3中提出的用戶接口設(shè)備,其特征在于故障響應(yīng)設(shè)備通過(guò)停止向第一設(shè)備提供用戶已經(jīng)選擇了一個(gè)給定按鈕的操作指示,從而禁止該表示。
5.權(quán)利要求4中提出的用戶接口設(shè)備,其特征在于故障響應(yīng)設(shè)備使按鈕表示停止顯示圖標(biāo)。
6.權(quán)利要求3中提出的用戶接口設(shè)備還包括執(zhí)行電話功能的第二設(shè)備,該第二設(shè)備不受第一設(shè)備故障的影響。
7.權(quán)利要求6中提出的用戶接口設(shè)備,其特征在于第二設(shè)備還包括電話鍵盤。
8.權(quán)利要求7中提出的用戶接口設(shè)備,其特征在于第二設(shè)備執(zhí)行模擬電話功能。
9.權(quán)利要求1到8中任何一個(gè)提出的用戶接口設(shè)備,其特征在于到第一設(shè)備的接口是數(shù)字的。
10.權(quán)利要求9中提出的用戶接口設(shè)備,其特征在于數(shù)字接口是數(shù)字分組接口。
11.權(quán)利要求1到8中任何一個(gè)提出的用戶接口設(shè)備,其特征在于該表示是帶有至少12鍵的可重新設(shè)置圖標(biāo)鍵盤。
12.權(quán)利要求1到8中任何一個(gè)提出的用戶接口設(shè)備,其特征在于第一設(shè)備是計(jì)算機(jī)系統(tǒng)。
13.權(quán)利要求12中提出的用戶接口設(shè)備,其特征在于計(jì)算機(jī)系統(tǒng)執(zhí)行分組電話功能。
14.權(quán)利要求12中提出的用戶接口設(shè)備,其特征在于計(jì)算機(jī)系統(tǒng)包括將接口連接到第一設(shè)備的擴(kuò)展單元,擴(kuò)展單元只在接收到計(jì)算機(jī)系統(tǒng)發(fā)出的預(yù)定命令序列之后才可操作。
15.權(quán)利要求1到8中任何一個(gè)提出的用戶接口單元,其特征在于第一設(shè)備是電話交換機(jī)。
16.權(quán)利要求15中提出的用戶接口設(shè)備,其特征在于到電話交換機(jī)的接口是數(shù)字的。
17.權(quán)利要求16中提出的用戶接口設(shè)備,其特征在于數(shù)字接口是數(shù)字分組接口。
18.權(quán)利要求1到8中任何一個(gè)提出的用戶接口設(shè)備,其特征在于第一設(shè)備執(zhí)行數(shù)據(jù)分組電話功能。
19.權(quán)利要求1到8中任何一個(gè)提出的用戶接口設(shè)備,其特征在于第一設(shè)備執(zhí)行無(wú)線電話功能。
20.權(quán)利要求1到8中任何一個(gè)提出的用戶接口設(shè)備,其特征在于第一設(shè)備是用戶交換機(jī)。
21.權(quán)利要求1到8中任何一個(gè)提出的用戶接口,其特征在于用戶接口設(shè)備包括第一設(shè)備。
22.權(quán)利要求21中提出的用戶接口,其特征在于第一設(shè)備執(zhí)行數(shù)據(jù)分組電話功能。
23.權(quán)利要求21中提出的用戶接口,其特征在于第一設(shè)備執(zhí)行無(wú)線電話功能。
24.一種與第一數(shù)控電話設(shè)備一起使用的用戶接口設(shè)備,該用戶接口設(shè)備包括麥克風(fēng);揚(yáng)聲器;第一鍵盤;連接到麥克風(fēng)、揚(yáng)聲器、以及第一鍵盤用于執(zhí)行獨(dú)立于第一設(shè)備的電話功能的第二電話設(shè)備;帶有至少12個(gè)可重新設(shè)置圖標(biāo)按鈕的第二鍵盤;以及介于第二鍵盤、揚(yáng)聲器、麥克風(fēng)、以及第一設(shè)備之間的接口,該接口包括按鈕選擇指示器,用于從用戶接口設(shè)備向第一設(shè)備提供數(shù)字指示,表示用戶執(zhí)行的操作已經(jīng)在第二鍵盤上選擇了一個(gè)給定按鈕;從第一設(shè)備接收按鈕的數(shù)字圖標(biāo)并將它們提供給第二鍵盤的圖標(biāo)接收器,以及故障指示接收器,用于從第一設(shè)備接收第一設(shè)備故障指示并通過(guò)禁止第二鍵盤對(duì)其響應(yīng)。
25.權(quán)利要求24中提出的用戶接口設(shè)備,其特征在于第二電話設(shè)備由電話系統(tǒng)供電。
26.權(quán)利要求24中提出的用戶接口設(shè)備,其特征在于故障指示接收器包括響應(yīng)故障指示的設(shè)備,該響應(yīng)通過(guò)停止向第一設(shè)備提供用戶已經(jīng)選擇了一個(gè)給定按鈕的操作指示來(lái)執(zhí)行。
27.權(quán)利要求26中提出的用戶接口設(shè)備,其特征在于故障指示接收器還包括響應(yīng)故障指示的設(shè)備,該響應(yīng)通過(guò)使第二鍵盤的按鈕停止顯示圖標(biāo)來(lái)執(zhí)行。
28.一種用于計(jì)算機(jī)系統(tǒng)的接口模塊,該計(jì)算機(jī)系統(tǒng)包括在執(zhí)行電話功能的軟件控制下工作的設(shè)備,該接口模塊與包括帶有至少12個(gè)可重新設(shè)置圖標(biāo)按鈕的至少一個(gè)鍵盤的用戶設(shè)備一起使用,而且接口模塊包括用于接收來(lái)自軟件的按鈕圖標(biāo)位圖、并將位圖提供給用戶接口設(shè)備的設(shè)備;以及用于從用戶接口設(shè)備接收指示并將指示提供給軟件的設(shè)備,該指示表示用戶已經(jīng)操作了一個(gè)給定的鍵盤按鈕,其中軟件通過(guò)提供圖標(biāo)及/或執(zhí)行一個(gè)或多個(gè)電話功能來(lái)進(jìn)行響應(yīng)。
29.權(quán)利要求28中提出的接口模塊,其特征在于還包括用于檢測(cè)計(jì)算機(jī)系統(tǒng)故障并通過(guò)向用戶接口設(shè)備發(fā)送計(jì)算機(jī)系統(tǒng)故障指示來(lái)進(jìn)行響應(yīng)的設(shè)備,用戶接口設(shè)備通過(guò)禁止鍵盤對(duì)其進(jìn)行響應(yīng)。
30.權(quán)利要求28中提出的接口模塊,其特征在于還包括用于禁止接口模塊操作直到接口模塊從軟件接收了預(yù)定的輸入序列為止的鎖定設(shè)備。
全文摘要
帶有作為可重新設(shè)置圖標(biāo)的按鍵的12鍵鍵盤的電話裝置。電話裝置連接到個(gè)人計(jì)算機(jī)、網(wǎng)絡(luò)服務(wù)器、或交換機(jī)這樣能夠?qū)崿F(xiàn)電話功能的設(shè)備上。電話設(shè)備通過(guò)提供一組新的鍵盤定義及/或完成電話功能,來(lái)響應(yīng)鍵盤輸入。在優(yōu)選實(shí)施例中,電話裝置連接到個(gè)人計(jì)算機(jī)和POTS電話線路,包括并用于POTS電話線路的單獨(dú)的鍵盤。該設(shè)備包括檢測(cè)個(gè)人計(jì)算機(jī)故障的單元并以可重新設(shè)置圖標(biāo)的按鈕自動(dòng)去激活鍵盤,使電話裝置仍可用于POTS線路。還揭示了該電話裝置的低成本實(shí)現(xiàn)以及另一個(gè)實(shí)施例,在該實(shí)施例中電話裝置通過(guò)分組接口連接到電話設(shè)備,或其本身包括實(shí)現(xiàn)電話功能的單元。電話功能可以是在線路交換電話系統(tǒng)中使用的那些,或者在分組電話系統(tǒng)中使用的那些,而且系統(tǒng)本身可以是有線或無(wú)線的。
文檔編號(hào)H04M1/2745GK1218593SQ97194597
公開日1999年6月2日 申請(qǐng)日期1997年3月12日 優(yōu)先權(quán)日1996年3月12日
發(fā)明者G·B·古爾萊, D·L·維普勒, P·F·瓦爾斯 申請(qǐng)人:內(nèi)在解決方案有限公司