Python için Azure İletişim SMS Paketi istemci kitaplığı - sürüm 1.0.1
Bu paket, SMS için Azure İletişim Hizmetleri için bir Python SDK içerir. Azure İletişim Hizmetleri hakkında daha fazla bilgiyi burada bulabilirsiniz
Kaynak kodu | Paket (Pypi) | API başvuru belgeleri | Ürün belgeleri
Başlarken
Önkoşullar
- Bu paketi kullanmak için Python 2.7 veya 3.6 veya üzeri gereklidir.
- Dağıtılan bir İletişim Hizmetleri kaynağı. Ayarlamak için Azure Portal'ı veya Azure PowerShell kullanabilirsiniz.
- Azure aboneliğiyle ilişkilendirilmiş yapılandırılmış bir telefon numaranız olmalıdır
Paketi yükleme
Pip ile Python için Azure İletişim SMS istemci kitaplığını yükleyin:
pip install azure-communication-sms
Önemli kavramlar
Azure İletişim SMS paketi aşağıdakileri yapmak için kullanılır:
- 1:1 SMS mesajı gönderme
- 1:N SMS mesajı gönderme
Örnekler
Aşağıdaki bölümde, en yaygın Azure İletişim Hizmetleri görevlerden bazılarını kapsayan çeşitli kod parçacıkları sağlanır:
İstemci Başlatma
SMS İstemcisi'ni başlatmak için bağlantı dizesi örnek olarak kullanılabilir. Alternatif olarak, DefaultAzureCredential kullanarak Active Directory kimlik doğrulamasını da kullanabilirsiniz.
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())
1:1 SMS mesajı gönderme
İstemci başlatıldıktan send
sonra yöntemi çağrılabilir:
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_
: İletişim hizmetinizle ilişkili SMS özellikli bir telefon numarası.to
: İleti göndermek istediğiniz telefon numarası veya telefon numarası listesi.message
: Göndermek istediğiniz ileti.enable_delivery_report
: Teslim raporlamayı yapılandırmak için kullanabileceğiniz isteğe bağlı bir parametre. Bu, SMS iletileri teslim edildiğinde olayları yaymak istediğiniz senaryolar için kullanışlıdır.tag
: Özel etiketlemeyi yapılandırmak için kullanabileceğiniz isteğe bağlı bir parametre.
1:N SMS mesajı gönderme
İstemci başlatıldıktan send
sonra yöntemi çağrılabilir:
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_
: İletişim hizmetinizle ilişkili SMS özellikli bir telefon numarası.to
: İleti göndermek istediğiniz telefon numarası veya telefon numarası listesi.message
: Göndermek istediğiniz ileti.enable_delivery_report
: Teslim raporlamayı yapılandırmak için kullanabileceğiniz isteğe bağlı bir parametre. Bu, SMS iletileri teslim edildiğinde olayları yaymak istediğiniz senaryolar için kullanışlıdır.tag
: Özel etiketlemeyi yapılandırmak için kullanabileceğiniz isteğe bağlı bir parametre.
Sorun giderme
Sunucuya yönelik istek başarısız olursa SMS işlemleri bir özel durum oluşturur. SMS istemcisi , Azure Core'da tanımlanan özel durumları tetikler. Hata tek bir iletiden kaynaklanıyorsa özel durumlar oluşmaz; yalnızca bir şey genel istekle başarısız olursa. İletinin gönderilip gönderilmediğini doğrulamak için her bir sonucu doğrulamak için lütfen başarılı bayrağını kullanın.
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)
Sonraki adımlar
- Azure İletişim Hizmetleri'de SMS hakkında daha fazla bilgi edinin
- SMS iletileriniz için Teslim Bildirimi'ni yapılandırma hakkında temel bir kılavuz için lütfen SMS Olaylarını İşleme hızlı başlangıcına bakın.
Daha fazla örnek kod
Sms göndermek için bu kitaplığın nasıl kullanılacağına ilişkin ayrıntılı örnekler için lütfen samples dizinine göz atın.
Geri Bildirim Sağlama
Herhangi bir hatayla karşılaşırsanız veya önerileriniz varsa, lütfen projenin Sorunlar bölümünde bir sorun oluşturun
Katkıda bulunma
Bu proje, katkı ve önerilere açıktır. Çoğu durumda, sağladığınız katkıyı kullanmamız için bize hak tanıma hakkına sahip olduğunuzu ve bu hakkı bize tanıdığınızı bildiren bir Katkıda Bulunan Lisans Sözleşmesi’ni (CLA) kabul etmeniz gerekir. Ayrıntılar için bkz. https://cla.microsoft.com.
Bir çekme isteği gönderdiğinizde, CLA robotu bir CLA sağlamanız gerekip gerekmediğini otomatik olarak belirler ve çekme isteğini uygun şekilde donatır (örn. etiket, açıklama). Robot tarafından sağlanan yönergeleri izlemeniz yeterlidir. Bu işlemi, CLA’mızı kullanarak tüm depolarda yalnızca bir kere yapmanız gerekir.
Bu proje Microsoft Open Source Code of Conduct (Microsoft Açık Kaynak Kullanım Kuralları) belgesinde listelenen kurallara uygundur. Daha fazla bilgi için Kullanım Kuralları SSS bölümüne bakın veya ek sorular veya yorumlarla iletişime geçin opencode@microsoft.com .
Azure SDK for Python