Azure Communication SMS-Clientbibliothek für .NET– Version 1.0.1
Dieses Paket enthält ein C#-SDK für Azure Communication Services für SMS und Telefonie.
Quellcode | Paket (NuGet) | Produktdokumentation
Erste Schritte
Installieren des Pakets
Installieren Sie die Azure Communication SMS-Clientbibliothek für .NET mit NuGet:
dotnet add package Azure.Communication.Sms --version 1.0.0
Voraussetzungen
Sie benötigen ein Azure-Abonnement und eine Communication Service-Ressource , um dieses Paket verwenden zu können.
Um einen neuen Communication Service zu erstellen, können Sie das Azure-Portal, die Azure PowerShell oder die .NET-Verwaltungsclientbibliothek verwenden.
Wichtige Begriffe
SmsClient
stellt die Funktionalität zum Senden von Nachrichten zwischen Telefonnummern bereit.
Verwenden von Anweisungen
using System;
using Azure.Communication.Sms;
Authentifizieren des Clients
SMS-Clients können mithilfe der Verbindungszeichenfolge authentifiziert werden, die von einer Azure-Kommunikationsressource im Azure-Portal abgerufen wurde.
var connectionString = "<connection_string>"; // Find your Communication Services resource in the Azure portal
SmsClient client = new SmsClient(connectionString);
Alternativ können SMS-Clients auch mit gültigen Tokenanmeldeinformationen authentifiziert werden. Mit dieser Option müssen die Umgebungsvariablen AZURE_CLIENT_SECRET
, AZURE_CLIENT_ID
und AZURE_TENANT_ID
für die Authentifizierung eingerichtet werden.
string endpoint = "<endpoint_url>";
TokenCredential tokenCredential = new DefaultAzureCredential();
SmsClient client = new SmsClient(new Uri(endpoint), tokenCredential);
Beispiele
Senden einer SMS: 1:1
Um eine SMS-Nachricht zu senden, rufen Sie die - oder SendAsync
-Send
Funktion aus der SmsClient
auf.
SmsSendResult sendResult = await smsClient.SendAsync(
from: "<from-phone-number>", // Your E.164 formatted from phone number used to send SMS
to: "<to-phone-number>", // E.164 formatted recipient phone number
message: "Hi");
Console.WriteLine($"Sms id: {sendResult.MessageId}");
Senden einer SMS: 1:N
Um eine SMS-Nachricht an eine Liste von Empfängern zu senden, rufen Sie die Send
- oder SendAsync
-Funktion von mit SmsClient
einer Liste der Telefonnummern des Empfängers auf.
Sie können auch pass in ein Optionsobjekt hinzufügen, um anzugeben, ob der Übermittlungsbericht aktiviert werden soll, und benutzerdefinierte Tags festzulegen.
var response = await smsClient.SendAsync(
from: "<from-phone-number>", // Your E.164 formatted from phone number used to send SMS
to: new string[] { "<to-phone-number-1>", "<to-phone-number-2>" }, // E.164 formatted recipient phone numbers
message: "Weekly Promotion!",
options: new SmsSendOptions(enableDeliveryReport: true) // OPTIONAL
{
Tag = "marketing", // custom tags
});
foreach (SmsSendResult result in response.Value)
{
Console.WriteLine($"Sms id: {result.MessageId}");
Console.WriteLine($"Send Result Successful: {result.Successful}");
}
Problembehandlung
SMS-Vorgänge lösen eine Ausnahme aus, wenn die Anforderung an den Server fehlschlägt.
Ausnahmen werden nicht ausgelöst, wenn der Fehler durch eine einzelne Nachricht verursacht wird, nur wenn bei der Gesamtanforderung ein Fehler auftritt.
Verwenden Sie das Successful
Flag, um jedes einzelne Ergebnis zu überprüfen, um zu überprüfen, ob die Nachricht gesendet wurde.
try
{
var response = await smsClient.SendAsync(
from: "<from-phone-number>" // Your E.164 formatted phone number used to send SMS
to: new string [] {"<to-phone-number-1>", "<to-phone-number-2>"}, // E.164 formatted recipient phone number
message: "Weekly Promotion!",
options: new SmsSendOptions(enableDeliveryReport: true) // OPTIONAL
{
Tag = "marketing", // custom tags
});
foreach (SmsSendResult result in response.Value)
{
if (result.Successful)
{
Console.WriteLine($"Successfully sent this message: {result.MessageId} to {result.To}.");
}
else
{
Console.WriteLine($"Something went wrong when trying to send this message {result.MessageId} to {result.To}.");
Console.WriteLine($"Status code {result.HttpStatusCode} and error message {result.ErrorMessage}.");
}
}
}
catch (RequestFailedException ex)
{
Console.WriteLine(ex.Message);
}
Nächste Schritte
- Erfahren Sie mehr über SMS in Azure Communication Services
- Eine grundlegende Anleitung zum Konfigurieren der Übermittlungsberichterstattung für Ihre SMS-Nachrichten finden Sie im Schnellstart Behandeln von SMS-Ereignissen.
Mitwirken
Beiträge und Vorschläge für dieses Projekt sind willkommen. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. Weitere Informationen finden Sie unter cla.microsoft.com.
Für dieses Projekt gelten die Microsoft-Verhaltensregeln für Open Source (Microsoft Open Source Code of Conduct). Weitere Informationen finden Sie in den häufig gestellten Fragen zum Verhaltenskodex. Sie können sich auch an opencode@microsoft.com wenden, wenn Sie weitere Fragen oder Anmerkungen haben.
Azure SDK for .NET