快速入門:傳送簡訊

重要

SMS 功能取決於您使用的電話號碼,以及您以 Azure 帳單地址決定在 內運作的國家/地區。 如需詳細資訊,請參閱 訂用帳戶資格

注意

請透過進行這份簡短的調查,與我們分享您對 Azure 通訊服務 的想法和意見反應。


使用 Azure CLI 中的通訊模組來傳送 SMS 訊息,開始使用 Azure 通訊服務。

完成本快速入門後,您的 Azure 帳戶中會產生幾美分或更少的少許費用。

必要條件

先決條件檢查

  • 在終端機或命令視窗中,執行 az --version 以檢查是否已安裝 Azure CLI。

設定

安裝通訊模組

在終端機或命令視窗中執行下列命令,以安裝通訊模組。

az extension add --name communication

登入 Azure CLI

您必須登入 Azure CLI。 您可以從終端機登入 az login ,並提供您的認證。

請確定您使用的是正確的訂用帳戶

如果您的帳戶中有多個訂用帳戶,請確定您在本教學課程中使用正確的訂用帳戶。

在終端機或命令視窗中,執行下列命令來檢查目前的訂用帳戶。

az account show

如果您需要變更訂用帳戶,您可以執行下列命令來執行此動作。

az account set --subscription "<yourSubcriptionId>"

您需要將 取代<yourSubscriptionId>為實際的訂用帳戶標識碼,您可以在 Azure 入口網站 的 [訂用帳戶] 區段中找到。

(選擇性)使用 Azure CLI sms 作業而不傳入 連接字串

您可以將環境變數設定AZURE_COMMUNICATION_CONNECTION_STRING為使用 Azure CLI sms 作業,而不需要使用 --connection_string 傳入 連接字串。 若要設定環境變數,請開啟控制台視窗,然後從下列索引標籤中選取您的作業系統。 將 <yourConnectionString> 用實際的連接字串取代。

開啟主控台視窗,然後輸入下列命令:

setx AZURE_COMMUNICATION_CONNECTION_STRING "<yourConnectionString>"

新增環境變數之後,您可能需要重新啟動任何需要讀取環境變數的執行中程式,包括主控台視窗。 例如,如果您使用 Visual Studio 作為編輯器,請在執行範例之前重新啟動 Visual Studio。

Operations

傳送 1:1 SMS 訊息

若要將簡訊訊息傳送給單一收件者,請使用單一收件者電話號碼從sms模組呼叫 send 方法。

az communication sms send --sender "<fromPhoneNumber>" --recipient "<toPhoneNumber>" --message "Hello world via SMS for Azure CLI!" --connection-string "<yourConnectionString>"

在程式代碼中進行這些取代:

  • 將取代 <fromPhoneNumber> 為您通訊服務資源相關聯的已啟用SMS的電話號碼。
  • 將取代 <toPhoneNumber> 為您想要傳送訊息的電話號碼。
  • <yourConnectionString> 取代為實際的連接字串。

警告

以 E.164 國際標準格式提供電話號碼,例如 +14255550123。 的值 <fromPhoneNumber> 也可以是簡短的程序代碼,例如 23456 或英數位元傳送者識別碼,例如 CONTOSO。

傳送 1:N SMS 訊息

若要將SMS訊息傳送至收件者清單,請從具有多個收件者電話號碼的sms模組呼叫 send 方法。

az communication sms send --sender "<fromPhoneNumber>" --recipient "<toPhoneNumber1>" "<toPhoneNumber2>" "<toPhoneNumber3>" --message "Hello world via SMS for Azure CLI!" --connection-string "<yourConnectionString>"

在程式代碼中進行這些取代:

  • 將取代 <fromPhoneNumber> 為您通訊服務資源相關聯的已啟用SMS的電話號碼。
  • 將取代 <toPhoneNumberN> 為您要傳送訊息的 N 電話號碼。
  • <yourConnectionString> 取代為實際的連接字串。

警告

以 E.164 國際標準格式提供電話號碼,例如 +14255550123。 的值 <fromPhoneNumber> 也可以是簡短的程序代碼,例如 23456 或英數位元傳送者識別碼,例如 CONTOSO。

