MB SMS 操作

本主题介绍使用短消息服务 (短信) MB 设备的功能配置、读取/接收、发送和删除消息的操作。

短信支持是必需的。 微型端口驱动程序必须在 WWAN_DEVICE_CAPS 结构的 WwanSmsCaps 成员中处理OID_WWAN_DEVICE_CAPS查询请求时,设置它们支持的相应发送和接收短信功能标志。 如果微型端口驱动程序不支持短信,它们应指定WWAN_SMS_CAPS_NONE并返回所有与短信相关的 OID 的WWAN_STATUS_SMS_UNKNOWN_ERROR。

微型端口驱动程序应仅在 OID_WWAN_READY_INFO 返回 WwanReadyStateInitialize 作为设备就绪状态后处理短信操作。 微型端口驱动程序应仅在设备在提供程序网络上注册后处理某些短信操作,例如发送短信, (但不一定是数据服务注册) 。

MB 服务不区分设备中可用的不同消息存储。 因此,微型端口驱动程序必须处理所有消息存储,并投影通过虚拟索引访问的单个虚拟消息存储。 例如,如果设备有三个消息存储,微型端口驱动程序必须统一处理所有这些消息,并将其作为单个消息存储呈现给服务。

MB 驱动程序模型支持以下 SMS 操作:

  • 短信配置

  • 读取短信

  • 发送短信

  • 删除短信

我们建议微型端口驱动程序支持短信配置、读取、发送和删除操作,以及通知用户设备收到的任何新短信。

有关短信操作的详细信息,请参阅 OID_WWAN_SMS_CONFIGURATIONOID_WWAN_SMS_READOID_WWAN_SMS_SENDOID_WWAN_SMS_DELETEOID_WWAN_SMS_STATUS

相关服务和驱动程序

SmsRouterSvc.dll - 与 WwanSvc 交互以处理发送和接收图像的服务

MbSmsApi.dll - WinRT 短信 API 的实现

UT_SmsRouter.dll - 已载入真实设备测试

SMS 体系结构/流

短信块图

显示 SMS 体系结构流的示意图。

短信应用注册

显示短信应用注册过程的示意图。

发送短信

显示短信发送过程的示意图。

API 接收消息

显示 API 接收消息过程的示意图。

应用生命周期

显示短信应用生命周期的示意图。

服务生命周期

显示服务生命周期的示意图。

测试

自动短信测试

以下测试是自动执行的,并已载入到 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 测试:

正在运行测试

通过 netsh,可以运行测试列表和 HLK 测试。 有关使用 netsh 工具的详细信息,请参阅 netsh mbnnetsh mbn 测试安装

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

可以使用以下说明收集和解码日志: MB 收集日志

特殊消息

操作员消息

操作员可以预配设备以提前处理特定消息。 此功能不再可用,但该功能尚未完全删除。 代码 ProvisioningEngine 处理操作员通知。 有关详细信息,请参阅 操作员通知操作员事件

广播消息

有关通过短信发出紧急警报的详细信息,请参阅 SmsBroadcastMessageSmsBroadcastType

用于短信的 UWP 功能

旧版短信 API

有两个旧版短信 API: smssmsSend

最新短信 API

  • cellularMessaging

有关详细信息,请参阅 UWP 短信