Pustaka klien AZURE Communication SMS untuk JavaScript - versi 1.1.0
Layanan SMS Azure Communication memberi pengembang kemampuan untuk mengirim pesan SMS dari nomor telepon yang dapat dibeli melalui Communication Services.
Memulai
Prasyarat
- Langganan Azure.
- Sumber daya Communication Services yang ada. Jika Anda perlu membuat sumber daya, Anda dapat menggunakan Portal Microsoft Azure, Azure PowerShell, atau Azure CLI.
- Nomor telepon yang ditetapkan ke sumber daya Communication Services Anda. Lihat cara memperoleh nomor telepon untuk instruksi tentang cara menambahkan nomor telepon ke sumber daya Communication Services Anda.
Menginstal
npm install @azure/communication-sms
Cara memperoleh nomor telepon
Nomor telepon dapat diperoleh dan ditetapkan ke sumber daya Communication Services dari Portal Microsoft Azure. Instruksi tentang cara mendapatkan nomor telepon menggunakan Portal Microsoft Azure dapat ditemukan di sini.
Anda mungkin juga mendapatkan nomor telepon dengan menggunakan @azure/communication-phone-numbers
paket . Petunjuk tentang cara menggunakan paket dapat ditemukan di README paket.
Dukungan browser
Bundel JavaScript
Untuk menggunakan pustaka klien ini di browser, pertama-tama Anda perlu menggunakan bunder. Untuk detail tentang cara melakukan ini, silakan lihat dokumentasi bundling kami.
Konsep utama
SmsClient
SmsClient
adalah antarmuka utama untuk pengembang yang menggunakan pustaka klien ini. Ini menyediakan metode asinkron untuk mengirim pesan SMS.
Contoh
Autentikasi
Anda bisa mendapatkan kunci dan/atau string koneksi dari sumber daya Communication Services Anda di Portal Microsoft Azure. Setelah memiliki kunci, Anda dapat mengautentikasi dengan salah satu metode berikut:
Menggunakan string koneksi
import { SmsClient } from "@azure/communication-sms";
const connectionString = `endpoint=https://<resource-name>.communication.azure.com/;accessKey=<Base64-Encoded-Key>`;
const client = new SmsClient(connectionString);
Membuat kredensial dengan 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);
Menggunakan identitas terkelola Azure Active Directory
Autentikasi kunci API klien digunakan di sebagian besar contoh, tetapi Anda juga dapat mengautentikasi dengan Azure Active Directory menggunakan pustaka Azure Identity. Untuk menggunakan penyedia DefaultAzureCredential yang ditunjukkan di bawah ini, atau penyedia kredensial lain yang disediakan dengan Azure SDK, instal @azure/identity
paket:
npm install @azure/identity
Paket ini @azure/identity
menyediakan berbagai jenis kredensial yang dapat digunakan aplikasi Anda untuk melakukan ini. README untuk @azure/identity memberikan detail dan sampel lebih lanjut untuk memulai.
AZURE_CLIENT_SECRET, AZURE_CLIENT_ID, dan variabel lingkungan AZURE_TENANT_ID diperlukan untuk membuat objek 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);
Mengirim Pesan SMS 1:N
Untuk mengirim pesan SMS, panggil send
fungsi dari SmsClient
. Anda perlu meneruskan SmsSendRequest
objek .
Anda juga dapat menambahkan pass dalam objek opsi untuk menentukan apakah laporan pengiriman harus diaktifkan dan mengatur tag kustom untuk laporan.
Array SmsSendResult
dikembalikan. Bendera successful
digunakan untuk memvalidasi apakah setiap pesan individu berhasil dikirim.
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);
}
}
Pemecahan Masalah
Operasi SMS akan memberikan pengecualian jika permintaan ke server gagal.
Pengecualian tidak akan dilemparkan jika kesalahan disebabkan oleh pesan individual, hanya jika ada yang gagal dengan permintaan keseluruhan.
successful
Gunakan bendera untuk memvalidasi setiap hasil individu untuk memverifikasi apakah pesan dikirim.
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);
}
Langkah berikutnya
- Silakan lihat direktori sampel untuk contoh terperinci tentang cara menggunakan pustaka ini.
- Baca selengkapnya tentang SMS di Azure Communication Services
- Untuk panduan dasar tentang cara mengonfigurasi Pelaporan Pengiriman untuk pesan SMS Anda, lihat mulai cepat Menangani Peristiwa SMS.
Berkontribusi
Jika Anda ingin berkontribusi pada pustaka ini, baca panduan berkontribusi untuk mempelajari selengkapnya tentang cara membuat dan menguji kode.
Proyek terkait
Azure SDK for JavaScript
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk