Guida introduttiva: Inviare un messaggio SMS

Importante

Le funzionalità SMS dipendono dal numero di telefono usato e dal paese/area geografica in cui si opera come determinato dall'indirizzo di fatturazione di Azure. Per altre informazioni, vedere Idoneità per le sottoscrizioni.

Nota

Condividi i tuoi pensieri e commenti su Servizi di comunicazione di Azure con noi prendendo questo breve sondaggio.


Per iniziare a usare Servizi di comunicazione di Azure, usare il modulo Comunicazione nell'interfaccia della riga di comando di Azure per inviare messaggi SMS.

Le procedure illustrate in questa guida di avvio rapido comportano l'addebito di qualche centesimo (USD) o meno nell'account Azure.

Prerequisiti

Controllo dei prerequisiti

  • In un terminale o in una finestra di comando eseguire az --version per verificare che l'interfaccia della riga di comando di Azure sia installata.

Configurazione

Installare il modulo di comunicazione

Eseguire il comando seguente in un terminale o in una finestra di comando per installare il modulo di comunicazione.

az extension add --name communication

Accedere all'interfaccia della riga di comando di Azure

Sarà necessario accedere all'interfaccia della riga di comando di Azure. È possibile accedere eseguendo il az login comando dal terminale e specificando le credenziali.

Assicurarsi di usare la sottoscrizione corretta

Se sono presenti più sottoscrizioni nell'account, assicurarsi di usare quella corretta per questa esercitazione.

In un terminale o in una finestra dei comandi eseguire il comando seguente per controllare la sottoscrizione corrente.

az account show

Se è necessario modificare la sottoscrizione, è possibile farlo eseguendo il comando seguente.

az account set --subscription "<yourSubcriptionId>"

È necessario sostituire <yourSubscriptionId> con l'ID sottoscrizione effettivo, disponibile nella sezione Sottoscrizioni in portale di Azure.

(Facoltativo) Usare le operazioni sms dell'interfaccia della riga di comando di Azure senza passare un stringa di connessione

È possibile configurare la variabile di ambiente per usare le operazioni SMS dell'interfaccia della AZURE_COMMUNICATION_CONNECTION_STRING riga di comando di Azure senza dover usare --connection_string per passare il stringa di connessione. Per configurare una variabile di ambiente, aprire una finestra della console e selezionare il sistema operativo dalle schede seguenti. Sostituire <yourConnectionString> con la stringa di connessione effettiva.

Aprire una finestra della console e immettere il comando seguente:

setx AZURE_COMMUNICATION_CONNECTION_STRING "<yourConnectionString>"

Dopo l'aggiunta della variabile di ambiente potrebbe essere necessario riavviare eventuali programmi in esecuzione che necessitano di leggere la variabile di ambiente, inclusa la finestra della console. Ad esempio, se si usa Visual Studio come editor, riavviare Visual Studio prima di eseguire l'esempio.

Operazioni

Inviare un messaggio SMS 1:1

Per inviare un messaggio SMS a un singolo destinatario, chiamare il send metodo dal modulo SMS con un singolo numero di telefono del destinatario.

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

Effettuare queste sostituzioni nel codice:

  • Sostituire <fromPhoneNumber> con un numero di telefono abilitato per SMS associato alla risorsa di Servizi di comunicazione.
  • Sostituire <toPhoneNumber> con un numero di telefono a cui inviare un messaggio.
  • Sostituire <yourConnectionString> con il stringa di connessione.

Avviso

Specificare i numeri di telefono in formato standard internazionale E.164, ad esempio +14255550123. Il valore per <fromPhoneNumber> può anche essere un codice breve, ad esempio 23456 o un ID mittente alfanumerico, ad esempio CONTOSO.

Inviare un messaggio SMS 1:N

Per inviare un messaggio SMS a un elenco di destinatari, chiamare il send metodo dal modulo SMS con più numeri di telefono del destinatario.

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

