Операции с SMS в МБ
В этом разделе описываются операции по настройке, чтению и получению, отправке и удалению сообщений с помощью возможностей службы коротких сообщений (SMS) устройства в МБ.
Поддержка SMS является обязательной. Драйверы мини-портов должны устанавливать соответствующие флаги отправки и получения SMS, которые они поддерживают при обработке запросов OID_WWAN_DEVICE_CAPS в элементе WwanSmsCapsструктуры WWAN_DEVICE_CAPS . Если драйверы мини-портов не поддерживают SMS, они должны указать WWAN_SMS_CAPS_NONE и вернуть WWAN_STATUS_SMS_UNKNOWN_ERROR для всех идентификаторов OID, связанных с SMS.
Драйверы мини-порта должны обрабатывать операции SMS только после того, как OID_WWAN_READY_INFO возвращает WwanReadyStateInitialize в качестве состояния готовности устройства. Драйверы miniport должны обрабатывать некоторые операции SMS, такие как отправка SMS-сообщения, только после того, как устройство зарегистрировано в сети поставщика (хотя это не обязательно регистрация службы данных).
Служба MB не проводит различий между различными хранилищами сообщений, доступными на устройстве. Таким образом, драйверы мини-портов должны обрабатывать все хранилища сообщений и проектировать одно виртуальное хранилище сообщений, доступ к которым осуществляется с помощью виртуального индекса. Например, если устройство имеет три хранилища сообщений, драйвер мини-порта должен обрабатывать их все вместе и представлять их в качестве единого хранилища сообщений для службы.
Модель драйвера MB поддерживает следующие операции SMS:
Конфигурация SMS
Чтение SMS
Краткое руководство по отправке SMS-сообщений
Удаление SMS
Мы рекомендуем использовать драйверы miniport для поддержки операций настройки, чтения, отправки и удаления 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 . Реализация API WinRT SMS
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. Desktop по-прежнему использует vnelib.dll (версия C++), так как часть CDMA SMS не переносится в vnelibrary.dll (версия C#). Таким образом, вы найдете две версии списков функциональных тестов.
Тесты аппаратного лабораторного набора (HLK)
Все доступные в настоящее время тесты HLK, связанные с MB-SMS:
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"
Журналы можно собирать и декодировать с помощью следующих инструкций: Сбор журналов в МБ.
Специальные сообщения
Сообщения оператора
Операторы могут подготавливать устройства для обработки определенных сообщений ранее. Эта функция больше не доступна, но она еще не полностью удалена. Код ProvisioningEngine обрабатывает уведомления оператора. Дополнительные сведения см. в разделе Уведомления исобытия оператора.
Широковещательные сообщения
Дополнительные сведения об оповещениях об экстренных ситуациях с помощью SMS см. в разделе SmsBroadcastMessage и SmsBroadcastType.
Возможности UWP для SMS
Устаревший API SMS
Существует два устаревших API SMS: sms и smsSend.
Последняя версия API SMS
- cellularMessaging
Дополнительные сведения см. в разделе UWP SMS.