使用通訊服務 C# SMS SDK 來傳送 SMS 訊息,開始使用 Azure 通訊服務。

完成本快速入門後,您的 Azure 帳戶中會產生幾美分或更少的少許費用。

注意

在 GitHub尋找本快速入門的完成程式代碼。

必要條件

先決條件檢查

  • 在終端機或命令視窗中,執行 dotnet 命令來檢查是否已安裝 .NET SDK。
  • 若要檢視與通訊服務資源相關聯的電話號碼,請登入 Azure 入口網站 並找出您的通訊服務資源。 在左側瀏覽窗格中,選取 [電話 數位]。

設定應用程式環境

若要設定用來傳送訊息的環境,請執行下列各節中的步驟。

建立新的 C# 應用程式

  1. 在主控台視窗中,例如 cmd、PowerShell 或 Bash,使用 dotnet new 命令來建立名稱為 SmsQuickstart的新控制台應用程式。 此命令會建立具有單一原始程式檔的簡單 「Hello World」 C# 專案, Program.cs

    dotnet new console -o SmsQuickstart
    
  2. 將您的目錄變更為新建立的應用程式資料夾,然後使用 dotnet build 命令來編譯您的應用程式。

    cd SmsQuickstart
    dotnet build
    

Install the package

  1. 在應用程式目錄中,請使用下列命令安裝 Azure 通訊服務 SMS SDK for .NET 套件。

    dotnet add package Azure.Communication.Sms --version 1.0.0
    
  2. using將指示詞新增至Program.cs頂端以包含Azure.Communication命名空間。

    
    using System;
    using System.Collections.Generic;
    
    using Azure;
    using Azure.Communication;
    using Azure.Communication.Sms;
    
    

物件模型

下列類別和介面會處理適用於 C# Azure 通訊服務 SMS SDK 的一些主要功能。

名稱 描述
SmsClient 所有SMS功能都需要這個類別。 您可以使用您的訂用帳戶資訊將它具現化,並用它來傳送簡訊。
SmsSendOptions 這個類別提供設定傳遞報告的選項。 如果enable_delivery_report設定為 True,傳遞成功時就會發出事件。
SmsSendResult 這個類別包含SMS服務的結果。

驗證用戶端

在文字編輯器中開啟Program.cs,並以程式代碼取代 方法主體Main,以使用您的 連接字串 初始化 SmsClient 。 下列程式代碼會從名為COMMUNICATION_SERVICES_CONNECTION_STRING的環境變數擷取資源的 連接字串。 瞭解如何管理資源的 連接字串

// This code retrieves your connection string
// from an environment variable.
string connectionString = Environment.GetEnvironmentVariable("COMMUNICATION_SERVICES_CONNECTION_STRING");

SmsClient smsClient = new SmsClient(connectionString);

傳送 1:1 SMS 訊息

若要將SMS訊息傳送給單一收件者,請從SmsClient呼叫 SendSendAsync 函式。 將此程式代碼新增至 方法的Main結尾,Program.cs

SmsSendResult sendResult = smsClient.Send(
    from: "<from-phone-number>",
    to: "<to-phone-number>",
    message: "Hello World via SMS"
);

Console.WriteLine($"Sms id: {sendResult.MessageId}");

在程式代碼中進行這些取代:

  • 將取代 <from-phone-number> 為您通訊服務資源相關聯的已啟用SMS的電話號碼。
  • 將取代 <to-phone-number> 為您想要傳送訊息的電話號碼。

警告

以 E.164 國際標準格式提供電話號碼,例如 +14255550123。 的值 <from-phone-number> 也可以是簡短的程序代碼,例如 23456 或英數位元傳送者識別碼,例如 CONTOSO。

使用選項傳送 1:N SMS 訊息

若要將SMS訊息傳送至收件者清單,請使用收件者電話號碼清單從SmsClient呼叫 SendSendAsync 函式。 您也可以提供選擇性參數,以指定是否應該啟用傳遞報表,以及設定自定義標籤。