Effettuare queste sostituzioni nel codice:

  • Sostituire <fromPhoneNumber> con un numero di telefono abilitato per SMS associato alla risorsa di Servizi di comunicazione.
  • Sostituire <toPhoneNumberN> con il numero di telefono N a cui si vuole inviare un messaggio.
  • Sostituire <yourConnectionString> con il stringa di connessione.

Avviso

Specificare i numeri di telefono in formato standard internazionale E.164, ad esempio +14255550123. Il valore per <fromPhoneNumber> può anche essere un codice breve, ad esempio 23456 o un ID mittente alfanumerico, ad esempio CONTOSO.

Per iniziare a usare Servizi di comunicazione di Azure, usare l'SDK SMS C# di Servizi di comunicazione per inviare messaggi SMS.

Le procedure illustrate in questa guida di avvio rapido comportano l'addebito di qualche centesimo (USD) o meno nell'account Azure.

Nota

Trovare il codice finalizzato per questa guida introduttiva in GitHub.

Prerequisiti

Controllo dei prerequisiti

  • In un terminale o in una finestra di comando eseguire il dotnet comando per verificare che .NET SDK sia installato.
  • Per visualizzare i numeri di telefono associati alla risorsa di Servizi di comunicazione, accedere al portale di Azure e individuare la risorsa servizi di comunicazione. Nel riquadro di spostamento a sinistra selezionare Telefono numeri.

Configurare l'ambiente dell'applicazione

Per configurare un ambiente per l'invio di messaggi, seguire questa procedura nelle sezioni seguenti.

Creare una nuova applicazione C#

  1. In una finestra della console, ad esempio cmd, PowerShell o Bash, usare il dotnet new comando per creare una nuova app console con il nome SmsQuickstart. Questo comando crea un semplice progetto C# "Hello World" con un singolo file di origine, Program.cs.

    dotnet new console -o SmsQuickstart
    
  2. Passare alla cartella dell'app appena creata e usare il comando dotnet build per compilare l'applicazione.

    cd SmsQuickstart
    dotnet build
    

Installare il pacchetto

  1. Nella directory dell'applicazione installare il pacchetto SERVIZI DI COMUNICAZIONE DI AZURE SMS SDK per .NET usando il comando seguente.

    dotnet add package Azure.Communication.Sms --version 1.0.0
    
  2. Aggiungere una direttiva using all'inizio di Program.cs per includere lo spazio dei nomi Azure.Communication.

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

Modello a oggetti

Le classi e le interfacce seguenti gestiscono alcune delle principali funzionalità di Servizi di comunicazione di Azure SMS SDK per C#.

Nome Descrizione
SmsClient Questa classe è necessaria per tutte le funzionalità SMS. È possibile crearne un'istanza con le informazioni della sottoscrizione e usarla per inviare messaggi SMS.
SmsSendOptions Questa classe fornisce opzioni per la configurazione dei report di recapito. Se enable_delivery_report è impostato su True, viene generato un evento quando il recapito ha esito positivo.
SmsSendResult Questa classe contiene il risultato del servizio SMS.

Autenticare il client

Aprire Program.cs in un editor di testo e sostituire il corpo del metodo Main con il codice per inizializzare un oggetto SmsClient con la stringa di connessione. Il codice seguente recupera il stringa di connessione per la risorsa da una variabile di ambiente denominata COMMUNICATION_SERVICES_CONNECTION_STRING. Informazioni su come gestire le stringa di connessione della risorsa.

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

SmsClient smsClient = new SmsClient(connectionString);

Inviare un messaggio SMS 1:1

Per inviare un messaggio SMS a un singolo destinatario, chiamare la Send funzione o SendAsync da SmsClient. Aggiungere questo codice alla fine del Main metodo in 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}");

