MB SMS 作業
本主題描述如何使用 MB 裝置的簡訊服務 (SMS) 功能來設定、讀取/接收、傳送和刪除訊息的作業。
SMS 支援是必要的。 迷你埠驅動程式必須在WWAN_DEVICE_CAPS結構的WwanSmsCaps成員中處理OID_WWAN_DEVICE_CAPS查詢要求時所支援的適當傳送和接收 SMS 功能旗標。 如果迷你埠驅動程式不支援 SMS,則應該指定WWAN_SMS_CAPS_NONE,並針對所有與 SMS 相關的 OID 傳回WWAN_STATUS_SMS_UNKNOWN_ERROR。
迷你埠驅動程式應該只在 OID_WWAN_READY_INFO 傳回 WwanReadyStateInitialize 作為裝置就緒狀態之後處理 SMS 作業。 迷你埠驅動程式應該處理某些 SMS 作業,例如傳送 SMS 訊息,只有在裝置在提供者網路上註冊之後,才會 (,但不一定是資料服務註冊) 。
MB 服務不會區分裝置中可用的不同訊息存放區。 因此,迷你埠驅動程式必須處理所有訊息存放區,並投影透過虛擬索引存取的單一虛擬訊息存放區。 例如,如果裝置有三個訊息存放區,迷你埠驅動程式必須共同處理所有訊息,並將其呈現為服務的單一訊息存放區。
MB 驅動程式模型支援下列 SMS 作業:
SMS 設定
讀取 SMS
傳送 SMS
刪除 SMS
我們建議迷你埠驅動程式支援 SMS 設定、讀取、傳送和刪除作業,以及通知使用者裝置所接收的任何新 SMS 訊息。
如需 SMS 作業的詳細資訊,請參閱 OID_WWAN_SMS_CONFIGURATION、 OID_WWAN_SMS_READ、 OID_WWAN_SMS_SEND、 OID_WWAN_SMS_DELETE和 OID_WWAN_SMS_STATUS。
相關服務和驅動程式
SmsRouterSvc.dll - 與 WwanSvc 互動以處理傳送和接收影像的服務
MbSmsApi.dll - WinRT SMS API 的實作
UT_SmsRouter.dll - 已上線至實際裝置測試
SMS 架構/流程
SMS 區塊圖
SMS 應用程式註冊
傳送 SMS
API 接收訊息
應用程式生命週期
服務生命週期
測試
自動化 SMS 測試
下列測試會自動化並上線至 RI-TP。 它們每天執行,且應該通過 100%。
MobilebroadbandExperience\SmsApi
MobilebroadbandExperience\SMSCDMA
MobilebroadbandExperience\SMSDecodingTests
MobilebroadbandExperience\SMSEncodingTests
WWAN\SMS\Service\UnitTests
SmsApi 測試具有在桌面和 onecoreuap 上執行的不同版本。 桌面仍會使用 vnelib.dll (C++ 版本) ,因為 SMS 的 CDMA 部分未 移植到vnelibrary.dll (C# 版本) 。 因此,您會找到兩個版本的功能測試清單。
硬體實驗室套件 (HLK) 測試
以下是與 MB-SMS 相關的目前可用 HLK 測試:
TestSms
TestSmsStoreFull
TestWake
TestSimBad
TestDeviceCapsEx
TestSIMNotInserted
正在執行測試
您可以透過 netsh 執行測試清單和 HLK 測試。 如需使用 netsh 工具的詳細資訊,請參閱 netsh mbn 和 netsh mbn 測試安裝。
netsh mbn test feature=sms testpath="C:\data\test\bin" taefpath="C:\data\test\bin" param="AccessString=internet"
您可以使用下列指示收集及解碼記錄: MB 收集記錄。
特殊訊息
運算子訊息
操作員可以布建裝置以稍早處理特定訊息。 此功能已不再提供,但尚未完全移除此功能。 布建Engine 程式碼會處理操作員通知。 如需詳細資訊,請參閱 操作員通知 和 操作員事件。
廣播訊息
如需透過 SMS 緊急警示的詳細資訊,請參閱 SmsBroadcastMessage 和 SmsBroadcastType。
SMS 的 UWP 功能
舊版 SMS API
有兩個舊版 SMS API: sms 和 smsSend。
最新的 SMS API
- cellularMessaging
如需詳細資訊,請參閱 UWP SMS。