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 サービスは、デバイスで使用できるさまざまなメッセージ ストアを区別しません。 そのため、ミニポート ドライバーはすべてのメッセージ ストアを処理し、仮想インデックスを使ってアクセスされる 1 つの仮想メッセージ ストアを投影する必要があります。 たとえば、デバイスに 3 つのメッセージ ストアがある場合、ミニポート ドライバーはそれらすべてをまとめて処理し、1 つのメッセージ ストアとしてサービスに表示する必要があります。
MB ドライバー モデルでは、次の SMS 操作がサポートされています。
SMS の構成
Read 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 で実行される異なるバージョンがあります。 SMS の CDMA 部分は vnelibrary.dll (C# バージョン) に移植されていないため、デスクトップでは引き続き vnelib.dll (C++ バージョン) が使用されます。 そのため、機能テスト リストには 2 つのバージョンがあります。
Hardware Lab Kit (HLK) テスト
MB-SMS に関連する、現在利用可能な HLK テストのすべてを次に示します。
TestSms
TestSmsStoreFull
TestWake
TestSimBad
TestDeviceCapsEx
TestSIMNotInserted
テストの実行
netsh を使用して、テスト リストと HLK テストを実行できます。 netsh ツールの使用方法の詳細については、netsh mbn と netsh mbn test installation を参照してください。
netsh mbn test feature=sms testpath="C:\data\test\bin" taefpath="C:\data\test\bin" param="AccessString=internet"
ログの収集とデコードは、MB 収集ログの手順で実行できます。
特別なメッセージ
オペレーター メッセージ
オペレーターは、特定のメッセージを早めに処理するためにデバイスをプロビジョニングできます。 これは使用できなくなりましたが、この機能はまだ完全には削除されていません。 ProvisioningEngine コードはオペレーター通知を処理します。 詳細については、「オペレーター通知」と「オペレーター イベント」を参照してください。
ブロードキャスト メッセージ
SMS による緊急アラートの詳細については、SmsBroadcastMessage と SmsBroadcastType を参照してください。
SMS 用の UWP 機能
レガシ SMS API
レガシ SMS API には、sms と smsSend の 2 つがあります。
最新の SMS API
- cellularMessaging
詳細については、UWP SMS を参照してください。