Effettuare queste sostituzioni nel codice:

  • Sostituire <from-phone-number> con un numero di telefono abilitato per SMS associato alla risorsa di Servizi di comunicazione.
  • Sostituire <to-phone-number> con il numero di telefono a cui si vuole inviare un messaggio.

Avviso

Specificare i numeri di telefono in formato standard internazionale E.164, ad esempio +14255550123. Il valore per <from-phone-number> può anche essere un codice breve, ad esempio 23456 o un ID mittente alfanumerico, ad esempio CONTOSO.

Inviare un messaggio SMS 1:N con opzioni

Per inviare un messaggio SMS a un elenco di destinatari, chiamare la Send funzione o SendAsync da SmsClient con un elenco di numeri di telefono del destinatario. È anche possibile specificare parametri facoltativi per specificare se il report di recapito deve essere abilitato e impostare tag personalizzati.

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}");
}

Effettuare queste sostituzioni nel codice:

  • Sostituire <from-phone-number> con un numero di telefono abilitato per SMS associato alla risorsa di Servizi di comunicazione.
  • Sostituire <to-phone-number-1> e <to-phone-number-2> con i numeri di telefono a cui inviare un messaggio.

Avviso

Specificare i numeri di telefono in formato standard internazionale E.164, ad esempio +14255550123. Il valore per <from-phone-number> può anche essere un codice breve, ad esempio 23456 o un ID mittente alfanumerico, ad esempio CONTOSO.

Il enableDeliveryReport parametro è un parametro facoltativo che è possibile usare per configurare la creazione di report di recapito. Questa funzionalità è utile quando si desidera generare eventi quando vengono recapitati messaggi SMS. Vedere la guida introduttiva Gestire gli eventi SMS per configurare la creazione di report di recapito per i messaggi SMS.

È possibile usare il Tag parametro per applicare un tag al report di recapito.

Eseguire il codice

Eseguire l'applicazione dalla directory dell'applicazione con il comando dotnet run.

dotnet run

Codice di esempio

È possibile scaricare l'app di esempio da GitHub.

Per iniziare a usare Servizi di comunicazione di Azure, usare JavaScript SMS SDK di Servizi di comunicazione per inviare messaggi SMS.

Le procedure illustrate in questa guida di avvio rapido comportano l'addebito di qualche centesimo (USD) o meno nell'account Azure.

Nota

Trovare il codice finalizzato per questa guida introduttiva in GitHub.

Prerequisiti

Controllo dei prerequisiti

  • In un terminale o una finestra di comando eseguire node --version per verificare che Node.js sia installato.
  • Per visualizzare i numeri di telefono associati alla risorsa di Servizi di comunicazione, accedere al portale di Azure e individuare la risorsa servizi di comunicazione. Nel riquadro di spostamento a sinistra selezionare Telefono numeri.

Configurare l'ambiente dell'applicazione

Per configurare un ambiente per l'invio di messaggi, seguire questa procedura nelle sezioni seguenti.

Creare una nuova applicazione Node.js

  1. Aprire il terminale o la finestra di comando e quindi eseguire il comando seguente per creare una nuova directory per l'app e passare a essa.

    mkdir sms-quickstart && cd sms-quickstart
    
  2. Eseguire il comando seguente per creare un file package.json con le impostazioni predefinite.

    npm init -y
    
  3. Usare un editor di testo per creare un file denominato send-sms.js nella directory radice del progetto.

Nelle sezioni seguenti si aggiungerà tutto il codice sorgente per questa guida introduttiva al file send-sms.js appena creato.

Installare il pacchetto

Usare il npm install comando per installare Servizi di comunicazione di Azure SMS SDK per JavaScript.

npm install @azure/communication-sms --save

L'opzione --save elenca la libreria come dipendenza nel file package.json.

Modello a oggetti

Le classi e le interfacce seguenti gestiscono alcune delle principali funzionalità di SERVIZI DI COMUNICAZIONE DI AZURE SMS SDK per Node.js.