Response<IReadOnlyList<SmsSendResult>> response = smsClient.Send(
    from: "<from-phone-number>",
    to: new string[] { "<to-phone-number-1>", "<to-phone-number-2>" },
    message: "Weekly Promotion!",
    options: new SmsSendOptions(enableDeliveryReport: true) // OPTIONAL
    {
        Tag = "marketing", // custom tags
    });

IEnumerable<SmsSendResult> results = response.Value;
foreach (SmsSendResult result in results)
{
    Console.WriteLine($"Sms id: {result.MessageId}");
    Console.WriteLine($"Send Result Successful: {result.Successful}");
}

在程式代碼中進行這些取代:

  • 將取代 <from-phone-number> 為您通訊服務資源相關聯的已啟用SMS的電話號碼。
  • 將和 <to-phone-number-2> 取代<to-phone-number-1>為您想要傳送訊息的電話號碼。

警告

以 E.164 國際標準格式提供電話號碼,例如 +14255550123。 的值 <from-phone-number> 也可以是簡短的程序代碼,例如 23456 或英數位元傳送者識別碼,例如 CONTOSO。

參數 enableDeliveryReport 是選擇性參數,可用來設定傳遞報告。 當您想要在傳遞SMS訊息時發出事件時,這項功能很有用。 請參閱處理SMS事件快速入門,以設定SMS訊息的傳遞報告。

您可以使用 Tag 參數將標記套用至傳遞報表。

執行程式碼

使用 dotnet run 命令從應用程式目錄執行應用程式。

dotnet run

範例指令碼

您可以從 GitHub 下載範例應用程式

使用通訊服務 JavaScript SMS SDK 來傳送 SMS 訊息,開始使用 Azure 通訊服務。

完成本快速入門後,您的 Azure 帳戶中會產生幾美分或更少的少許費用。

注意

在 GitHub尋找本快速入門的完成程式代碼。

必要條件

先決條件檢查

  • 在終端機或命令視窗中,執行 node --version 以檢查是否已安裝Node.js。
  • 若要檢視與通訊服務資源相關聯的電話號碼,請登入 Azure 入口網站 並找出您的通訊服務資源。 在左側瀏覽窗格中,選取 [電話 數位]。

設定應用程式環境

若要設定用來傳送訊息的環境,請執行下列各節中的步驟。

建立新的Node.js應用程式

  1. 開啟終端機或命令視窗,然後執行下列命令,為您的應用程式建立新目錄並流覽至該目錄。

    mkdir sms-quickstart && cd sms-quickstart
    
  2. 執行下列命令,以使用預設設定建立 package.json 檔案。

    npm init -y
    
  3. 使用文字編輯器在專案根目錄中建立名為 send-sms.js 的檔案。

在下列各節中,您會將此快速入門的所有原始程式碼新增至 您剛才建立的send-sms.js 檔案。

Install the package

npm install使用 命令來安裝 Azure 通訊服務 SMS SDK for JavaScript。

npm install @azure/communication-sms --save

選項--save會將連結庫列為package.json檔案中的相依性。

物件模型

下列類別和介面會處理適用於 Node.js Azure 通訊服務 SMS SDK 的一些主要功能。

名稱 描述
SmsClient 所有SMS功能都需要這個類別。 您可以使用您的訂用帳戶資訊將它具現化,並用它來傳送簡訊。
SmsSendRequest 此介面是用來建置SMS要求的模型。 您可以使用它來設定電話號碼和簡訊內容的來回。
SmsSendOptions 此介面提供設定傳遞報告的選項。 如果 enableDeliveryReport 設定為 true,則會在傳遞成功時發出事件。
SmsSendResult 這個類別包含SMS服務的結果。

驗證用戶端

若要驗證用戶端,您可以從 SDK 匯入 SmsClient,並使用您的 連接字串 加以具現化。 您可以從環境變數擷取資源的 連接字串。 例如,本節中的程式代碼會從COMMUNICATION_SERVICES_CONNECTION_STRING環境變數擷取 連接字串。 瞭解如何管理資源的 連接字串

若要匯入用戶端並將其具現化:

  1. 建立名為 send-sms.js 的檔案。

  2. 新增下列程式代碼以 send-sms.js

const { SmsClient } = require('@azure/communication-sms');

