次の方法で共有


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_CONFIGURATIONOID_WWAN_SMS_READOID_WWAN_SMS_SENDOID_WWAN_SMS_DELETE、および OID_WWAN_SMS_STATUS を参照してください。

関連するサービスとドライバー

SmsRouterSvc.dll - WwanSvc と対話して画像の送受信を処理するサービス

MbSmsApi.dll - WinRT SMS API の実装

UT_SmsRouter.dll - 実際のデバイス テストにオンボードされます

SMS アーキテクチャ/フロー

SMS ブロック図

Diagram that shows SMS architecture flow.

SMS アプリの登録

Diagram that shows SMS app registration process.

SMS を送信する

Diagram that shows the SMS send message process.

API のメッセージ受信

Diagram that shows the API receive message process.

アプリのライフサイクル

Diagram that shows the SMS app lifecycle.

サービスのライフサイクル

Diagram that shows the service lifecycle.

テスト

自動 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 テストのすべてを次に示します。

テストの実行

netsh を使用して、テスト リストと HLK テストを実行できます。 netsh ツールの使用方法の詳細については、netsh mbnnetsh mbn test installation を参照してください。

netsh mbn test feature=sms testpath="C:\data\test\bin" taefpath="C:\data\test\bin" param="AccessString=internet"

ログの収集とデコードは、MB 収集ログの手順で実行できます。

特別なメッセージ

オペレーター メッセージ

オペレーターは、特定のメッセージを早めに処理するためにデバイスをプロビジョニングできます。 これは使用できなくなりましたが、この機能はまだ完全には削除されていません。 ProvisioningEngine コードはオペレーター通知を処理します。 詳細については、「オペレーター通知」と「オペレーター イベント」を参照してください。

ブロードキャスト メッセージ

SMS による緊急アラートの詳細については、SmsBroadcastMessageSmsBroadcastType を参照してください。

SMS 用の UWP 機能

レガシ SMS API

レガシ SMS API には、smssmsSend の 2 つがあります。

最新の SMS API

  • cellularMessaging

詳細については、UWP SMS を参照してください。