Nome Descrizione
SmsClient Questa classe è necessaria per tutte le funzionalità SMS. È possibile crearne un'istanza con le informazioni della sottoscrizione e usarla per inviare messaggi SMS.
SmsSendRequest Questa interfaccia è il modello per la compilazione della richiesta SMS. Viene usato per configurare i numeri di telefono da e verso i numeri di telefono e il contenuto DEGLI SMS.
SmsSendOptions Questa interfaccia offre opzioni per la configurazione dei report di recapito. Se enableDeliveryReport è impostato su true, viene generato un evento quando il recapito ha esito positivo.
SmsSendResult Questa classe contiene il risultato del servizio SMS.

Autenticare il client

Per autenticare un client, importare SmsClient dall'SDK e crearne un'istanza con il stringa di connessione. È possibile recuperare il stringa di connessione per la risorsa da una variabile di ambiente. Ad esempio, il codice in questa sezione recupera il stringa di connessione dalla COMMUNICATION_SERVICES_CONNECTION_STRING variabile di ambiente. Informazioni su come gestire le stringa di connessione della risorsa.

Per importare il client e crearne un'istanza:

  1. Creare un file denominato send-sms.js.

  2. Aggiungere il codice seguente per 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);

Inviare un messaggio SMS 1:N

Per inviare un messaggio SMS a un elenco di destinatari, chiamare la send funzione da SmsClient con un elenco di numeri di telefono del destinatario. Se si vuole inviare un messaggio a un singolo destinatario, includere un solo numero nell'elenco. Aggiungere questo codice alla fine di 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();

Effettuare queste sostituzioni nel codice:

  • Sostituire <from-phone-number> con un numero di telefono abilitato per SMS associato alla risorsa di Servizi di comunicazione.
  • Sostituire <to-phone-number-1> e <to-phone-number-2> con i numeri di telefono a cui si vuole inviare un messaggio.

Avviso

Specificare i numeri di telefono in formato standard internazionale E.164, ad esempio +14255550123. Il valore per <from-phone-number> può anche essere un codice breve, ad esempio 23456 o un ID mittente alfanumerico, ad esempio CONTOSO.

Inviare un messaggio SMS 1:N con opzioni

È anche possibile specificare un oggetto opzioni per specificare se il report di recapito deve essere abilitato e impostare tag personalizzati.


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();

Effettuare queste sostituzioni nel codice:

  • Sostituire <from-phone-number> con un numero di telefono abilitato per SMS associato alla risorsa di Servizi di comunicazione.
  • Sostituire <to-phone-number-1> e <to-phone-number-2> con i numeri di telefono a cui inviare un messaggio.

Avviso

Specificare i numeri di telefono in formato standard internazionale E.164, ad esempio +14255550123. Il valore per <from-phone-number> può anche essere un codice breve, ad esempio 23456 o un ID mittente alfanumerico, ad esempio CONTOSO.

Il enableDeliveryReport parametro è un parametro facoltativo che è possibile usare per configurare la creazione di report di recapito. Questa funzionalità è utile quando si desidera generare eventi quando vengono recapitati messaggi SMS. Vedere la guida introduttiva Gestire gli eventi SMS per configurare la creazione di report di recapito per i messaggi SMS. tag è facoltativo. È possibile usarlo per applicare un tag al report di recapito.

Eseguire il codice

Usare il node comando per eseguire il codice aggiunto al file send-sms.js .


node ./send-sms.js

Per iniziare a usare Servizi di comunicazione di Azure, usare Python SMS SDK di Servizi di comunicazione per inviare messaggi SMS.

Le procedure illustrate in questa guida di avvio rapido comportano l'addebito di qualche centesimo (USD) o meno nell'account Azure.

Nota

Trovare il codice finalizzato per questa guida introduttiva in GitHub.

Prerequisiti

Controllo dei prerequisiti

  • In una finestra del terminale o di comando eseguire il comando python --version per verificare se Python è installato.
  • Per visualizzare i numeri di telefono associati alla risorsa di Servizi di comunicazione, accedere al portale di Azure e individuare la risorsa servizi di comunicazione. Nel riquadro di spostamento a sinistra selezionare Telefono numeri.

Configurare l'ambiente dell'applicazione

Per configurare un ambiente per l'invio di messaggi, seguire questa procedura nelle sezioni seguenti.

Creare una nuova applicazione Python

  1. Aprire la finestra del terminale o di comando. Usare quindi il comando seguente per creare una nuova directory per l'app e passare a essa.

    mkdir sms-quickstart && cd sms-quickstart
    
  2. Usare un editor di testo per creare un file denominato start-sms.py nella directory radice del progetto e aggiungere la struttura per il programma, inclusa la gestione delle eccezioni di base.

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

Nelle sezioni seguenti si aggiungerà tutto il codice sorgente per questa guida introduttiva al file send-sms.py appena creato.

Installare il pacchetto

Nella directory dell'applicazione installare il pacchetto SERVIZI DI COMUNICAZIONE DI AZURE SMS SDK per Python usando il comando seguente.

pip install azure-communication-sms

Modello a oggetti

Le classi e le interfacce seguenti gestiscono alcune delle principali funzionalità di SERVIZI DI COMUNICAZIONE DI AZURE SMS SDK per Python.

Nome Descrizione
SmsClient Questa classe è necessaria per tutte le funzionalità SMS. È possibile crearne un'istanza con le informazioni della sottoscrizione e usarla per inviare messaggi SMS.
SmsSendResult Questa classe contiene il risultato del servizio SMS.

Autenticare il client

Creare un'istanza di SmsClient con la stringa di connessione. Informazioni su come gestire le stringa di connessione della risorsa.

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

Per semplicità, questa guida introduttiva usa stringa di connessione, ma negli ambienti di produzione è consigliabile usare le entità servizio.

Inviare un messaggio SMS 1:1

Per inviare un messaggio SMS a un singolo destinatario, chiamare il send metodo da SmsClient con un singolo numero di telefono del destinatario. È anche possibile specificare parametri facoltativi per specificare se il report di recapito deve essere abilitato e impostare tag personalizzati. Aggiungere questo codice alla fine del try blocco in send-sms.py:


# 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

Effettuare queste sostituzioni nel codice:

  • Sostituire <from-phone-number> con un numero di telefono abilitato per SMS associato al servizio di comunicazione.
  • Sostituire <to-phone-number> con il numero di telefono a cui si vuole inviare un messaggio.

Avviso

Specificare i numeri di telefono in formato standard internazionale E.164, ad esempio +14255550123. Il valore per <from-phone-number> può anche essere un codice breve, ad esempio 23456 o un ID mittente alfanumerico, ad esempio CONTOSO.

Inviare un messaggio SMS 1:N

Per inviare un messaggio SMS a un elenco di destinatari, chiamare il send metodo da SmsClient con un elenco di numeri di telefono del destinatario. È anche possibile specificare parametri facoltativi per specificare se il report di recapito deve essere abilitato e impostare tag personalizzati. Aggiungere questo codice alla fine del try blocco in send-sms.py:


# 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

Effettuare queste sostituzioni nel codice:

  • Sostituire <from-phone-number> con un numero di telefono abilitato per SMS associato al servizio di comunicazione.
  • Sostituire <to-phone-number-1> e <to-phone-number-2> con i numeri di telefono a cui inviare un messaggio.

Avviso

Specificare i numeri di telefono in formato standard internazionale E.164, ad esempio +14255550123. Il valore per <from-phone-number> può anche essere un codice breve, ad esempio 23456 o un ID mittente alfanumerico, ad esempio CONTOSO.

Parametri facoltativi