// This code retrieves your connection string
// from an environment variable.
const connectionString = process.env['COMMUNICATION_SERVICES_CONNECTION_STRING'];

// Instantiate the SMS client.
const smsClient = new SmsClient(connectionString);

傳送 1:N SMS 訊息

若要將SMS訊息傳送至收件者清單,請使用收件者電話號碼清單從SmsClient呼叫 send 函式。 如果您想要將郵件傳送給單一收件者,請在清單中只包含一個號碼。 將此程式代碼新增至send-sms.js結尾

async function main() {
  const sendResults = await smsClient.send({
    from: "<from-phone-number>",
    to: ["<to-phone-number-1>", "<to-phone-number-2>"],
    message: "Hello World 👋🏻 via SMS"
  });

  // Individual messages can encounter errors during sending.
  // Use the "successful" property to verify the status.
  for (const sendResult of sendResults) {
    if (sendResult.successful) {
      console.log("Success: ", sendResult);
    } else {
      console.error("Something went wrong when trying to send this message: ", sendResult);
    }
  }
}

main();

在程式代碼中進行這些取代:

  • 將取代 <from-phone-number> 為您通訊服務資源相關聯的已啟用SMS的電話號碼。
  • 將和 <to-phone-number-2> 取代<to-phone-number-1>為您想要傳送訊息的電話號碼。

警告

以 E.164 國際標準格式提供電話號碼,例如 +14255550123。 的值 <from-phone-number> 也可以是簡短的程序代碼,例如 23456 或英數位元傳送者識別碼,例如 CONTOSO。

使用選項傳送 1:N SMS 訊息

您也可以提供 options 物件,以指定是否應該啟用傳遞報表,以及設定自定義標籤。


async function main() {
  const sendResults = await smsClient.send({
    from: "<from-phone-number>",
    to: ["<to-phone-number-1>", "<to-phone-number-2>"],
    message: "Weekly Promotion!"
  }, {
    // Optional parameters
    enableDeliveryReport: true,
    tag: "marketing"
  });

  // Individual messages can encounter errors during sending.
  // Use the "successful" property to verify the status.
  for (const sendResult of sendResults) {
    if (sendResult.successful) {
      console.log("Success: ", sendResult);
    } else {
      console.error("Something went wrong when trying to send this message: ", sendResult);
    }
  }
}

main();

在程式代碼中進行這些取代:

  • 將取代 <from-phone-number> 為您通訊服務資源相關聯的已啟用SMS的電話號碼。
  • 將和 <to-phone-number-2> 取代<to-phone-number-1>為您想要傳送訊息的電話號碼。

警告

以 E.164 國際標準格式提供電話號碼,例如 +14255550123。 的值 <from-phone-number> 也可以是簡短的程序代碼,例如 23456 或英數位元傳送者識別碼,例如 CONTOSO。

參數 enableDeliveryReport 是選擇性參數,可用來設定傳遞報告。 當您想要在傳遞SMS訊息時發出事件時,這項功能很有用。 請參閱處理SMS事件快速入門,以設定SMS訊息的傳遞報告。 tag 是選用參數。 您可以使用它將標籤套用至傳遞報表。

執行程式碼

node使用 命令來執行您新增至send-sms.js檔案的程序代碼。


node ./send-sms.js

使用通訊服務 Python SMS SDK 來傳送 SMS 訊息,開始使用 Azure 通訊服務。

完成本快速入門後,您的 Azure 帳戶中會產生幾美分或更少的少許費用。

注意

在 GitHub尋找本快速入門的完成程式代碼。

必要條件

先決條件檢查

  • 在終端機或命令視窗中,執行 python --version 命令來檢查是否已安裝 Python。
  • 若要檢視與通訊服務資源相關聯的電話號碼,請登入 Azure 入口網站 並找出您的通訊服務資源。 在左側瀏覽窗格中,選取 [電話 數位]。

設定應用程式環境

若要設定用來傳送訊息的環境,請執行下列各節中的步驟。

