ISmsDevice ISmsDevice ISmsDevice ISmsDevice ISmsDevice Interface


This interface controls a mobile broadband SMS device. It is the primary entry point to SMS services on the device.


This functionality is only available to mobile operator apps and UWP apps given privileged access by mobile network operators, mobile broadband adapter IHV, or OEM. For more information, see Mobile Broadband: device apps.

public : interface ISmsDevice
struct winrt::Windows::Devices::Sms::ISmsDevice
public interface ISmsDevice
Public Interface ISmsDevice
// You can't instantiate an interface directly in JavaScript. You can use objects that implement the interface, however.

Windows 10 requirements

Device family
Windows Desktop Extension SDK (introduced v10.0.10240.0)
API contract
Windows.Devices.Sms.LegacySmsApiContract (introduced v1)
sms cellularMessaging


AccountPhoneNumber AccountPhoneNumber AccountPhoneNumber AccountPhoneNumber AccountPhoneNumber

Returns the phone number associated with the SMS device. The phone number can be used to associate incoming messages with the account and possibly an external storage mechanism such as an account inbox.

CellularClass CellularClass CellularClass CellularClass CellularClass

Returns the cellular class of the SMS device. The class can be used to determine which encodings are appropriate or which device limitations are in effect.

DeviceStatus DeviceStatus DeviceStatus DeviceStatus DeviceStatus

Returns the SMS device's status, which indicates whether the device is ready, or not. It also indcates what type of problem exists if the device is not ready.

MessageStore MessageStore MessageStore MessageStore MessageStore

Accesses the on-device message store. The store holds messages until a client can retrieve them. On some devices, for example, the store may correspond to the SIM storage for SMS messages.


CalculateLength(SmsTextMessage) CalculateLength(SmsTextMessage) CalculateLength(SmsTextMessage) CalculateLength(SmsTextMessage) CalculateLength(SmsTextMessage)

Estimates the transmitted message length of the specified text message. The estimate can be useful to clients who want to give an indication of how many messages will be sent on the network to carry the text of the full message.

SendMessageAsync(ISmsMessage) SendMessageAsync(ISmsMessage) SendMessageAsync(ISmsMessage) SendMessageAsync(ISmsMessage) SendMessageAsync(ISmsMessage)

Asynchronously sends a message using the SMS device. The method is asynchronous because the send operation might not occur instantaneously. The asynchronous operation object is returned immediately.


SmsDeviceStatusChanged SmsDeviceStatusChanged SmsDeviceStatusChanged SmsDeviceStatusChanged SmsDeviceStatusChanged

Sets an event handler to be called when the status of the SMS device changes.

SmsMessageReceived SmsMessageReceived SmsMessageReceived SmsMessageReceived SmsMessageReceived

Sets an event handler to be called when the device receives a new text message.