Bagikan melalui


Pustaka klien Paket SMS Azure Communication untuk Python - versi 1.0.1

Paket ini berisi Python SDK untuk Azure Communication Services untuk SMS. Baca selengkapnya tentang Azure Communication Services di sini

Kode sumber | Paket (Pypi) | Dokumentasi referensi API | Dokumentasi produk

Memulai

Prasyarat

  • Python 2.7, atau 3.6 atau yang lebih baru diperlukan untuk menggunakan paket ini.
  • Sumber daya Communication Services yang disebarkan. Anda dapat menggunakan Portal Microsoft Azure atau Azure PowerShell untuk menyiapkannya.
  • Anda harus memiliki nomor telepon yang dikonfigurasi yang terkait dengan langganan Azure

Instal paketnya

Instal pustaka klien AZURE Communication SMS untuk Python dengan pip:

pip install azure-communication-sms

Konsep utama

Paket SMS Azure Communication digunakan untuk melakukan hal berikut:

  • Mengirim pesan SMS 1:1
  • Mengirim Pesan SMS 1:N

Contoh

Bagian berikut ini menyediakan beberapa cuplikan kode yang mencakup beberapa tugas Azure Communication Services yang paling umum, termasuk:

Inisialisasi Klien

Untuk menginisialisasi Klien SMS, string koneksi dapat digunakan untuk membuat instans. Atau, Anda juga dapat menggunakan autentikasi Direktori Aktif menggunakan DefaultAzureCredential.

from azure.communication.sms import SmsClient
from azure.identity import DefaultAzureCredential

connection_str = "endpoint=ENDPOINT;accessKey=KEY"
sms_client = SmsClient.from_connection_string(connection_string)

# To use Azure Active Directory Authentication (DefaultAzureCredential) make sure to have
# AZURE_TENANT_ID, AZURE_CLIENT_ID and AZURE_CLIENT_SECRET as env variables.
endpoint = "https://<RESOURCE_NAME>.communication.azure.com"
sms_client = SmsClient(endpoint, DefaultAzureCredential())

Mengirim pesan SMS 1:1

Setelah klien diinisialisasi, send metode dapat dipanggil:

from azure.communication.sms import SendSmsOptions

sms_responses = sms_client.send(
    from_="<from-phone-number>",
    to="<to-phone-number-1>",
    message="Hello World via SMS",
    enable_delivery_report=True, # optional property
    tag="custom-tag") # optional property
  • from_: Nomor telepon yang diaktifkan SMS yang terkait dengan layanan komunikasi Anda.
  • to: Nomor telepon atau daftar nomor telepon yang ingin Anda kirimi pesan.
  • message: Pesan yang ingin Anda kirim.
  • enable_delivery_report: Parameter opsional yang dapat Anda gunakan untuk mengonfigurasi pelaporan pengiriman. Parameter ini berguna untuk skenario di mana Anda ingin memunculkan peristiwa saat pesan SMS dikirimkan.
  • tag: Parameter opsional yang dapat Anda gunakan untuk mengonfigurasi pemberian tag kustom.

Mengirim Pesan SMS 1:N

Setelah klien diinisialisasi, send metode dapat dipanggil:

from azure.communication.sms import SendSmsOptions

sms_responses = sms_client.send(
    from_="<from-phone-number>",
    to=["<to-phone-number-1>", "<to-phone-number-2>", "<to-phone-number-3>"],
    message="Hello World via SMS",
    enable_delivery_report=True, # optional property
    tag="custom-tag") # optional property
  • from_: Nomor telepon yang diaktifkan SMS yang terkait dengan layanan komunikasi Anda.
  • to: Nomor telepon atau daftar nomor telepon yang ingin Anda kirimi pesan.
  • message: Pesan yang ingin Anda kirim.
  • enable_delivery_report: Parameter opsional yang dapat Anda gunakan untuk mengonfigurasi pelaporan pengiriman. Parameter ini berguna untuk skenario di mana Anda ingin memunculkan peristiwa saat pesan SMS dikirimkan.
  • tag: Parameter opsional yang dapat Anda gunakan untuk mengonfigurasi pemberian tag kustom.

Pemecahan Masalah

Operasi SMS akan memberikan pengecualian jika permintaan ke server gagal. Klien SMS akan memunculkan pengecualian yang ditentukan dalam Azure Core. Pengecualian tidak akan dilemparkan jika kesalahan disebabkan oleh pesan individual, hanya jika ada yang gagal dengan permintaan keseluruhan. Gunakan bendera yang berhasil untuk memvalidasi setiap hasil individu untuk memverifikasi apakah pesan dikirim.

try:
    sms_responses = sms_client.send(
        from_="<leased-phone-number>",
        to=["<to-phone-number-1>", "<to-phone-number-2>", "<to-phone-number-3>"],
        message="Hello World via SMS")
        
    for sms_response in sms_responses:
        if (sms_response.successful):
            print("Message with message id {} was successful sent to {}"
            .format(sms_response.message_id, sms_response.to))
        else:
            print("Message failed to send to {} with the status code {} and error: {}"
            .format(sms_response.to, sms_response.http_status_code, sms_response.error_message))
except Exception as ex:
    print('Exception:')
    print(ex)

Langkah berikutnya

Lebih banyak kode sampel

Silakan lihat direktori sampel untuk contoh terperinci tentang cara menggunakan pustaka ini untuk mengirim sms.

Berikan Umpan Balik

Jika Anda menemukan bug atau memiliki saran, silakan ajukan masalah di bagian Masalah proyek

Berkontribusi

Proyek ini menyambut baik kontribusi dan saran. Sebagian besar kontribusi mengharuskan Anda menyetujui Perjanjian Lisensi Kontributor (CLA) yang menyatakan bahwa Anda memiliki hak untuk, dan benar-benar melakukannya, memberi kami hak untuk menggunakan kontribusi Anda. Untuk detailnya, kunjungi https://cla.microsoft.com.

Ketika Anda mengirimkan permintaan tarik, CLA-bot akan secara otomatis menentukan apakah Anda perlu memberikan CLA dan menghias PR dengan tepat (misalnya, label, komentar). Cukup ikuti instruksi yang diberikan oleh bot. Anda hanya perlu melakukan ini sekali di semua repos menggunakan CLA kami.

Proyek ini telah mengadopsi Kode Etik Sumber Terbuka Microsoft. Untuk informasi selengkapnya, lihat Tanya Jawab Umum Tata Tertib atau hubungi opencode@microsoft.com untuk pertanyaan atau komentar lainnya.