建立新的 Python 應用程式

  1. 開啟終端機或命令視窗。 然後使用下列命令為您的應用程式建立新的目錄,並流覽至它。

    mkdir sms-quickstart && cd sms-quickstart
    
  2. 使用文本編輯器在專案根目錄中建立名為 send-sms.py 的 檔案,並新增程序的結構,包括基本例外狀況處理。

    import os
    from azure.communication.sms import SmsClient
    
    try:
        # Quickstart code goes here.
    except Exception as ex:
        print('Exception:')
        print(ex)
    

在下列各節中,您會將此快速入門的所有原始程式碼新增至 您剛才建立的 send-sms.py 檔案。

Install the package

在應用程式目錄中,請使用下列命令安裝 Azure 通訊服務 SMS SDK for Python 套件。

pip install azure-communication-sms

物件模型

下列類別和介面會處理適用於 Python Azure 通訊服務 SMS SDK 的一些主要功能。

名稱 描述
SmsClient 所有SMS功能都需要這個類別。 您可以使用您的訂用帳戶資訊將它具現化,並用它來傳送簡訊。
SmsSendResult 這個類別包含SMS服務的結果。

驗證用戶端

使用您的 連接字串 具現化 SmsClient。 瞭解如何管理資源的 連接字串

# Create the SmsClient object that you use to send SMS messages.
sms_client = SmsClient.from_connection_string(<connection_string>)

為了簡單起見,本快速入門會使用 連接字串,但在生產環境中,我們建議使用服務主體

傳送 1:1 SMS 訊息

若要將簡訊訊息傳送給單一收件者,請使用單一收件者電話號碼從SmsClient呼叫 send 方法。 您也可以提供選擇性參數,以指定是否應該啟用傳遞報表,以及設定自定義標籤。 將此程式代碼新增至 send-sms.py 區塊try結尾:


# Call send() with SMS values.
sms_responses = sms_client.send(
    from_="<from-phone-number>",
    to="<to-phone-number>",
    message="Hello World via SMS",
    enable_delivery_report=True, # optional property
    tag="custom-tag") # optional property

在程式代碼中進行這些取代:

  • 將取代 <from-phone-number> 為您通訊服務相關聯的已啟用SMS的電話號碼。
  • 將取代 <to-phone-number> 為您想要傳送訊息的電話號碼。

警告

以 E.164 國際標準格式提供電話號碼,例如 +14255550123。 的值 <from-phone-number> 也可以是簡短的程序代碼,例如 23456 或英數位元傳送者識別碼,例如 CONTOSO。

傳送 1:N SMS 訊息

若要將SMS訊息傳送至收件者清單,請使用收件者電話號碼清單從SmsClient呼叫 send 方法。 您也可以提供選擇性參數,以指定是否應該啟用傳遞報表,以及設定自定義標籤。 將此程式代碼新增至 send-sms.py 區塊try結尾:


# Call send() with SMS values.
sms_responses = sms_client.send(
    from_="<from-phone-number>",
    to=["<to-phone-number-1>", "<to-phone-number-2>"],
    message="Hello World via SMS",
    enable_delivery_report=True, # optional property
    tag="custom-tag") # optional property

在程式代碼中進行這些取代:

  • 將取代 <from-phone-number> 為您通訊服務相關聯的已啟用SMS的電話號碼。
  • 將和 <to-phone-number-2> 取代<to-phone-number-1>為您想要傳送訊息的電話號碼。

警告

以 E.164 國際標準格式提供電話號碼,例如 +14255550123。 的值 <from-phone-number> 也可以是簡短的程序代碼,例如 23456 或英數位元傳送者識別碼,例如 CONTOSO。

選擇性參數

參數 enable_delivery_report 是選擇性參數,可用來設定傳遞報告。 當您想要在傳遞SMS訊息時發出事件時,這項功能很有用。 請參閱處理SMS事件快速入門,以設定SMS訊息的傳遞報告。

參數 tag 是選擇性參數,可用來將標籤套用至傳遞報表。

執行程式碼

使用 python 命令從應用程式目錄執行應用程式。

python send-sms.py

完整的 Python 腳本看起來應該類似下列程式代碼:


import os
from azure.communication.sms import SmsClient

try:
    # Create the SmsClient object that you use to send SMS messages.
    sms_client = SmsClient.from_connection_string("<connection string>")
    # Call send() with SMS values.
    sms_responses = sms_client.send(
       from_="<from-phone-number>",
       to="<to-phone-number>",
       message="Hello World via SMS",
       enable_delivery_report=True, # optional property
       tag="custom-tag") # optional property