Il enable_delivery_report parametro è un parametro facoltativo che è possibile usare per configurare la creazione di report di recapito. Questa funzionalità è utile quando si desidera generare eventi quando vengono recapitati messaggi SMS. Vedere la guida introduttiva Gestire gli eventi SMS per configurare la creazione di report di recapito per i messaggi SMS.

Il tag parametro è un parametro facoltativo che è possibile usare per applicare un tag al report di recapito.

Eseguire il codice

Eseguire l'applicazione dalla directory dell'applicazione con il comando python.

python send-sms.py

Lo script Python completo dovrebbe essere simile al codice seguente:


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)

Per iniziare a usare Servizi di comunicazione di Azure, usare Java SMS SDK di Servizi di comunicazione per inviare messaggi SMS.

Le procedure illustrate in questa guida di avvio rapido comportano l'addebito di qualche centesimo (USD) o meno nell'account Azure.

Nota

Trovare il codice finalizzato per questa guida introduttiva in GitHub.

Prerequisiti

Controllo dei prerequisiti

  • In un terminale o in una finestra di comando eseguire mvn -v per verificare che Maven sia installato.
  • Per visualizzare i numeri di telefono associati alla risorsa di Servizi di comunicazione, accedere al portale di Azure e individuare la risorsa servizi di comunicazione. Nel riquadro di spostamento a sinistra selezionare Telefono numeri.

Configurare l'ambiente dell'applicazione

Per configurare un ambiente per l'invio di messaggi, seguire questa procedura nelle sezioni seguenti.

Creare una nuova applicazione Java

Aprire la finestra del terminale o di comando e passare alla directory in cui creare l'applicazione Java. Eseguire il comando seguente per generare il progetto Java dal modello maven-archetype-quickstart.

  • Prompt dei comandi
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"

L'obiettivo generate crea una directory con lo stesso nome del artifactId valore. In questa directory, la directory src/main/java contiene il codice sorgente del progetto, la directory src/test/java contiene l'origine di test e il file pom.xml è il modello a oggetti del progetto .

Installare il pacchetto

Aprire il file pom.xml nell'editor di testo. Aggiungere l'elemento di dipendenza seguente al gruppo di dipendenze.

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

Configurare il framework dell'app

Aprire /src/main/java/com/communication/quickstart/App.java in un editor di testo, aggiungere direttive di importazione e rimuovere l'istruzione 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.
    }
}

Modello a oggetti

Le classi e le interfacce seguenti gestiscono alcune delle principali funzionalità di SERVIZI DI COMUNICAZIONE DI AZURE SMS SDK per Java.

Nome Descrizione
SmsClientBuilder Questa classe crea l'oggetto SmsClient. È possibile fornire un endpoint, una credenziale e un client HTTP.
SmsClient Questa classe è necessaria per tutte le funzionalità SMS. Viene usata per inviare messaggi SMS.
SmsSendOptions Questa classe fornisce opzioni per aggiungere tag personalizzati e configurare la creazione di report per il recapito. Se deliveryReportEnabled è impostato su true, viene generato un evento quando il recapito ha esito positivo.
SmsSendResult Questa classe contiene il risultato del servizio SMS.

Autenticare il client

Per autenticare un client, creare un'istanza SmsClient di con il stringa di connessione. Per le credenziali, usare dalla Key portale di Azure. Informazioni su come gestire le stringa di connessione della risorsa. È anche possibile inizializzare il client con qualsiasi client HTTP personalizzato che implementa l'interfaccia com.azure.core.http.HttpClient .

Per creare un'istanza di un client, aggiungere il codice seguente al main metodo :

// 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();

È anche possibile fornire l'intero stringa di connessione usando la connectionString funzione anziché fornire l'endpoint e la chiave di accesso.

// 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();

Inviare un messaggio SMS 1:1

Per inviare un messaggio SMS a un singolo destinatario, chiamare il send metodo da SmsClient con un singolo numero di telefono del destinatario. È anche possibile specificare parametri facoltativi per specificare se il report di recapito deve essere abilitato e impostare tag personalizzati.

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());

