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