TAPI 版本控制

經過一段時間後,可能會產生不同版本的 TAPI、應用程式和服務提供者。 這些新版本可以建立新的定義,例如新功能、資料結構中的新成員,以及新的位欄位。 因此,版本號碼必須指出如何解譯各種資料結構。

為了允許不同版本的應用程式、TAPI 本身的版本,以及不同廠商的服務提供者版本的最佳互通性,Microsoft Telephony 為應用程式提供簡單的版本交涉機制。 TAPI 和電話語音服務提供者需要針對每一行裝置同意兩個不同的版本。 第一個是與 TAPI 和電話語音服務提供者交涉的版本, (TSP) 基本和補充電話語音,稱為 TAPI 介面版本。 另一個適用于提供者特定的擴充功能,如果有的話,又稱為擴充功能版本。 TAPI 基本和增補功能所使用的資料結構和資料類型格式是由 TAPI 版本所定義,而延伸模組版本則決定廠商特定延伸模組所定義之資料結構的格式。

lineNegotiateAPIVersion函式會交涉 TAPI 版本,而 lineNegotiateExtVersion會交涉 TSP 擴充功能版本。 單一 TSP 可以處理多個版本,而且如果使用較舊的 TSP,應用程式必須「回復」為使用較舊的版本。 在 lineNegotiateAPIVersion 中, dwApiVersion 參數預設為根據版本的值,如下所示。

TAPI 版本 預設值
1.3 0x00010003
1.4 0x00010004
2.0 0x00020000
2.1 0x00020001
2.2 0x00020002

 

不過,只要 TSP 本身使用比應用程式還新的版本,TAPI 就會讓這更容易。 如果 TSP 確實是較新的,則 TAPI 能夠將「向下」轉譯為應用程式的版本。 例如,TAPI 2.0 TSP 不需要特別能夠處理 TAPI 1.4 版。 如果執行 TAPI 1.4 應用程式,TAPI 會將所有 TAPI 2.0 結構和訊息轉換成 TAPI 1.4 對等專案,或盡可能接近。 如果 TAPI 1.4 中沒有接近近似值,則會遺失所有 TAPI 2.0 特定資訊。

延伸模組版本的精確意義是提供者特定的。 若要使用支援延伸模組的 TSP,請參閱提供者的檔。

TAPI 有數個版本。 雖然這些版本大多涉及 TAPI 和 Telephony Service Provider Interface (TSPI) 檔集的變更,但每個版本都有其他影響,也就是架構差異、作業系統變化、可轉散發套件和 TSP 開發問題。

TAPI 版本 散發
1.0 – 1.2 不應再使用的 Beta 版本。
1.4 包含在 Windows 95 中。
1.5 包含在 Windows CE 1.0 中。
2.0 包含在 sp3 Windows NT 4.0 中。
2.1 隨附于 sp4 和 Windows 98 Windows NT 4.0 中。
2.2 包含在 Windows Server 2003、Windows XP 和 Windows 2000 中。