Effettuare queste sostituzioni nel codice:

  • Sostituire <from-phone-number> con un numero di telefono abilitato per SMS associato alla risorsa di Servizi di comunicazione.
  • Sostituire <to-phone-number> con un numero di telefono a cui inviare un messaggio.

Avviso

Specificare i numeri di telefono in formato standard internazionale E.164, ad esempio +14255550123. Il valore per <from-phone-number> può anche essere un codice breve, ad esempio 23456 o un ID mittente alfanumerico, ad esempio CONTOSO.

Inviare un messaggio SMS 1:N con opzioni

Per inviare un messaggio SMS a un elenco di destinatari, chiamare il send metodo con un elenco di numeri di telefono del destinatario. È anche possibile specificare parametri facoltativi per specificare se il report di recapito deve essere abilitato e impostare tag personalizzati.

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());
}

Effettuare queste sostituzioni nel codice:

  • Sostituire <from-phone-number> con un numero di telefono abilitato per SMS associato alla risorsa di Servizi di comunicazione
  • Sostituire <to-phone-number-1> e <to-phone-number-2> con i numeri di telefono a cui inviare un messaggio.

Avviso

Specificare i numeri di telefono in formato standard internazionale E.164, ad esempio +14255550123. Il valore per <from-phone-number> può anche essere un codice breve, ad esempio 23456 o un ID mittente alfanumerico, ad esempio CONTOSO.

Il setDeliveryReportEnabled metodo viene usato per configurare la creazione di report di recapito. Questa funzionalità è utile quando si desidera generare eventi quando vengono recapitati messaggi SMS. Vedere la guida introduttiva Gestire gli eventi SMS per configurare la creazione di report di recapito per i messaggi SMS.

È possibile utilizzare il setTag metodo per applicare un tag al report di recapito.

Eseguire il codice

  1. Passare alla directory contenente il file pom.xml e compilare il progetto usando il mvn comando .

    
    mvn compile
    
    
  2. Compilare il pacchetto.

    
    mvn package
    
    
  3. Eseguire il comando mvn seguente per eseguire l'app.

    • Prompt dei comandi
    
    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"
    

Usando il connettore SMS Servizi di comunicazione di Azure e App per la logica di Azure, è possibile creare flussi di lavoro automatizzati in grado di inviare messaggi SMS. Questa guida di avvio rapido illustra come inviare automaticamente messaggi SMS in risposta a un evento trigger, che rappresenta il primo passaggio del flusso di lavoro di un'app per la logica. Un evento trigger può essere un messaggio di posta elettronica in arrivo, la pianificazione di una ricorrenza, un evento della risorsa Griglia di eventi di Azure o qualsiasi altro trigger supportato da App per la logica di Azure.

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.

Anche se questa guida di avvio rapido illustra come usare il connettore per rispondere a un trigger, è anche possibile usarlo per rispondere ad altre azioni, che costituiscono i passaggi che seguono il trigger in un flusso di lavoro. Se non si ha familiarità con App per la logica, vedere Che cos'è App per la logica di Azure prima di iniziare.

Nota

Le procedure illustrate in questa guida di avvio rapido comportano l'addebito di qualche centesimo (USD) o meno nell'account Azure.

Prerequisiti

Importante

Le funzionalità SMS e PSTN dipendono dal numero di telefono usato e dal paese/area geografica in cui si opera come determinato dall'indirizzo di fatturazione di Azure. Per altre informazioni, vedere la documentazione relativa all'idoneità alla sottoscrizione.

Aggiungere un'azione SMS

