VoIP 設定

上次修改主題的時間: 2009-05-14

針對 VoIP 設定 Office Communications Server 2007 R2 基礎結構必須執行下列工作:

  • 將電話號碼正規化成為業界標準 E.164 格式或視需要化成其他格式。
  • 建立稱為位置設定檔的位置撥號對應表,指定如何依據撥號的位置來轉譯號碼的字串。
  • 定義電話使用方式記錄,用來定義使用者的通話權限。
  • 建立路由,指定撥打到已定義電話號碼模式的通話要使用何種媒體閘道。

以下章節將分別討論這些工作。

電話號碼正規化

電話號碼正規化是將以各種格式輸入的號碼字串轉譯成單一標準格式的程序。Enterprise Voice 需要正規化的電話號碼來執行以下工作:

  • 為反向號碼查閱提供一致的參考。反向號碼查閱程序是將使用者的號碼對應至相應的 SIP URI,以便透過 IP 網路將電話路由傳送到多個使用者端點,其中包括 Office Communicator、Office Communicator Phone Edition,以及類似來電轉接和來電接聽等來電處理選項。
  • 識別及套用來電方的電話使用方式授權 (相當於傳統的「服務類別」選項)。
  • 將電話路由傳送到適當的媒體閘道。

Office Communicator 仍然依賴 Address Book Server 進行反向號碼查閱所需的電話號碼正規化。

Office Communications Server 在執行反向號碼查閱之前,會先將電話號碼正規化。如果正規化的號碼符合具有 Active Directory 識別身分之使用者所指定的主要公司號碼,則電話會分支到與該使用者的 SIP URI 相關的端點。如果伺服器找不到相符的號碼,這表示目標號碼可能在公司外面,而「輸出路由」元件就會檢查致電者的電話使用方式記錄,以判斷是否已授權與該號碼的通話,然後將電話導向適當的媒體閘道,或是通知致電者不允許此通話。

電話號碼正規化結果一般均為 E.164 格式,但若您使用私人編號系統,或所使用的閘道或 PBX 不支援 E.164,則 Office Communications Server 也可轉譯為其他格式。

位置設定檔

在多個地理位置營運的組織需要某個方式將相同的電話號碼字串轉譯成對每一個據點有效的號碼。傳統的 PBX 系統會維護每一個據點的個別號碼計劃來解決此問題。當 PBX 收到對特定使用者分機的來電時,適當的目的地不會有任何模擬兩可的情況,因為 PBX 只會針對它部署所在的據點而設定。但是,Enterprise Voice 基礎結構的情況就很不一樣。Enterprise Voice 與每個據點特有的 PBX 不同,它會分佈到整個企業網路,如果撥打類似 50100 的分機時,將會接到 Redmond 的某個號碼以及 Dallas、London 或 Singapore 的其他不同號碼。

解決方案為位置設定檔。位置設定檔是一組具名的正規化規則,可將具名位置或使用者的電話號碼轉譯成單一標準格式 (通常是 E.164,但亦支援其他格式),以便進行電話授權和電話路由傳送。正規化規則會定義以各種格式表達的電話號碼要如何針對具名位置路由傳送。相同的號碼字串可能會根據撥號地點的地區設定而有不同的解譯和轉譯。

由於 Enterprise Voice 解決方案的目的是要讓使用者從現有的電話語音系統轉換時,能夠有順暢的使用經驗,所以撥號習慣要透過轉換保留下來,這一點很重要。例如,如果在據點 A 的 Bob 習慣撥打 12345 來聯繫 Joe,則當他移到 Enterprise Voice 之後,應該可以繼續撥打 12345 來聯繫 Joe。

大型組織可能需要在有營運辦公室的每一個位置都有不同的位置設定檔。如果您的組織已部署舊版的 PBX (大部分的組織都是這樣做),您可以使用它的撥號對應表來建立位置設定檔。

當使用者撥打電話到未參考為所需電話號碼格式或 SIP URI (使用者 URI) 的目的地時,用戶端會包含一個 phone-context 屬性,用來指定轉譯此號碼應使用的位置設定檔名稱。

例如:INVITE SIP:5550100;phone-context=redmond@contoso.com

但是,如果用戶端所包含的 phone-context 屬性值為 user-default 而非位置設定檔 (例如:INVITE SIP:5550100;phone-context=user-default),Enterprise Voice 應用程式便會查閱並使用已指派給該名使用者的每個使用者位置設定檔。

下列機制將以適當的位置設定檔來設定 Enterprise Voice 用戶端。

Office Communicator

  • [設定使用者精靈] 會為個別使用者指派位置設定檔,再由頻內佈建將每個使用者位置設定檔傳送給使用者。
  • 每個 Office Communications Server 集區均以位置設定檔進行設定。如果沒有為使用者指派每個使用者位置設定檔,頻內佈建就會傳送集區層級的預設位置設定檔。
  • 由於集區可以服務多個位置,所以集區層級的位置設定檔可能會不夠。因此,Office Communicator 也支援透過群組原則物件 (GPO) 為使用者設定位置設定檔。