except Exception as ex:
    print('Exception:')
    print(ex)

使用通訊服務 Java SMS SDK 來傳送 SMS 訊息,開始使用 Azure 通訊服務。

完成本快速入門後,您的 Azure 帳戶中會產生幾美分或更少的少許費用。

注意

在 GitHub尋找本快速入門的完成程式代碼。

必要條件

先決條件檢查

  • 在終端機或命令視窗中,執行 mvn -v 以檢查是否已安裝 Maven。
  • 若要檢視與通訊服務資源相關聯的電話號碼,請登入 Azure 入口網站 並找出您的通訊服務資源。 在左側瀏覽窗格中,選取 [電話 數位]。

設定應用程式環境

若要設定用來傳送訊息的環境,請執行下列各節中的步驟。

建立新的 Java 應用程式

開啟終端機或命令視窗,並流覽至您要在其中建立 Java 應用程式的目錄。 執行下列命令,從 maven-archetype-quickstart 範本產生 Java 專案。

  • 命令提示字元
mvn archetype:generate -DgroupId=com.communication.quickstart -DartifactId=communication-quickstart -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DinteractiveMode=false
  • PowerShell
mvn archetype:generate "-DgroupId=com.communication.quickstart" "-DartifactId=communication-quickstart" "-DarchetypeArtifactId=maven-archetype-quickstart" "-DarchetypeVersion=1.4" "-DinteractiveMode=false"

目標 generate 會建立與值同名的 artifactId 目錄。 在此目錄下, src/main/java 目錄包含專案原始碼、 src/test/java 目錄 包含測試來源,而 pom.xml 檔案是專案的 Project 物件模型 (POM)。

Install the package

文本編輯器中開啟pom.xml 檔案。 將下列相依性元素加入至相依性群組。

<dependency>
    <groupId>com.azure</groupId>
    <artifactId>azure-communication-sms</artifactId>
    <version>1.0.1</version>
</dependency>

設定應用程式架構

在文本編輯器中開啟 /src/main/java/com/communication/quickstart/App.java 、新增匯入指示詞,以及移除 System.out.println("Hello world!"); 語句:

package com.communication.quickstart;

import com.azure.communication.sms.models.*;
import com.azure.core.credential.AzureKeyCredential;
import com.azure.communication.sms.*;
import com.azure.core.util.Context;
import java.util.Arrays;

public class App
{
    public static void main( String[] args )
    {
        // Quickstart code goes here.
    }
}

物件模型

下列類別和介面會處理適用於 Java Azure 通訊服務 SMS SDK 的一些主要功能。

名稱 描述
SmsClientBuilder 這個類別會建立 SmsClient。 您會提供端點、認證和 HTTP 用戶端。
SmsClient 所有SMS功能都需要這個類別。 您可以使用它來傳送簡訊。
SmsSendOptions 這個類別提供新增自定義標籤及設定傳遞報告的選項。 如果 deliveryReportEnabled 設定為 true,則會在傳遞成功時發出事件。
SmsSendResult 這個類別包含SMS服務的結果。

驗證用戶端

若要驗證用戶端,您可以使用您的 連接字串 具現化 SmsClient 。 針對認證,請使用Key來自 Azure 入口網站 的 。 瞭解如何管理資源的 連接字串。 您也可以使用任何實作 介面的 com.azure.core.http.HttpClient 自訂 HTTP 用戶端來初始化用戶端。

若要具現化用戶端,請將下列程式代碼新增至 main 方法:

// You can get your endpoint and access key from your resource in the Azure portal.
String endpoint = "https://<resource-name>.communication.azure.com/";
AzureKeyCredential azureKeyCredential = new AzureKeyCredential("<access-key-credential>");

SmsClient smsClient = new SmsClientBuilder()
                .endpoint(endpoint)
                .credential(azureKeyCredential)
                .buildClient();

您也可以使用 connectionString 函式來提供整個 連接字串,而不是提供端點和存取密鑰。