Per aggiungere l'azione Invia SMS come nuovo passaggio del flusso di lavoro usando il connettore SMS di Servizi di comunicazione di Azure, seguire questa procedura nel portale di Azure con il flusso di lavoro dell'app per la logica aperto in Progettazione app per la logica:

  1. Nella finestra di progettazione, nel passaggio in cui aggiungere la nuova azione, selezionare Nuovo passaggio. In alternativa, per aggiungere la nuova azione tra passaggi, spostare il puntatore sulla freccia tra questi passaggi, selezionare il segno più (+), quindi selezionare Aggiungi un'azione.

  2. Nella casella di ricerca Scegliere un'operazione immettere Azure Communication Services. Nell'elenco di azioni selezionare Invia SMS.

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

  3. Ora creare una connessione alla risorsa di Servizi di comunicazione.

    1. All'interno della stessa sottoscrizione:

      1. Specificare un nome per la connessione.

      2. Selezionare la risorsa di Servizi di comunicazione di Azure.

      3. Seleziona Crea.

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

    2. Uso del stringa di connessione dalla risorsa servizi di comunicazione:

      1. Specificare un nome per la connessione.

      2. Selezionare Connessione ionString Authentication (Autenticazione) nell'elenco a discesa.

      3. Immettere il stringa di connessione della risorsa servizi di comunicazione.

      4. Seleziona Crea.

      Screenshot that shows the Connection String Authentication configuration.

    3. Uso dell'entità servizio (fare riferimento alla creazione dell'entità servizio):

      1. Specificare un nome per la connessione.

      2. Selezionare Autenticazione dell'entità servizio (applicazione Microsoft Entra) nell'elenco a discesa.

      3. Immettere l'ID tenant, l'ID client e il segreto client dell'entità servizio.

      4. Immettere il valore dell'URL dell'endpoint di Servizi di comunicazione della risorsa servizi di comunicazione.

      5. Seleziona Crea.

      Screenshot that shows the Service Principal Authentication configuration.

  4. Nell'azione Invia SMS specificare le informazioni seguenti:

    • I numeri di telefono di origine e di destinazione. A scopo di test, è possibile usare il proprio numero di telefono come destinazione.

    • Il contenuto del messaggio da inviare, ad esempio "Hello from Logic Apps!".

    Ecco un'azione Invia SMS con le informazioni di esempio:

    Screenshot that shows the Send SMS action with sample information.

  5. Al termine, nella barra degli strumenti di progettazione, seleziona Salva.

Eseguire quindi il flusso di lavoro per i test.

Testare il flusso di lavoro

Per avviare manualmente il flusso di lavoro, sulla barra degli strumenti della finestra di progettazione selezionare Esegui. In alternativa, è possibile attendere che il trigger venga attivato. In entrambi i casi, il flusso di lavoro deve inviare un messaggio SMS al numero di telefono di destinazione specificato. Per altre informazioni, vedere come eseguire il flusso di lavoro.

Pulire le risorse del flusso di lavoro

Per pulire il flusso di lavoro dell'app per la logica e le risorse correlate, vedere come pulire le risorse di App per la logica.

Risoluzione dei problemi

Per la risoluzione dei problemi correlati al recapito di SMS, è possibile abilitare la creazione di report di recapito con Griglia di eventi per acquisire i dettagli di recapito.

Pulire le risorse

Se si vuole pulire e rimuovere una sottoscrizione a Servizi di comunicazione, è possibile eliminare la risorsa o il gruppo di risorse. L'eliminazione del gruppo di risorse comporta anche l'eliminazione di tutte le altre risorse associate. Altre informazioni sulla pulizia delle risorse.

Verifica a pagamento

Se si ha un nuovo numero verde e si vuole inviare un volume elevato di messaggi SMS o inviare messaggi SMS ai numeri di telefono canadesi, vedere DOMANDE FREQUENTI > SUGLI SMS Ricerca per categorie inviare una verifica gratuita per informazioni su come verificare il numero verde.

Passaggi successivi

In questa guida di avvio rapido si è appreso come inviare messaggi SMS tramite Servizi di comunicazione di Azure.