Microsoft Office Communicator Phone Edition

  • 每個使用者位置設定檔,或是支援的位置設定檔和集區層級預設值的清單,都會透過頻內佈建傳送給裝置。
  • 使用者可以使用裝置的使用者介面來設定預設位置設定檔。每一個位置設定檔都有一份排序的正規化規則清單,這些規則是用來轉譯撥打的號碼。正規化規則包含下列項目:
    • 號碼模式 – 規則運算式
    • 轉譯 – 轉譯模式
      例如:
      NormRule1     ^5(\d{4})$     +1425555$1
      此規則會將撥打的號碼 50100 轉譯為 E.164 格式 +14255550100。規則運算式 (^5(\d{4})$) 會比對任何以數字 5 開頭且後面接著任何四位數字的號碼。
Dd425274.note(zh-tw,office.13).gif附註:
位置設定檔中的正規化規則順序很重要,因為會使用符合的第一個規則來轉譯號碼。如果找不到任何符合項目,就會將錯誤回應傳送給致電者。

圖 1 顯示 Redmond、Dallas 和 New York 這三個位置的位置設定檔,而且包含了一些範例正規化規則 (包含在位置設定檔中)。

圖 1. Redmond、Dallas 和 New York 的位置設定檔

Dd425274.d331a584-fb22-4142-a518-e1346c3cf7d1(zh-tw,office.13).jpg

電話使用方式記錄

電話使用方式記錄會提供一個快速而簡單的方法來為使用者指派通話權限,以及幫助路由的優先順序設定和選擇。例如,暫時簽約的員工可能不會獲得撥打長途電話的權限,而可能只有某些員工或工作群組才准許撥打國際電話。電話使用方式記錄是您為了識別通話目的地類別而建立的任意標籤。例如,本地、區碼、州、省、美國、新加坡和國際。就這方面而言,電話使用方式記錄類似於傳統電話語音的「服務類別」。但是,電話使用方式記錄提供了更大的彈性,因為這些記錄會同時套用到使用者原則和路由,如此就可以同時針對個人和群組來規範非常精確的電話授權。

將電話使用方式記錄指派給使用者原則和撥出電話路由,就可以指定允許哪些使用者撥打會利用特定路由的電話。使用者撥號時,Office Communications Server 會將致電者與路由清單 (如本文件下一節所定義) 相比對。如果此路由的電話使用方式記錄也出現在指派給致電者的語音原則中,就允許接通電話。若撥打的號碼不適用於任何已指派給電話使用方式記錄的路由,伺服器便會拒絕通話。

以下是與使用電話使用方式記錄有關的步驟:

  1. 管理員建立包含一組電話使用方式屬性的原則。

    Dd425274.note(zh-tw,office.13).gif附註:
    此原則中的電話使用方式屬性其順序極為重要;建議您依照最偏好到最不偏好的順序安排屬性。
  2. 根據使用者的通話權限為使用者指派原則。

  3. 路由會被指派電話使用方式記錄,這些記錄會用來比對路由與獲授權使用這些路由的使用者。也就是說,使用者可以撥打的電話,只限於使用他們有相符電話使用方式記錄之路由的電話。

路由

當 Office Communications Server 判斷撥打的號碼需要路由傳送到 PSTN 閘道時,會查詢路由表來決定此通話的最佳閘道。

致電的使用者 (或是轉接電話的使用者) 的原則加上撥打的號碼,決定了應將電話路由傳送到哪一個閘道。下列範例說明路由應用程式所使用的邏輯。

routeList = null;
foreach ( usage  in  caller.usages ) – order of usages matters
    foreach ( route  in  routesWithUsage[ usage ] )
        if ( route.RegexPattern.Matches ( targetPhoneNumber ) )
            routeList.Append ( route );

下列是與閘道選擇有關的容錯移轉邏輯範例:

  • 當有多個閘道服務特定路由時,會使用循環配置資源演算法,將電話分散給多個閘道。
  • 每一個閘道都有設定在節流閘道的流量之前,失敗通話的最大嘗試次數。預設的嘗試次數為 10,但是您可以使用 Windows Management Instrumentation (WMI) 指令碼來變更這個值。如果是特定的電話,所指定的閘道可能無法嘗試一次以上。如果服務特定路由的所有閘道都標示為無法使用,則伺服器會捨棄通話,並通知用戶端。您也可以設定要在某段期間從選擇邏輯中移除閘道。在不斷變長的期間當中,沒有回應的閘道會從可用閘道的清單中移除,此期間的最大長度為 60 分鐘,伺服器在這段期間會重複嘗試引起正面的回應。收到正面的回應之後,伺服器就會讓此閘道回到可用閘道的清單。

圖 2. 路由邏輯的範例

Dd425274.4a455c6c-f210-4567-9038-26228d21c789(zh-tw,office.13).bmp

Dd425274.note(zh-tw,office.13).gif附註:
只有來自已啟用 Enterprise Voice 之使用者的電話才會使用之前定義的程序進行路由傳送。如果在路由表中找不到符合項目,會拒絕通話。

如需詳細資訊,包含範例與最佳做法建議,請參閱規劃語音