位址
位址的概念是大部分通訊作業的核心。 位址代表網路上的位置。 位址的本機指派通常會在服務提供者的安裝期間進行,但稍後可以修改。 如需相關程式的詳細資料,請參閱作業系統的 Microsoft 提供的服務提供者資源套件,以及非 Microsoft 產品的服務提供者檔。
單一位址可由一行裝置共用。 不同的交換器廠商對此概念有不同的名稱,例如位址橋接、多個外觀目錄編號 (MADN) 或橋接外觀。 共用位址上的來電會在與位址相關聯的所有行上提供。 如需 TAPI 辨識的組態描述,請參閱 LINEADDRESSSHARING_常數 。
位址本身是識別網路上位置的字串。 在電話網絡的情況下,位址是具有國家或國際代碼的電話號碼。 如果網路是以 IP 為基礎,則位址可能是 IP 位址。 如需 TAPI 定義的網址類別型,請參閱 LINEADDRESSTYPE_常數 。 服務提供者可以定義其他網址類別型。
Address-Related功能和訊息
不同的位址有不同的功能、功能和狀態。 服務提供者是這類資訊的來源。 TAPI 的裝置查詢功能和狀態和附隨報告機制可讓應用程式管理位址。
應用程式會藉由處理 TAPI 的事件或使用查詢作業來取得這項資訊。 這可讓應用程式考慮因素,例如指定的位址是否支援特定功能,例如 駐留。
TAPI 2.x: 應用程式會呼叫 lineGetAddressCaps 函式來判斷每個位址的電話語音功能,然後在 LINEADDRESSCAPS 資料結構中接收此資訊。 以類似的方式,應用程式可以呼叫 Line Device 的 lineGetDevCaps 來判斷指派給該行的位址數目,以及其他資訊。
TAPI 3.x: 應用程式會使用 位址物件介面 來取得位址功能和事件的相關資訊。
將電話號碼儲存在電子通訊錄中
許多使用者選擇從通訊錄選取其名稱,以撥打人員、傳真機、佈告欄和其他實體。 實際撥號號碼取決於使用者的地理位置,以及要使用的線路裝置連線方式。 例如,桌上型電腦可以存取兩行,一個連線到 PBX,另一個則連線到電話公司的中央辦公室。 呼叫同一方時,可能必須使用不同的號碼。 (若要透過 PBX 撥入,電腦可能需要撥入 「9」 前置詞才能取得外部行,或者透過中央辦公室進行呼叫時可能需要不同的前置詞。) 或者,使用者可能會從可攜式電腦撥打電話,而且想要使用單一靜態通訊錄,即使從不同的位置或電話語音環境呼叫也一樣。 TAPI 的位址轉譯功能可讓使用者通知電腦通話的目前位置和所需的線路裝置。 TAPI 接著會處理任何撥號差異,不需要變更使用者的通訊錄。 應用程式會使用 位址轉譯 ,將位址從 標準位址 格式轉換為 可撥號位址 格式。
相關主題是處理國際通話進度監視,這是透過網路 () 接聽聽音調、特殊資訊音調、忙碌訊號和迴響音等音調的程式。 由於通話進度音的頻率和頻率會因國家或地區而異,因此服務提供者必須知道進行國際撥出通話時所要遵循的通話進度。 因此,應用程式會在撥出電話時指定目的地國家或地區代碼。
標準位址
標準位址格式旨在成為通用常數目錄編號。 基於這個理由,通訊錄中的數位最好是使用標準格式來儲存。
下列詳細資料會考慮電話位址的規範。
標準電話位址是具有下列結構的文字字串:
+ CountryCodeSpace [ (AreaCode) Space] SubscriberNumber | Subaddress ^ Name CRLF ...
下表說明此結構的元件。
元件
意義
+
相當於十六進位 2B。 指出其後面的數位會使用標準格式。
CountryCode
可變大小的字串,包含一或多個數位 「0」 到 「9」 (十六進位 30 到 39,包含) 。 CountryCode是以下列 Space 分隔。 它會識別位址所在的國家或地區。
Space
只有一個空白字元 (十六進位 20) 。 它用來分隔位址之 CountryCode 部分的結尾。
AreaCode
可變大小的字串,包含零或多個數位 「0」 到 「9」 (十六進位 30 到 39,包含) 。 AreaCode 是位址的分區代碼部分,而且是選擇性的。 如果區功能變數代碼存在,它前面必須只有一個左括弧字元 (28) ,後面接著一個右括弧字元, (29) 和一個空白字元 (20) 。
SubscriberNumber
可變大小的字串,包含一或多個數位 「0」 到 「9」 (十六進位 30 到 39,包含) 。 它也可能包含其他格式化字元,包括可撥號位址格式中所述的任何撥號控制字元:
字元
十六進位編碼
! #
$
*
,
?
@
Abcd
P
T
W
abcd
p
t
w
21 23
24
2A
2C
3F
40
41-44
50
54
77
61-64
70
74
79
訂閱者編號不應包含左括弧或右括弧字元 (,這些字元只能用來分隔區功能變數代碼) ,也不應該包含 「|」、「^」 或 CRLF 字元, (用來開始追蹤欄位) 。 最常見的是,訂閱者號碼中的非digit 字元只會包含空格、句點 (「。) 和虛線 (「-」) 。 行TranslateAddress函式傳回的DialableString會省略出現在訂閱者號碼中的任何允許的非digit 字元,但會保留在DisplayableString中。
|
十六進位 (7C) 。 如果存在這個選擇性字元,則後續資訊會追蹤到下一個 + |^ CRLF 或標準位址字串的結尾會視為子位址資訊,如同 ISDN 子位址。
Subaddress
包含子位址的可變大小字串。 字串是以 + 分隔 |^ CRLF 或位址字串的結尾。 在撥號期間,子位址資訊會傳遞至遠端合作物件。 它可以是 ISDN 子位址或電子郵件地址等專案。
^
十六進位 (5E) 。 如果存在這個選擇性字元,則會將後續的 CRLF 或標準位址字串結尾的資訊視為 ISDN 名稱。
名稱
視為名稱資訊的可變大小字串。 名稱是以 CRLF 或標準位址字串的結尾分隔,而且可以包含其他分隔符號。 在撥號期間,名稱資訊會傳遞至遠端合作物件。
CRLF
十六進位 (0D) 後面接著 Hex (0A) ,而且是選擇性的。 如果存在,表示另一個標準數位正遵循此數位。 它用來將多個標準位址分隔為單一位址字串的一部分, (反向多工處理) 。 例如,Microsoft Corporation 主要交換器電話號碼的正式標記法是:
+1 (425) 882-8080
可撥號位址
可撥號位址格式是將位址傳遞至處理電話號碼的服務提供者的格式。 下列詳細資料涉及電話網絡上的可撥號位址。
可撥號號碼格式允許一次提供多個目的地位址。 如果服務提供者藉由設定每個指定目的地的呼叫,然後將資訊串流管理為單一高頻寬媒體資料流程,提供某種形式的反向多工處理,這項功能就很有用。 應用程式會將此通話群組視為單一通話,因為它只會收到代表個別通話匯總的單一通話控制碼。
您也可以在應用層級支援反向多工處理。 若要這樣做,應用程式會設定一系列的個別呼叫,並同步處理其媒體串流。
Subaddressing 是在 ISDN 行上提供的功能,可允許比撥號時只使用單一電話號碼更多的資訊。 這項額外資訊可以指定要撥打電話的個別電話延伸模組,或在計算環境中,要發出警示的特定應用程式。 其他參數可以描述要求連接的必要層面,例如速率和計時。
如果服務提供者支援子位址,應用程式會在傳遞至任何需要一項作業的位址中包含此專案。
可撥號電話位址包含部分定址資訊,且本質上是一部分導覽。 任何開頭為 「+」 字元的輸入字串都假設不是標準格式,因此會採用可撥號位址格式,而且會傳回給未修改的應用程式。 可撥號位址是具有下列結構的文字字串:
DialableNumber | Subaddress ^ 名字CRLF ...
下表提供此結構的元件。
元件 | 意義 |
---|---|
DialableNumber | 數位和修飾詞 0-9 A-D * # , ! W w p t t @ $ ? ;以 分隔符號 |^ CRLF 或可撥號位址字串的結尾。 加號 (+) 是可撥號字串中的有效字元。 它表示電話號碼是完整的國際號碼。 在 DialableNumber中,請注意下列定義: 0-9 A-D *# 對應至 DTMF 和/或脈衝數位的字元。 |
! | 十六進位 (21) 。 表示在hook 上 (一半秒的勾點,後面接著一半的 offhook,然後才繼續) 插入撥號字串中。 |
P p | 十六進位 (50) 或 Hex (70) 。 指出要用於其後面的數位的撥盤式撥號。 |
T t | 十六進位 (54) 或 Hex (74) 。 表示 DTMF) 撥號 (音調用於其後面的數位。 |
, | 十六進位 (27) 。 表示要暫停撥號。 暫停的持續時間是裝置專屬的,可以從線路的裝置功能擷取。 您可以使用多個逗號來提供較長的暫停。 |
W w | 十六進位 (57) 或 Hex (77) 。 大寫或小寫 W 表示只有在偵測到撥號音之後,才應該繼續撥號。 |
@ | 十六進位 (40) 。 表示撥號是在撥入可撥號位址的其餘部分之前,先「等候無訊息答案」。 這表示至少等候一個回音音,後面接著數秒的靜音。 |
$ | 十六進位 (24) 。 表示撥入帳單資訊是要等候「帳單訊號」 (,例如信用卡提示音調) 。 |
? | 十六進位 (3F) 。 指出使用者必須在繼續撥號之前先提示。 提供者實際上不會執行提示,但 「?」 會強制提供者拒絕字串無效,讓應用程式需要將其分成部分,並提示使用者之間。 |
; | 十六進位 (3B) 。 如果放在部分指定的可撥號位址字串結尾,則表示可撥號號碼資訊不完整,稍後會提供更多位址資訊。 只有位址的 DialableNumber 部分才允許 「;」 元件。 |
| | 十六進位 (7C) ,而且是選擇性的。 如果存在,則後續資訊會追蹤到下一個 + |^ CRLF,或可撥號位址字串的結尾會被視為子位址資訊, (為 ISDN 子位址) 。 |
Subaddress | 包含子位址的可變大小字串。 字串是以下一個 + 分隔符號 |^ CRLF 或位址字串的結尾。 撥號時,子位址資訊會傳遞至遠端合作物件。 它可以是 ISDN 子位址、電子郵件地址等等。 |
^ | 十六進位 (5E) ,而且是選擇性的。 如果有的話,後續資訊會被視為 ISDN 名稱,以下一個 CRLF 或可撥號位址字串結尾。 |
名稱 | 視為名稱資訊的可變大小字串。 名稱是以 CRLF 或可撥號位址字串的結尾分隔。 撥號時,名稱資訊會傳遞至遠端合作物件。 |
CRLF | 十六進位 (0D) 後面接著 Hex (0A) 。 如果存在,這個選擇性字元表示另一個可撥號號碼正遵循此號碼。 它用來分隔多個可撥號位址做為單一位址字串的一部分, (反向多工處理) 。 |
位址轉譯可用來將位址從標準格式轉譯為可撥號格式。