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
- Un account Azure con una sottoscrizione attiva. Creare un account gratuitamente.
- Una stringa di connessione e una risorsa attiva di Servizi di comunicazione. Creare una risorsa di Servizi di comunicazione.
- Numero di telefono abilitato per SMS. Ottenere un numero di telefono.
- La versione più recente dell'interfaccia della riga di comando di Azure per il sistema operativo.
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
- Un account Azure con una sottoscrizione attiva. Creare un account gratuitamente.
- La versione più recente di .NET Core SDK per il sistema operativo.
- Una stringa di connessione e una risorsa attiva di Servizi di comunicazione. Creare una risorsa di Servizi di comunicazione.
- Numero di telefono abilitato per SMS. Ottenere un numero di telefono.
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#
In una finestra della console, ad esempio cmd, PowerShell o Bash, usare il
dotnet new
comando per creare una nuova app console con il nomeSmsQuickstart
. Questo comando crea un semplice progetto C# "Hello World" con un singolo file di origine, Program.cs.dotnet new console -o SmsQuickstart
Passare alla cartella dell'app appena creata e usare il comando
dotnet build
per compilare l'applicazione.cd SmsQuickstart dotnet build
Installare il pacchetto
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
Aggiungere una direttiva
using
all'inizio di Program.cs per includere lo spazio dei nomiAzure.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
- Un account Azure con una sottoscrizione attiva. Creare un account gratuitamente.
- Node.js sono consigliate le versioni di Active LTS e Maintenance LTS (sono consigliate le versioni 8.111.1 e 10.14.1).
- Una stringa di connessione e una risorsa attiva di Servizi di comunicazione. Creare una risorsa di Servizi di comunicazione.
- Numero di telefono abilitato per SMS. Ottenere un numero di telefono.
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
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
Eseguire il comando seguente per creare un file package.json con le impostazioni predefinite.
npm init -y
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:
Creare un file denominato send-sms.js.
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
- Un account Azure con una sottoscrizione attiva. Creare un account gratuitamente.
- Python 3.7+.
- Una stringa di connessione e una risorsa attiva di Servizi di comunicazione. Creare una risorsa di Servizi di comunicazione.
- Numero di telefono abilitato per SMS. Ottenere un numero di telefono.
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
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
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
- Un account Azure con una sottoscrizione attiva. Creare un account gratuitamente.
- Java Development Kit (JDK) versione 8 o successiva.
- Apache Maven.
- Una stringa di connessione e una risorsa attiva di Servizi di comunicazione. Creare una risorsa di Servizi di comunicazione.
- Numero di telefono abilitato per SMS. Ottenere un numero di telefono.
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
Passare alla directory contenente il file pom.xml e compilare il progetto usando il
mvn
comando .mvn compile
Compilare il pacchetto.
mvn package
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.
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
Un account Azure con una sottoscrizione attiva; in alternativa, creare un account gratuito.
Una risorsa attiva di Servizi di comunicazione di Azure; in alternativa, creare una risorsa di Servizi di comunicazione.
Una risorsa attiva di App per la logica; in alternativa, creare un'app per la logica vuota ma con il trigger che si vuole usare. Attualmente, il connettore SMS di Servizi di comunicazione di Azure prevede solo azioni, quindi l'app per la logica richiede come minimo un trigger.
Questa guida di avvio rapido usa il trigger All'arrivo di un nuovo messaggio di posta elettronica, disponibile con il connettore Office 365 Outlook.
Un numero di telefono abilitato per SMS; in alternativa, ottenere un numero di telefono.
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:
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.
Nella casella di ricerca Scegliere un'operazione immettere
Azure Communication Services
. Nell'elenco di azioni selezionare Invia SMS.Ora creare una connessione alla risorsa di Servizi di comunicazione.
All'interno della stessa sottoscrizione:
Specificare un nome per la connessione.
Selezionare la risorsa di Servizi di comunicazione di Azure.
Seleziona Crea.
Uso del stringa di connessione dalla risorsa servizi di comunicazione:
Specificare un nome per la connessione.
Selezionare Connessione ionString Authentication (Autenticazione) nell'elenco a discesa.
Immettere il stringa di connessione della risorsa servizi di comunicazione.
Seleziona Crea.
Uso dell'entità servizio (fare riferimento alla creazione dell'entità servizio):
Specificare un nome per la connessione.
Selezionare Autenticazione dell'entità servizio (applicazione Microsoft Entra) nell'elenco a discesa.
Immettere l'ID tenant, l'ID client e il segreto client dell'entità servizio.
Immettere il valore dell'URL dell'endpoint di Servizi di comunicazione della risorsa servizi di comunicazione.
Seleziona Crea.
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:
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.