Biblioteka klienta programu SMS usługi Azure Communication dla języka JavaScript — wersja 1.1.0
Usługi azure Communication SMS zapewniają deweloperom możliwość wysyłania wiadomości SMS z numeru telefonu, który można kupić za pośrednictwem usług komunikacyjnych.
Wprowadzenie
Wymagania wstępne
- Subskrypcja platformy Azure.
- Istniejący zasób usług komunikacyjnych. Jeśli musisz utworzyć zasób, możesz użyć witryny Azure Portal, Azure PowerShell lub interfejsu wiersza polecenia platformy Azure.
- Numer telefonu przypisany do zasobu usług Communication Services. Zobacz , jak uzyskać numer telefonu, aby uzyskać instrukcje dotyczące dodawania numeru telefonu do zasobu usług Communication Services.
Instalowanie
npm install @azure/communication-sms
Jak uzyskać numer telefonu
Numery telefonów można uzyskać i przypisać do zasobu usług komunikacyjnych w witrynie Azure Portal. Instrukcje dotyczące uzyskiwania numeru telefonu przy użyciu witryny Azure Portal można znaleźć tutaj.
Możesz również uzyskać numer telefonu przy użyciu @azure/communication-phone-numbers
pakietu. Instrukcje dotyczące korzystania z pakietu można znaleźć w pliku README pakietu.
Obsługa przeglądarki
Pakiet JavaScript
Aby użyć tej biblioteki klienta w przeglądarce, najpierw należy użyć narzędzia bundler. Aby uzyskać szczegółowe informacje o tym, jak to zrobić, zapoznaj się z naszą dokumentacją dotyczącą tworzenia pakietów.
Kluczowe pojęcia
SmsClient
SmsClient
jest podstawowym interfejsem dla deweloperów korzystających z tej biblioteki klienta. Zapewnia metodę asynchroniczną do wysyłania wiadomości SMS.
Przykłady
Authentication
Klucz i/lub parametry połączenia można uzyskać z zasobu usług Communication Services w witrynie Azure Portal. Po utworzeniu klucza możesz uwierzytelnić się przy użyciu dowolnej z następujących metod:
Używanie parametry połączenia
import { SmsClient } from "@azure/communication-sms";
const connectionString = `endpoint=https://<resource-name>.communication.azure.com/;accessKey=<Base64-Encoded-Key>`;
const client = new SmsClient(connectionString);
Tworzenie poświadczeń za pomocą polecenia AzureKeyCredential
import { AzureKeyCredential } from "@azure/core-auth";
import { SmsClient } from "@azure/communication-sms";
const endpoint = "https://<resource-name>.communication.azure.com";
const credential = new AzureKeyCredential("<Base64-Encoded-Key>");
const client = new SmsClient(endpoint, credential);
Korzystanie z tożsamości zarządzanej usługi Azure Active Directory
W większości przykładów jest używane uwierzytelnianie klucza interfejsu API klienta, ale można również uwierzytelniać się w usłudze Azure Active Directory przy użyciu biblioteki tożsamości platformy Azure. Aby użyć przedstawionego poniżej dostawcy DefaultAzureCredential lub innych dostawców poświadczeń dostarczanych z zestawem Azure SDK, zainstaluj @azure/identity
pakiet:
npm install @azure/identity
Pakiet @azure/identity
udostępnia różne typy poświadczeń, których aplikacja może użyć do tego celu. Plik README zawiera @azure/identity więcej szczegółów i przykładów, które ułatwiają rozpoczęcie pracy.
AZURE_CLIENT_SECRET, zmienne środowiskowe AZURE_CLIENT_ID i AZURE_TENANT_ID są potrzebne do utworzenia obiektu DefaultAzureCredential.
import { DefaultAzureCredential } from "@azure/identity";
import { SmsClient } from "@azure/communication-sms";
const endpoint = "https://<resource-name>.communication.azure.com";
let credential = new DefaultAzureCredential();
const client = new SmsClient(endpoint, credential);
Wyślij wiadomość SMS 1:N
Aby wysłać wiadomość SMS, wywołaj send
funkcję z elementu SmsClient
. Musisz przekazać SmsSendRequest
obiekt.
Możesz również dodać obiekt pass in an options (Przekazywanie) w celu określenia, czy raport dostarczania powinien być włączony, i ustawić tagi niestandardowe dla raportu.
Zwracana jest tablica SmsSendResult
. Flaga successful
służy do sprawdzania, czy poszczególne wiadomości zostały wysłane pomyślnie.
const sendResults = await client.send(
{
from: "<from-phone-number>", // Your E.164 formatted phone number used to send SMS
to: ["<to-phone-number-1>", "<to-phone-number-2>"], // The list of E.164 formatted phone numbers to which message is being sent
message: "Weekly Promotion!" // The message being sent
},
{
enableDeliveryReport: true,
tag: "marketing"
}
);
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);
}
}
Rozwiązywanie problemów
Operacje sms zgłaszają wyjątek, jeśli żądanie do serwera zakończy się niepowodzeniem.
Wyjątki nie będą zgłaszane, jeśli błąd jest spowodowany przez pojedynczy komunikat, tylko wtedy, gdy coś nie powiedzie się z ogólnym żądaniem.
Użyj flagi , successful
aby zweryfikować poszczególne wyniki, aby sprawdzić, czy wiadomość została wysłana.
try {
const sendResults = await client.send({
from: "<from-phone-number>", // Your E.164 formatted phone number used to send SMS
to: ["<to-phone-number-1>", "<to-phone-number-2>"], // The list of E.164 formatted phone numbers to which message is being sent
message: "Hello World via SMS!" // The message being sent
});
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);
}
}
} catch (e) {
console.error(e.message);
}
Następne kroki
- Zapoznaj się z katalogiem samples , aby zapoznać się ze szczegółowymi przykładami dotyczącymi korzystania z tej biblioteki.
- Przeczytaj więcej na temat wiadomości SMS w Azure Communication Services
- Aby zapoznać się z podstawowym przewodnikiem dotyczącym konfigurowania raportowania dostarczania dla wiadomości SMS, zapoznaj się z przewodnikiem Szybki start Obsługa zdarzeń SMS.
Współtworzenie
Jeśli chcesz współtworzyć tę bibliotekę, przeczytaj przewodnik współtworzenia , aby dowiedzieć się więcej na temat tworzenia i testowania kodu.
Powiązane projekty
Azure SDK for JavaScript