// You can get your connection string from your resource in the Azure portal.
String connectionString = "endpoint=https://<resource-name>.communication.azure.com/;accesskey=<access-key>";

SmsClient smsClient = new SmsClientBuilder()
            .connectionString(connectionString)
            .buildClient();

傳送 1:1 SMS 訊息

若要將簡訊訊息傳送給單一收件者,請使用單一收件者電話號碼從SmsClient呼叫 send 方法。 您也可以提供選擇性參數,以指定是否應該啟用傳遞報表,以及設定自定義標籤。

SmsSendResult sendResult = smsClient.send(
                "<from-phone-number>",
                "<to-phone-number>",
                "Weekly Promotion");

System.out.println("Message Id: " + sendResult.getMessageId());
System.out.println("Recipient Number: " + sendResult.getTo());
System.out.println("Send Result Successful:" + sendResult.isSuccessful());

在程式代碼中進行這些取代:

  • 將取代 <from-phone-number> 為您通訊服務資源相關聯的已啟用SMS的電話號碼。
  • 將取代 <to-phone-number> 為您想要傳送訊息的電話號碼。

警告

以 E.164 國際標準格式提供電話號碼,例如 +14255550123。 的值 <from-phone-number> 也可以是簡短的程序代碼,例如 23456 或英數位元傳送者識別碼,例如 CONTOSO。

使用選項傳送 1:N SMS 訊息

若要將SMS訊息傳送至收件者清單,請使用收件者電話號碼清單呼叫 send 方法。 您也可以提供選擇性參數,以指定是否應該啟用傳遞報表,以及設定自定義標籤。

SmsSendOptions options = new SmsSendOptions();
options.setDeliveryReportEnabled(true);
options.setTag("Marketing");

Iterable<SmsSendResult> sendResults = smsClient.sendWithResponse(
    "<from-phone-number>",
    Arrays.asList("<to-phone-number1>", "<to-phone-number2>"),
    "Weekly Promotion",
    options /* Optional */,
    Context.NONE).getValue();

for (SmsSendResult result : sendResults) {
    System.out.println("Message Id: " + result.getMessageId());
    System.out.println("Recipient Number: " + result.getTo());
    System.out.println("Send Result Successful:" + result.isSuccessful());
}

在程式代碼中進行這些取代:

  • 將取代 <from-phone-number> 為您通訊服務資源相關聯的已啟用SMS的電話號碼
  • 將和 <to-phone-number-2> 取代<to-phone-number-1>為您想要傳送訊息的電話號碼。

警告

以 E.164 國際標準格式提供電話號碼,例如 +14255550123。 的值 <from-phone-number> 也可以是簡短的程序代碼,例如 23456 或英數位元傳送者識別碼,例如 CONTOSO。

方法 setDeliveryReportEnabled 可用來設定傳遞報告。 當您想要在傳遞SMS訊息時發出事件時,這項功能很有用。 請參閱處理SMS事件快速入門,以設定SMS訊息的傳遞報告。

您可以使用 setTag 方法將標籤套用至傳遞報表。

執行程式碼

  1. 流覽至包含pom.xml檔案的目錄,並使用 mvn 命令編譯專案。

    
    mvn compile
    
    
  2. 建置套件。

    
    mvn package
    
    
  3. 執行下列 mvn 命令以執行應用程式。

    • 命令提示字元
    
    mvn exec:java -Dexec.mainClass="com.communication.quickstart.App" -Dexec.cleanupDaemonThreads=false
    
    
    • PowerShell
    mvn exec:java "-Dexec.mainClass=com.communication.quickstart.App" "-Dexec.cleanupDaemonThreads=false"
    

藉由使用 Azure 通訊服務 SMS 連接器和 Azure Logic Apps,您可以建立可傳送 SMS 訊息的自動化工作流程。 本快速入門說明如何自動傳送簡訊以回應觸發程式事件,這是邏輯應用程式工作流程中的第一個步驟。 觸發程式事件可以是傳入的電子郵件訊息、週期排程、Azure 事件方格 資源事件,或 Azure Logic Apps 所支援的任何其他觸發程式。

Screenshot that shows the Azure portal, which is open to the Logic App Designer, and shows an example logic app that uses the Send SMS action for the Azure Communication Services connector.

