次の方法で共有


Windows で自動的に最適な文字エンコードを選択する

Windows 8、Windows 8.1、および Windows 10 は、メッセージの内容でサポートされている最も効率的なエンコードに基づいて、SMS メッセージを送信するときに使用する最適な文字エンコードを選択します。 SMS は、少なくとも 1 つの無効な文字が含まれている場合を除き、7 ビット文字セットでエンコードされます。この場合、メッセージ全体が Unicode でエンコードされます。

テキスト モード インターフェイスを使用して SMS メッセージを送信する JavaScript コードの例

try
{
    if (smsDevice != null)
    {
      // defines a text message
      var smsMessage = new Windows.Devices.Sms.SmsTextMessage();
      smsMessage.to = id("phoneNumber").value;
      smsMessage.body = id("messageText").value + "\n\nSent via Windows 8 SMS API";
      var sendSmsMessageOperation = smsDevice.sendMessageAsync(smsMessage);
      console.log("Sending message...");
      sendSmsMessageOperation.then(function (reply)
      {
        console.log("Text message sent.");
      });
    }
    else
    {
      console.log("No SMS device found");
    }
} catch (err) {
    console.log("SMS exception: " + err);
}

必要に応じて、最適なエンコード機能をオーバーライドし、使用する文字セットを指定できます。

Windows 8、Windows 8.1、および Windows 10 では、GSM (3GPP) および CDMA (3GPP2) ネットワークと互換性のあるモバイル ブロードバンド ネットワーク アダプター用の共通文字セットがサポートされています。

次の表に、テキスト モード API でサポートされる文字エンコードの一覧を示します。

ネットワークの種類 文字セット 1 つの SMS セグメントの文字制限 マルチパート SMS セグメントの文字制限
GSM GSM 7 ビットの既定のアルファベットと GSM 7 ビットの既定のアルファベット拡張テーブル 160 142
CDMA 7 ビット ASCII 160 (ネットワークによって異なる場合があります)
CDMA Unicode 70 (ネットワークによって異なる場合があります)

GSM 文字セットは、 3GPP TS 23.038 "アルファベットと言語固有の情報" で定義されています。

テキスト モード インターフェイスを使用して受信した SMS を読み込む