MB 裝置準備就緒
本主題說明確保 MB 裝置可存取並已準備好用於網路相關活動的步驟,這是在 MB 服務開始設定數據連線之前需要完成的。 當使用者訂閱已啟動,且用戶資料已儲存至裝置或訂閱者身分識別模組(SIM卡)時,裝置即可使用。
MB 服務假設迷你埠驅動程式會在系統載入它之後自動初始化其 MB 裝置的硬體(無線電堆棧、SIM 卡或對等線路),而不需等候服務的任何指示。
迷你連接埠驅動程式會將其 MB 裝置的初始就緒狀態設定為 WwanReadyStateOff。 在開始初始化時,迷你埠驅動程序必須傳送事件通知,以通知 MB 服務對其裝置就緒狀態的變更。
如果迷你埠驅動程式遇到任何錯誤狀況,則必須停止初始化程式。 清除錯誤條件之後,迷你埠驅動程式可以繼續初始化程式,直到其裝置到達 WwanReadyStateInitialized 就緒狀態為止。
以下是一些錯誤案例的範例:
如果裝置需要 SIM 卡,而迷你埠驅動程式偵測到沒有 SIM 卡,迷你埠驅動程式必須傳送 WwanReadyStateSimNotInserted 就緒狀態事件通知,而迷你埠驅動程式必須維持在該狀態,直到使用者將 SIM 卡插入裝置為止。
如果裝置需要 SIM 卡,而迷你埠驅動程式無法讀取已插入的 SIM 卡(例如,U-RIM 插入至 GSM 型裝置,或將 USIM 插入 CDMA 型裝置),或 SIM 卡與裝置不相容(例如,3G USIM 插入 2G 裝置中, 無法解譯 USIM 格式),迷你埠驅動程式必須傳送 WwanReadyStateBadSim 就緒狀態事件通知,而迷你埠驅動程式必須維持在該狀態,直到使用者將正確的 SIM 卡插入裝置為止。
如果裝置被 PIN 鎖定(適用於使用 SIM 卡的裝置)或密碼(適用於不使用 SIM 卡的裝置),以防止進一步的裝置初始化進度,迷你埠驅動程式必須傳送 WwanReadyStateDeviceLocked 就緒狀態事件通知,而迷你埠驅動程式必須維持在該狀態,直到使用者輸入正確的 PIN 或密碼為止。
如果迷你埠驅動程式偵測到需要啟用服務才能繼續,迷你埠驅動程序必須傳送 WwanReadyStateNotActivated 就緒狀態事件通知,而且必須維持在該狀態,直到服務已啟用為止。 這是北美 CDMA 型裝置的典型行為。
如果迷你埠驅動程序遇到前述以外的失敗情況,迷你埠驅動程序必須傳送 WwanReadyStateFailure 就緒狀態事件通知,並且必須維持在該狀態,直到問題被識別並更正。
請注意,MB 服務不會假設迷你埠驅動程式可以偵測到所有這些錯誤。 服務也不會假設迷你埠驅動程序偵測到這些錯誤狀況的順序。 不過,最好依照先前所列的順序來實作錯誤案例。
在迷你埠驅動程式傳送 WwanReadyStateInitialized 就緒狀態事件通知之前,服務在識別並更正問題之前,不會再繼續進行與網路相關的活動。 不過,服務可能仍會將 OID 傳送至迷你埠驅動程式。
迷你埠驅動程式無需等待 SMS 子系統準備好,再報告 WwanReadyStateInitialized 就緒狀態。 相反地,當SMS子系統準備好傳送和接收SMS訊息時,迷你埠驅動程序應該傳送個別的 OID_WWAN_SMS_CONFIGURATION 通知。
緊急模式支援
如果迷你連接埠驅動程式在處理 OID_WWAN_READY_INFO 時指出它支援緊急呼叫服務,那麼該迷你連接埠驅動程式必須將 WWAN_READY_INFO 結構中的 EmergencyMode 成員設定為 WwanEmergencyModeOn。 在此情況下,迷你埠驅動程序應該會繼續傳送註冊通知給 MB 服務,但服務不會叫用任何自動設定相關功能。
迷你埠驅動程式可以指定他們支援緊急通話服務,即使在他們偵測到 SIM 卡已不再有效的情況下,也可能是因為訂用帳戶未付費,或服務已停用,因為裝置已回報遭竊。
MB Miniport 驅動程式初始化
下圖代表判斷介面是否為合格 MB 介面,以及收集裝置功能相關信息的程式。 當 MB 服務啟動時,會針對每一個列舉的 MB 介面,以及服務運行期間每個新介面的抵達,執行這些步驟。 粗體中的標籤代表 OID 識別碼或交易流程控制。 一般文字中的標籤代表 OID 結構內的重要旗標。
若要初始化 MB 迷你埠驅動程式,請使用下列程式:
MB 服務會傳送同步(封鎖)OID_GEN_PHYSICAL_MEDIUM 查詢要求,以識別 MB 裝置的類型。 迷你埠驅動程式會回應 NdisPhysicalMediumWirelessWan,指出 MB 裝置是 WWAN 裝置。
MB 服務會將同步(封鎖)OID_GEN_MEDIA_SUPPORTED 查詢要求傳送給迷你埠驅動程式,以識別 MB 裝置所使用的媒體類型。 迷你埠驅動程式會回應 NdisMedium802_3,表示其使用乙太網路模擬。
MB 服務會將同步(封鎖)OID_WWAN_DRIVER_CAPS 查詢要求傳送至迷你埠驅動程式,以識別迷你埠驅動程式支援的驅動程式模型版本。 迷你埠驅動程式會回應 WWAN_VERSION。
MB 服務會將異步(非封鎖)OID_WWAN_DEVICE_CAPS 查詢要求傳送給迷你埠驅動程式,以識別 MB 裝置的功能。 迷你埠驅動程式會以暫時通知回應,表示已收到要求,且未來會傳送具有所要求資訊的通知。
迷你埠驅動程式會將 NDIS_STATUS_WWAN_DEVICE_CAPS 通知傳送至 MB 服務,指出迷你埠驅動程序支援的 MB 裝置功能。 例如,如果小型端口驅動程序支援基於 GSM 的裝置,它應該在 NDIS_WWAN_DEVICE_CAPS 結構的 DeviceCaps.WwanCellularClass 成員中指定 WwanCellularClassGsm 的值。 如果迷你連接埠驅動程式支援 CDMA 型裝置,它應該指定 WwanCellularClassCdma。
使用 User-Defined 內容初始化 SIM-Locked GPRS 裝置
下圖說明使用者輸入 SIM PIN 並手動設定存取點名稱字串的案例。 粗體中的標籤是 OID 識別碼或交易式流程控制件,而一般文字中的標籤是 OID 結構內的重要旗標。
若要初始化已鎖定 PIN1 的 GSM 型裝置,請實作下列步驟:
MB 服務會將異步(非封鎖)OID_WWAN_READY_INFO 查詢要求傳送至迷你埠驅動程式,以識別裝置的就緒狀態。 迷你埠驅動程式以臨時認可(NDIS_STATUS_INDICATION_REQUIRED)回應已收到要求,並表示未來會傳送包含所要求資訊的通知。
迷你埠驅動程式會將NDIS_STATUS_WWAN_FAILURE通知傳送至 MB 服務,以向 MB 服務指出訂閱者身分識別模組 (SIM) 已鎖定。
MB 服務會將異步(非封鎖)OID_WWAN_PIN 查詢要求傳送至迷你埠驅動程式。 迷你埠驅動程式會以已收到要求的臨時確認(NDIS_STATUS_INDICATION_REQUIRED)回應,並且未來將會傳送包含要求資訊的通知。
迷你埠驅動程式會將NDIS_STATUS_WWAN_SUCCESS通知傳送至 MB 服務。
MB 服務會將異步(非封鎖)OID_WWAN_PIN 設定要求傳送至迷你埠驅動程式。 迷你埠驅動程式會以臨時通知(NDIS_STATUS_INDICATION_REQUIRED)回應確認已收到要求,並且將在未來傳送包含請求資訊的完整通知。
迷你埠驅動程式會將NDIS_STATUS_WWAN_SUCCESS通知傳送至 MB 服務。
迷你埠驅動程式會將 NDIS_STATUS_WWAN_READY_INFO 通知傳送至 MB 服務,以向 MB 服務指出 MB 裝置的狀態 WwanReadyStateInitialized。
MB 服務會將異步(非封鎖)OID_WWAN_REGISTER_STATE 查詢要求傳送至迷你埠驅動程式。 迷你埠驅動程式會以暫時性確認(NDIS_STATUS_INDICATION_REQUIRED)回應表示已收到該要求,並將在未來傳送包含要求資訊的通知。
迷你埠驅動程式會將NDIS_STATUS_WWAN_SUCCESS通知傳送至 MB 服務。
迷你埠驅動程式會將 NDIS_STATUS_WWAN_REGISTER_STATE 通知傳送至 MB 服務。
MB 服務會將異步(非封鎖)OID_WWAN_HOME_PROVIDER 查詢要求傳送至迷你埠驅動程式。 迷你埠驅動程式會以暫時確認(NDIS_STATUS_INDICATION_REQUIRED)已收到這項要求作為回應,並且將來會傳送通知,包含所要求的資訊。
迷你埠驅動程式會將NDIS_STATUS_WWAN_SUCCESS通知傳送至 MB 服務。
迷你埠驅動程式會將 NDIS_STATUS_WWAN_REGISTER_STATE 通知傳送至 MB 服務。
MB 服務會將異步(非封鎖)OID_WWAN_PACKET_SERVICE 要求傳送至迷你埠驅動程式。 迷你埠驅動程式會以已收到要求的臨時確認通知(NDIS_STATUS_INDICATION_REQUIRED)回應,并且未來會傳送包含所要求資訊的通知。
迷你埠驅動程式會將 NDIS_STATUS_WWAN_PACKET_SERVICE 通知傳送至 MB 服務。
MB 服務會將異步(非封鎖)OID_WWAN_PROVISIONED_CONTEXTS 查詢要求傳送至迷你埠驅動程式。 迷你埠驅動程式將以臨時確認 (NDIS_STATUS_INDICATION_REQUIRED) 回應表示已收到請求,並在未來發送包含所需資訊的通知。
迷你埠驅動程式會將 NDIS_STATUS_WWAN_PROVISIONED_CONTEXTS 傳送至 MB 服務。
MB 服務會將異步(非封鎖)OID_WWAN_PROVISIONED_CONTEXTS 設定要求傳送給 MB 服務。 迷你埠驅動程式會以暫時回覆(NDIS_STATUS_INDICATION_REQUIRED)確認已收到請求,並將在未來傳送包含所要求資訊的通知。
迷你埠驅動程式會將NDIS_STATUS_WWAN_SUCCESS傳送至 MB 服務。
另請參閱
如需裝置整備的詳細資訊,請參閱 OID_WWAN_READY_INFO。
如需使用配置內容初始化裝置的詳細資訊,請參閱 MB 配置內容的操作。