雖然本快速入門著重於使用連接器來響應觸發程式,但您也可以使用連接器來回應其他動作,也就是在工作流程中遵循觸發程式的步驟。 如果您不熟悉 Logic Apps,請先檢閱 什麼是 Azure Logic Apps ,再開始。

注意

完成本快速入門後,您的 Azure 帳戶中會產生幾美分或更少的少許費用。

必要條件

重要

SMS 和 PSTN 功能取決於您使用的電話號碼,以及您根據 Azure 帳單地址所決定在內運作的國家/地區。 如需詳細資訊,請瀏覽訂用 帳戶資格 檔。

新增SMS動作

若要使用 Azure 通訊服務 SMS 連接器,將傳送 SMS 動作新增為工作流程中的新步驟,請在邏輯應用程式設計工具中開啟邏輯應用程式工作流程的 Azure 入口網站 中遵循下列步驟

  1. 在設計工具上,在您要新增動作的步驟下,選取 [ 新增步驟]。 或者,若要在步驟之間新增動作,請將指標移至這些步驟之間的箭號上方,選取加號 (+),然後選取 [ 新增動作]。

  2. 在 [ 選擇作業 搜尋] 方塊中, 輸入 Azure Communication Services。 從動作清單中,選取 [ 傳送簡訊]。

    Screenshot that shows the Logic App Designer and the Azure Communication Services connector with the Send SMS action selected.

  3. 現在建立與通訊服務資源的連線。

    1. 在相同的訂用帳戶內:

      1. 提供連線的名稱。

      2. 選取您的 Azure 通訊服務 資源。

      3. 選取 建立

      Screenshot that shows the Send SMS action configuration with sample information.

    2. 使用通訊服務資源的 連接字串:

      1. 提供連線的名稱。

      2. 從下拉式選項中選取 [連線 ionString 驗證]。

      3. 輸入通訊服務資源的 連接字串。

      4. 選取 建立

      Screenshot that shows the Connection String Authentication configuration.

    3. 使用服務主體 (請參閱服務主體建立):

      1. 提供連線的名稱。

      2. 從下拉式選項中選取 [服務主體] [Microsoft Entra 應用程式] [驗證]。

      3. 輸入服務主體的租用戶標識碼、用戶端標識碼和客戶端密碼。

      4. 輸入通訊服務資源的 [通訊服務端點 URL] 值。

      5. 選取 建立

      Screenshot that shows the Service Principal Authentication configuration.

  4. 在 [ 傳送 SMS ] 動作中,提供下列資訊:

    • 來源和目的地電話號碼。 為了進行測試,您可以使用自己的電話號碼作為目的地電話號碼。

    • 您想要傳送的訊息內容,例如“Hello from Logic Apps!”。

    以下是包含範例資訊的傳送 SMS 動作:

    Screenshot that shows the Send SMS action with sample information.

  5. 當完成設計師工具列時,請選取儲存

接下來,執行工作流程以進行測試。

測試工作流程

若要手動啟動工作流程,請在設計工具工具列上選取 [ 執行]。 或者,您可以等候觸發程序引發。 在這兩種情況下,工作流程都應該將SMS訊息傳送至您指定的目的地電話號碼。 如需詳細資訊,請檢閱 如何執行工作流程

清除工作流程資源

若要清除邏輯應用程式工作流程和相關資源,請檢閱 如何清除LogicApps資源

疑難排解

若要針對SMS傳遞相關問題進行疑難解答,您可以使用 事件方格 啟用傳遞報告,以擷取傳遞詳細數據。

清除資源

如果您想要清除並移除通訊服務訂用帳戶,您可以刪除資源或資源群組。 刪除資源群組也會刪除與其相關聯的任何其他資源。 深入瞭解清除 資源

免付費驗證

如果您有新的免付費電話號碼,且想要傳送大量簡訊或將簡訊傳送至加拿大電話號碼,請參閱簡訊常見問題 > 如何? 提交免付費驗證,以瞭解如何驗證您的免付費電話號碼。

下一步

在本快速入門中,您已瞭解如何使用 Azure 通訊服務 傳送簡訊。