Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Önemli
SMS özellikleri, kullandığınız telefon numarasına ve Azure fatura adresiniz tarafından belirlenen şekilde içinde çalıştığınız ülkeye/bölgeye bağlıdır. Daha fazla bilgi için bkz . Abonelik uygunluğu.
SMS iletileri göndermek için Azure CLI'daki İletişim modülünü kullanarak Azure İletişim Hizmetleri kullanmaya başlayın.
Bu makaleyi tamamlamak, Azure hesabınızda birkaç ABD senti veya daha az bir maliyete neden olur.
Önkoşullar
- Etkin aboneliği olan bir Azure hesabı. Ücretsiz hesap oluşturun.
- Etkin bir İletişim Hizmetleri kaynağı ve bağlantı dizesi. İletişim Hizmetleri kaynağı oluşturun.
- SMS özellikli bir telefon numarası, kısa kod veya alfasayısal gönderen kimliği. Bir telefon numarası alın.
- İşletim sisteminiz için en son Azure CLI sürümü.
Önkoşul denetimi
- Terminalde veya komut penceresinde komutunu çalıştırarak
az --version
Azure CLI'nın yüklü olup olmadığını denetleyin.
Kurulum
İletişim modülünü yükleme
İletişim modülünü yüklemek için terminalde veya komut penceresinde aşağıdaki komutu çalıştırın.
az extension add --name communication
Azure CLI'da oturum açma
Azure CLI'da oturum açmanız gerekir. Terminalden komutunu çalıştırarak az login
ve kimlik bilgilerinizi sağlayarak oturum açabilirsiniz.
Doğru aboneliği kullandığınızdan emin olun
Hesabınızda birden çok abonelik varsa, bu öğretici için doğru aboneliği kullandığınızdan emin olun.
Terminalde veya komut pencerelerinde, geçerli aboneliği denetlemek için aşağıdaki komutu çalıştırın.
az account show
Aboneliği değiştirmeniz gerekiyorsa, aşağıdaki komutu çalıştırarak bunu yapabilirsiniz.
az account set --subscription "<yourSubscriptionId>"
değerini, Azure portalındaki Abonelikler bölümünde bulabileceğiniz gerçek abonelik kimliğiniz ile değiştirmeniz <yourSubscriptionId>
gerekir.
(İsteğe bağlı) Bağlantı dizesi geçirmeden Azure CLI sms işlemlerini kullanma
Azure CLI sms işlemlerini kullanmak için ortam değişkenini, bağlantı dizesi geçirmek zorunda kalmadan, AZURE_COMMUNICATION_CONNECTION_STRING
olarak yapılandırabilirsiniz. Ortam değişkenini yapılandırmak için bir konsol penceresi açın ve aşağıdaki sekmelerden işletim sisteminizi seçin. Yerine <yourConnectionString>
gerçek bağlantı dizesini koyun.
Bir konsol penceresi açın ve aşağıdaki komutu girin:
setx AZURE_COMMUNICATION_CONNECTION_STRING "<yourConnectionString>"
Ortam değişkenini ekledikten sonra, konsol penceresi de dahil olmak üzere ortam değişkenini okumak için gereken tüm çalışan programları yeniden başlatmanız gerekebilir. Örneğin, düzenleyici olarak Visual Studio kullanıyorsanız, örneği çalıştırmadan önce Visual Studio'yu yeniden başlatın.
İşlemler
1:1 SMS iletisi gönderme
Tek bir alıcıya SMS iletisi göndermek için sms modülünden yöntemini tek bir alıcı telefon numarasıyla çağırın send
.
az communication sms send --sender "<fromPhoneNumber>" --recipient "<toPhoneNumber>" --message "Hello world via SMS for Azure CLI!" --connection-string "<yourConnectionString>"
Kodda şu değişiklikleri yapın:
-
<fromPhoneNumber>
değerini İletişim Hizmetleri kaynağınızla ilişkilendirilmiş SMS özellikli bir telefon numarasıyla değiştirin. - yerine
<toPhoneNumber>
ileti göndermek istediğiniz telefon numarasını yazın. -
<yourConnectionString>
ifadesini bağlantı dizesi ile değiştirin.
Uyarı
Telefon numaralarını E.164 uluslararası standart biçiminde (örneğin, +14255550123) sağlayın.
<fromPhoneNumber>
'nın değeri, örneğin 23456 gibi kısa bir kod veya CONTOSO gibi alfasayısal bir gönderen kimliği de olabilir.
1:N SMS iletisi gönderme
Alıcı listesine SMS iletisi göndermek için, sms modülünden birden çok alıcı telefon numarası içeren yöntemini çağırın send
.
az communication sms send --sender "<fromPhoneNumber>" --recipient "<toPhoneNumber1>" "<toPhoneNumber2>" "<toPhoneNumber3>" --message "Hello world via SMS for Azure CLI!" --connection-string "<yourConnectionString>"
Kodda şu değişiklikleri yapın:
-
<fromPhoneNumber>
değerini İletişim Hizmetleri kaynağınızla ilişkilendirilmiş SMS özellikli bir telefon numarasıyla değiştirin. -
<toPhoneNumberN>
ifadesinin yerine mesaj göndermek istediğiniz 'N'inci telefon numarasını yazın. -
<yourConnectionString>
ifadesini bağlantı dizesi ile değiştirin.
Uyarı
+14255550123 gibi E.164 uluslararası standart biçiminde telefon numaraları sağlayın.
<fromPhoneNumber>
için değer, 23456 gibi kısa bir kod veya CONTOSO gibi alfasayısal bir gönderen kimliği olabilir.
SMS iletileri göndermek için İletişim Hizmetleri C# SMS SDK'sını kullanarak Azure İletişim Hizmetleri kullanmaya başlayın.
Bu makaleyi tamamlamak, Azure hesabınızda birkaç ABD senti veya daha az bir maliyete neden olur.
Not
Azure Örnekleri GitHub .NET kullanarak SMS iletisi gönderme bağlantısında son haline getirilmiş koda bakın.
Önkoşullar
- Etkin aboneliği olan bir Azure hesabı. Ücretsiz hesap oluşturun.
- İşletim sisteminiz için en son .NET Core SDK sürümü.
- Etkin bir İletişim Hizmetleri kaynağı ve bağlantı dizesi. İletişim Hizmetleri kaynağı oluşturun.
- SMS özellikli bir telefon numarası, kısa kod veya alfasayısal gönderen kimliği. Bir telefon numarası alın.
Önkoşul denetimi
- Terminalde veya komut penceresinde komutunu çalıştırarak
dotnet
.NET SDK'sının yüklü olup olmadığını denetleyin. - İletişim Hizmetleri kaynağınızla ilişkili telefon numaralarını görüntülemek için Azure portalında oturum açın ve İletişim Hizmetleri kaynağınızı bulun. Soldaki gezinti bölmesinde Telefon numaraları'nı seçin.
Uygulama ortamını ayarlama
İleti göndermek üzere bir ortam ayarlamak için aşağıdaki bölümlerde yer alan adımları uygulayın.
Yeni bir C# uygulaması oluşturma
cmd, PowerShell veya Bash gibi bir konsol penceresinde komutunu kullanarak
dotnet new
adlıSmsQuickstart
yeni bir konsol uygulaması oluşturun. Bu komut, Program.cs tek bir kaynak dosyasıyla basit bir "Merhaba Dünya" C# projesi oluşturur.dotnet new console -o SmsQuickstart
Dizininizi yeni oluşturulan uygulama klasörüne değiştirin ve komutunu kullanarak
dotnet build
uygulamanızı derleyin.cd SmsQuickstart dotnet build
paketini yükleyin
Uygulama dizinindeyken, aşağıdaki komutu kullanarak .NET paketi için Azure İletişim Hizmetleri SMS SDK'sını yükleyin.
dotnet add package Azure.Communication.Sms --version 1.0.0
using
dosyasının en üstüne ad alanını eklemek için birAzure.Communication
yönergesi ekleyin.using System; using System.Collections.Generic; using Azure; using Azure.Communication; using Azure.Communication.Sms;
Nesne modeli
Aşağıdaki sınıflar ve arabirimler, C# için Azure İletişim Hizmetleri SMS SDK'sının bazı önemli özelliklerini işler.
Veri Akışı Adı | Açıklama |
---|---|
Sms İstemcisi | Bu sınıf tüm SMS işlevleri için gereklidir. Abonelik bilgilerinizle bu nesneyi oluşturur ve SMS mesajları göndermek için kullanırsınız. |
SMS Gönderme Seçenekleri | Bu sınıf, teslim raporlamayı yapılandırmak için seçenekler sağlar. enable_delivery_report True olarak ayarlandığında, teslim başarılı olduğunda bir olay tetiklenir. |
SMSGönderimSonucu | Bu sınıf SMS hizmetinin sonucunu içerir. |
İstemcinin kimliğini doğrulama
Program.cs dosyasını bir metin düzenleyicisinde açın ve yönteminizin gövdesini, bağlantı dizesiyle başlatmak için gerekli kodla değiştirin. Aşağıdaki kod, adlı COMMUNICATION_SERVICES_CONNECTION_STRING
bir ortam değişkeninden kaynağın bağlantı dizesi alır. Kaynağınızın bağlantı dizesini yönetmeyi öğrenin.
// This code retrieves your connection string
// from an environment variable.
string connectionString = Environment.GetEnvironmentVariable("COMMUNICATION_SERVICES_CONNECTION_STRING");
SmsClient smsClient = new SmsClient(connectionString);
1:1 SMS iletisi gönderme
Tek bir alıcıya SMS iletisi göndermek için SmsClient'daki Send
veya SendAsync
işlevini çağırın. Bu kodu Program.cs yönteminin Main
sonuna ekleyin:
SmsSendResult sendResult = smsClient.Send(
from: "<from-phone-number>",
to: "<to-phone-number>",
message: "Hello World via SMS"
);
Console.WriteLine($"Sms id: {sendResult.MessageId}");
Kodda şu değişiklikleri yapın:
-
<from-phone-number>
değerini İletişim Hizmetleri kaynağınızla ilişkilendirilmiş SMS özellikli bir telefon numarasıyla değiştirin. - yerine
<to-phone-number>
ileti göndermek istediğiniz telefon numarasını yazın.
Uyarı
+14255550123 gibi E.164 uluslararası standart biçiminde telefon numaraları sağlayın.
<from-phone-number>
için değer, 23456 gibi kısa bir kod veya CONTOSO gibi alfasayısal bir gönderen kimliği olabilir.
Seçeneklerle 1:N SMS iletisi gönderme
Alıcı telefon numaraları listesiyle birlikte Send
veya SendAsync
işlevini SmsClient'tan çağırarak bir alıcı listesine SMS mesajı gönderin. Ayrıca, teslim raporunun etkinleştirilip etkinleştirilmeyeceğini belirtmek ve özel etiketler ayarlamak için isteğe bağlı parametreler de sağlayabilirsiniz.
Response<IReadOnlyList<SmsSendResult>> response = smsClient.Send(
from: "<from-phone-number>",
to: new string[] { "<to-phone-number-1>", "<to-phone-number-2>" },
message: "Weekly Promotion!",
options: new SmsSendOptions(enableDeliveryReport: true) // OPTIONAL
{
Tag = "marketing", // custom tags
});
IEnumerable<SmsSendResult> results = response.Value;
foreach (SmsSendResult result in results)
{
Console.WriteLine($"Sms id: {result.MessageId}");
Console.WriteLine($"Send Result Successful: {result.Successful}");
}
Kodda şu değişiklikleri yapın:
-
<from-phone-number>
değerini İletişim Hizmetleri kaynağınızla ilişkilendirilmiş SMS özellikli bir telefon numarasıyla değiştirin. -
<to-phone-number-1>
ve<to-phone-number-2>
yerine mesaj göndermek istediğiniz telefon numaralarını yazın.
Uyarı
+14255550123 gibi E.164 uluslararası standart biçiminde telefon numaraları sağlayın.
<from-phone-number>
için değer, 23456 gibi kısa bir kod veya CONTOSO gibi alfasayısal bir gönderen kimliği olabilir.
enableDeliveryReport
parametresi, teslim raporlamayı yapılandırmak için kullanabileceğiniz isteğe bağlı bir parametredir. Bu işlev, SMS iletileri teslim edildiğinde olayları yaymak istediğinizde kullanışlıdır.
SMS Olaylarını İşleme hızlı başlangıcına bakarak SMS iletileriniz için teslim raporlamayı yapılandırın.
Teslim raporuna Tag
etiket uygulamak için parametresini kullanabilirsiniz.
Kodu çalıştırma
komutunu kullanarak dotnet run
uygulamayı uygulama dizininizden çalıştırın.
dotnet run
Örnek kod
Azure Örnekleri GitHub'dan örnek uygulamayı indirin.NET kullanarak SMS iletisi gönderin.
SMS iletileri göndermek için İletişim Hizmetleri JavaScript SMS SDK'sını kullanarak Azure İletişim Hizmetleri'ni kullanmaya başlayın.
Bu makaleyi tamamlamak, Azure hesabınızda birkaç ABD senti veya daha az bir maliyete neden olur.
Not
Son haline getirilmiş Azure Örnekleri GitHub JavaScript kullanarak SMS iletisi gönderme koduna bakın.
Önkoşullar
- Etkin aboneliği olan bir Azure hesabı. Ücretsiz hesap oluşturun.
- Node.js Etkin LTS ve Bakım LTS sürümleri (8.11.1 ve 10.14.1 önerilir).
- Etkin bir İletişim Hizmetleri kaynağı ve bağlantı dizesi. İletişim Hizmetleri kaynağı oluşturun.
- SMS özellikli bir telefon numarası, kısa kod veya alfasayısal gönderen kimliği. Bir telefon numarası alın.
Önkoşul denetimi
- Terminalde veya komut penceresinde Node.js yüklenip yüklenmediğini denetlemek için komutunu çalıştırın
node --version
. - İletişim Hizmetleri kaynağınızla ilişkili telefon numaralarını görüntülemek için Azure portalında oturum açın ve İletişim Hizmetleri kaynağınızı bulun. Soldaki gezinti bölmesinde Telefon numaraları'nı seçin.
Uygulama ortamını ayarlama
İleti göndermek üzere bir ortam ayarlamak için aşağıdaki bölümlerde yer alan adımları uygulayın.
Yeni bir Node.js uygulaması oluşturma
Terminalinizi veya komut pencerenizi açın ve aşağıdaki komutu çalıştırarak uygulamanız için yeni bir dizin oluşturun ve bu dizine gidin.
mkdir sms-quickstart && cd sms-quickstart
Varsayılan ayarlarla bir package.json dosyası oluşturmak için aşağıdaki komutu çalıştırın.
npm init -y
Proje kök dizininde send-sms.js adlı bir dosya oluşturmak için bir metin düzenleyicisi kullanın.
Aşağıdaki bölümlerde, bu hızlı başlangıcın tüm kaynak kodunu oluşturduğunuz send-sms.js dosyasına ekleyin.
paketini yükleyin
npm install
JavaScript için Azure İletişim Hizmetleri SMS SDK'sını yüklemek için komutunu kullanın.
npm install @azure/communication-sms --save
--save
seçeneği, kitaplığı package.json dosyanızda bir bağımlılık olarak listeler.
Nesne modeli
Aşağıdaki sınıflar ve arabirimler, Node.js için Azure İletişim Hizmetleri SMS SDK'sının bazı önemli özelliklerini işler.
Veri Akışı Adı | Açıklama |
---|---|
Sms İstemcisi | Bu sınıf tüm SMS işlevleri için gereklidir. Abonelik bilgilerinizle bu nesneyi oluşturur ve SMS mesajları göndermek için kullanırsınız. |
SMSGöndermeTalebi | Bu arabirim, SMS isteğini oluşturmaya yönelik modeldir. Telefon numaralarını ve SMS içeriğini yapılandırmak için bunu kullanırsınız. |
SMS Gönderme Seçenekleri | Bu arabirim, teslim raporlamayı yapılandırmak için seçenekler sağlar.
enableDeliveryReport
true olarak ayarlanırsa, teslim başarılı olduğunda bir olay tetiklenir. |
SMSGönderimSonucu | Bu sınıf SMS hizmetinin sonucunu içerir. |
İstemcinin kimliğini doğrulama
Bir istemcinin kimliğini doğrulamak için SMSClient'ı SDK'dan içeri aktarır ve bağlantı dizesi örneğinizle oluşturursunuz. Kaynak için bağlantı dizesi bir ortam değişkeninden alabilirsiniz. Örneğin, bu bölümdeki kod ortam değişkeninden COMMUNICATION_SERVICES_CONNECTION_STRING
bağlantı dizesi alır. Kaynağınızın bağlantı dizesini yönetmeyi öğrenin.
İstemciyi içeri aktarmak ve örneğini başlatmak için:
send-sms.js adlı bir dosya oluşturun.
aşağıdaki kodu send-sms.js ekleyin.
const { SmsClient } = require('@azure/communication-sms');
// This code retrieves your connection string
// from an environment variable.
const connectionString = process.env['COMMUNICATION_SERVICES_CONNECTION_STRING'];
// Instantiate the SMS client.
const smsClient = new SmsClient(connectionString);
1:N SMS iletisi gönderme
Alıcı listesine SMS iletisi göndermek için SmsClient'dan alıcı telefon numaraları listesiyle işlevini çağırın send
. Tek bir alıcıya ileti göndermek istiyorsanız, listeye yalnızca bir numara ekleyin. Bu kodu send-sms.js sonuna ekleyin:
async function main() {
const sendResults = await smsClient.send({
from: "<from-phone-number>",
to: ["<to-phone-number-1>", "<to-phone-number-2>"],
message: "Hello World 👋🏻 via SMS"
});
// Individual messages can encounter errors during sending.
// Use the "successful" property to verify the status.
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);
}
}
}
main();
Kodda şu değişiklikleri yapın:
-
<from-phone-number>
değerini İletişim Hizmetleri kaynağınızla ilişkilendirilmiş SMS özellikli bir telefon numarasıyla değiştirin. -
<to-phone-number-1>
ve<to-phone-number-2>
yerine mesaj göndermek istediğiniz telefon numaralarını yazın.
Uyarı
Telefon numaralarını E.164 uluslararası standart biçiminde (örneğin, +14255550123) sağlayın.
<from-phone-number>
'nın değeri, örneğin 23456 gibi kısa bir kod veya CONTOSO gibi alfasayısal bir gönderen kimliği de olabilir.
Seçeneklerle 1:N SMS iletisi gönderme
Ayrıca, teslim raporunun etkinleştirilip etkinleştirilmeyeceğini belirtmek ve özel etiketler ayarlamak için bir seçenekler nesnesi de sağlayabilirsiniz.
async function main() {
const sendResults = await smsClient.send({
from: "<from-phone-number>",
to: ["<to-phone-number-1>", "<to-phone-number-2>"],
message: "Weekly Promotion!"
}, {
// Optional parameters
enableDeliveryReport: true,
tag: "marketing"
});
// Individual messages can encounter errors during sending.
// Use the "successful" property to verify the status.
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);
}
}
}
main();
Kodda şu değişiklikleri yapın:
-
<from-phone-number>
değerini İletişim Hizmetleri kaynağınızla ilişkilendirilmiş SMS özellikli bir telefon numarasıyla değiştirin. -
<to-phone-number-1>
ve<to-phone-number-2>
yerine mesaj göndermek istediğiniz telefon numaralarını yazın.
Uyarı
Telefon numaralarını E.164 uluslararası standart biçiminde (örneğin, +14255550123) sağlayın.
<from-phone-number>
'nın değeri, örneğin 23456 gibi kısa bir kod veya CONTOSO gibi alfasayısal bir gönderen kimliği de olabilir.
enableDeliveryReport
parametresi, teslim raporlamayı yapılandırmak için kullanabileceğiniz isteğe bağlı bir parametredir. Bu işlev, SMS iletileri teslim edildiğinde olayları yaymak istediğinizde kullanışlıdır.
SMS Olaylarını İşleme hızlı başlangıcına bakarak SMS iletileriniz için teslim raporlamayı yapılandırın.
tag
parametresi isteğe bağlıdır. Bunu kullanarak teslimat raporuna bir etiket uygulayabilirsiniz.
Kodu çalıştırma
node
send-sms.js dosyasına eklediğiniz kodu çalıştırmak için komutunu kullanın.
node ./send-sms.js
SMS iletileri göndermek için İletişim Hizmetleri Python SMS SDK'sını kullanarak Azure İletişim Hizmetleri kullanmaya başlayın.
Bu hızlı başlangıcı tamamladığınızda Azure hesabınıza birkaç sentlik (ABD doları cinsinden) veya daha düşük bir ücret yansıtılır.
Not
Bu makalenin son haline getirilmiş kodu için bkz. GitHub Azure Örnekleri Python kullanarak telefon numaralarını yönetme.
Önkoşullar
- Etkin aboneliği olan bir Azure hesabı. Ücretsiz hesap oluşturun.
- Python 3.7+.
- Etkin bir İletişim Hizmetleri kaynağı ve bağlantı dizesi. İletişim Hizmetleri kaynağı oluşturun.
- SMS özellikli bir telefon numarası, kısa kod veya alfasayısal gönderen kimliği. Bir telefon numarası alın.
Önkoşul denetimi
- Terminalde veya komut penceresinde, Python'ın yüklü olup olmadığını denetlemek için komutunu çalıştırın
python --version
. - İletişim Hizmetleri kaynağınızla ilişkili telefon numaralarını görüntülemek için Azure portalında oturum açın ve İletişim Hizmetleri kaynağınızı bulun. Soldaki gezinti bölmesinde Telefon numaraları'nı seçin.
Uygulama ortamını ayarlama
İleti göndermek üzere bir ortam ayarlamak için aşağıdaki bölümleri tamamlayın.
Yeni Python uygulaması oluşturma
Terminalinizi veya komut pencerenizi açın. Uygulamanız için yeni bir dizin oluşturmak ve bu dizine gitmek için aşağıdaki komutu kullanın.
mkdir sms-quickstart && cd sms-quickstart
Proje kök dizininde send-sms.py adlı bir dosya oluşturmak ve temel özel durum işleme dahil olmak üzere programın yapısını eklemek için bir metin düzenleyicisi kullanın.
import os from azure.communication.sms import SmsClient try: # Quickstart code goes here. except Exception as ex: print('Exception:') print(ex)
Aşağıdaki bölümlerde, bu hızlı başlangıcın tüm kaynak kodunu oluşturduğunuz send-sms.py dosyasına ekleyin.
paketini yükleyin
Uygulama dizinindeyken, aşağıdaki komutu kullanarak Python paketi için Azure İletişim Hizmetleri SMS SDK'sını yükleyin.
pip install azure-communication-sms
Nesne modeli
Aşağıdaki sınıflar ve arabirimler Python için Azure İletişim Hizmetleri SMS SDK'sının bazı önemli özelliklerini işler.
Veri Akışı Adı | Açıklama |
---|---|
Sms İstemcisi | Bu sınıf tüm SMS işlevleri için gereklidir. Abonelik bilgilerinizle örnek nesne oluşturarak, bunu SMS mesajları göndermek için kullanın. |
SMSGönderimSonucu | Bu sınıf SMS hizmetinin sonucunu içerir. |
İstemcinin kimliğini doğrulama
Bağlantı dizesi ile bir SmsClient örneği oluşturun. Kaynağınızın bağlantı dizesini yönetmeyi öğrenin.
# Create the SmsClient object that you use to send SMS messages.
sms_client = SmsClient.from_connection_string(<connection_string>)
Kolaylık olması için bu hızlı başlangıçta bağlantı dizesi kullanılır, ancak üretim ortamlarında hizmet sorumlularının kullanılmasını öneririz.
1:1 SMS iletisi gönderme
Tek bir alıcıya SMS iletisi göndermek için SmsClient'dan send
yöntemini tek bir alıcı telefon numarasıyla çağırın. Ayrıca, teslim raporunun etkinleştirilip etkinleştirilmeyeceğini belirtmek ve özel etiketler ayarlamak için isteğe bağlı parametreler de sağlayabilirsiniz. Bu kodu send-sms.py bloğunun try
sonuna ekleyin:
# Call send() with SMS values.
sms_responses = sms_client.send(
from_="<from-phone-number>",
to="<to-phone-number>",
message="Hello World via SMS",
enable_delivery_report=True, # optional property
tag="custom-tag") # optional property
Kodda şu değişiklikleri yapın:
- İletişim hizmetinizle ilişkilendirilmiş SMS özellikli bir telefon numarasıyla
<from-phone-number>
'yı değiştirin. - yerine
<to-phone-number>
ileti göndermek istediğiniz telefon numarasını yazın.
Uyarı
Telefon numaralarını E.164 uluslararası standart biçiminde (örneğin, +14255550123) sağlayın.
<from-phone-number>
'nın değeri, örneğin 23456 gibi kısa bir kod veya CONTOSO gibi alfasayısal bir gönderen kimliği de olabilir.
1:N SMS iletisi gönderme
Alıcı listesine SMS iletisi göndermek için SmsClient'dan send
alıcı telefon numaraları listesiyle yöntemini çağırın. Ayrıca, teslim raporunun etkinleştirilip etkinleştirilmeyeceğini belirtmek ve özel etiketler ayarlamak için isteğe bağlı parametreler de sağlayabilirsiniz. Bu kodu send-sms.py bloğunun try
sonuna ekleyin:
# Call send() with SMS values.
sms_responses = sms_client.send(
from_="<from-phone-number>",
to=["<to-phone-number-1>", "<to-phone-number-2>"],
message="Hello World via SMS",
enable_delivery_report=True, # optional property
tag="custom-tag") # optional property
Kodda şu değişiklikleri yapın:
- İletişim hizmetinizle ilişkilendirilmiş SMS özellikli bir telefon numarasıyla
<from-phone-number>
'yı değiştirin. -
<to-phone-number-1>
ve<to-phone-number-2>
yerine mesaj göndermek istediğiniz telefon numaralarını yazın.
Uyarı
+14255550123 gibi E.164 uluslararası standart biçiminde telefon numaraları sağlayın.
<from-phone-number>
için değer, 23456 gibi kısa bir kod veya CONTOSO gibi alfasayısal bir gönderen kimliği olabilir.
İsteğe bağlı parametreler
enable_delivery_report
parametresi, teslim raporlamayı yapılandırmak için kullanabileceğiniz isteğe bağlı bir parametredir. SMS iletileri teslim edildiğinde olayları yaymak istiyorsanız bu işlevi kullanın. SMS iletileriniz için teslim raporlamayı yapılandırmak için bkz. SMS Olaylarını işleme .
tag
parametresi, teslim raporuna etiket uygulamak için kullanabileceğiniz isteğe bağlı bir parametredir.
Kodu çalıştırma
komutunu kullanarak python
uygulamayı uygulama dizininizden çalıştırın.
python send-sms.py
Python betiğinin tamamı aşağıdaki koda benzer olmalıdır:
import os
from azure.communication.sms import SmsClient
try:
# Create the SmsClient object that you use to send SMS messages.
sms_client = SmsClient.from_connection_string("<connection string>")
# Call send() with SMS values.
sms_responses = sms_client.send(
from_="<from-phone-number>",
to="<to-phone-number>",
message="Hello World via SMS",
enable_delivery_report=True, # optional property
tag="custom-tag") # optional property
except Exception as ex:
print('Exception:')
print(ex)
SMS iletileri göndermek için İletişim Hizmetleri Java SMS SDK'sını kullanarak Azure İletişim Hizmetleri kullanmaya başlayın.
Bu makaleyi tamamlamak, Azure hesabınızda birkaç ABD senti veya daha az bir maliyete neden olur.
Not
Son haline getirilmiş Azure Örnekleri GitHub Java kullanarak SMS iletisi gönderme koduna bakın.
Önkoşullar
- Etkin aboneliği olan bir Azure hesabı. Ücretsiz hesap oluşturun.
- Java Development Kit (JDK) sürüm 8 veya üzeri.
- Apache Maven.
- Etkin bir İletişim Hizmetleri kaynağı ve bağlantı dizesi. İletişim Hizmetleri kaynağı oluşturun.
- SMS özellikli bir telefon numarası, kısa kod veya alfasayısal gönderen kimliği. Bir telefon numarası alın.
Önkoşul denetimi
- Bir terminalde veya komut penceresinde Maven'in yüklü olup olmadığını denetlemek için komutunu çalıştırın
mvn -v
. - İletişim Hizmetleri kaynağınızla ilişkili telefon numaralarını görüntülemek için Azure portalında oturum açın ve İletişim Hizmetleri kaynağınızı bulun. Soldaki gezinti bölmesinde Telefon numaraları'nı seçin.
Uygulama ortamını ayarlama
İleti göndermek üzere bir ortam ayarlamak için aşağıdaki bölümleri tamamlayın.
Yeni java uygulaması oluşturma
Bir terminal veya komut penceresi açın ve Java uygulamanızı oluşturmak istediğiniz dizine gidin. Maven-archetype-quickstart şablonundan Java projesi oluşturmak için aşağıdaki komutu çalıştırın.
- Komut İstemi
mvn archetype:generate -DgroupId=com.communication.quickstart -DartifactId=communication-quickstart -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DinteractiveMode=false
- PowerShell
mvn archetype:generate "-DgroupId=com.communication.quickstart" "-DartifactId=communication-quickstart" "-DarchetypeArtifactId=maven-archetype-quickstart" "-DarchetypeVersion=1.4" "-DinteractiveMode=false"
generate
hedefi, artifactId
değerine sahip bir adla bir dizin oluşturur. Bu dizin altında src /main/java dizini proje kaynak kodunu, src/test/java dizini test kaynağını ve pom.xml dosyası projenin Proje Nesne Modeli'ni (POM) içerir.
paketini yükleyin
metin düzenleyicinizde pom.xml dosyasını açın. Aşağıdaki bağımlılık öğesini bağımlılık grubuna ekleyin.
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-communication-sms</artifactId>
<version>1.0.1</version>
</dependency>
Uygulama çerçevesini ayarlama
Metin düzenleyicisinde /src/main/java/com/communication/quickstart/App.java açın, içeri aktarma yönergeleri ekleyin ve deyimini System.out.println("Hello world!");
kaldırın:
package com.communication.quickstart;
import com.azure.communication.sms.models.*;
import com.azure.core.credential.AzureKeyCredential;
import com.azure.communication.sms.*;
import com.azure.core.util.Context;
import java.util.Arrays;
public class App
{
public static void main( String[] args )
{
// Quickstart code goes here.
}
}
Nesne modeli
Aşağıdaki sınıflar ve arabirimler Java için Azure İletişim Hizmetleri SMS SDK'sının bazı önemli özelliklerini işler.
Veri Akışı Adı | Açıklama |
---|---|
Sms İstemci Oluşturucu | Bu sınıf SmsClient oluşturur. Bunu bir uç nokta, bir kimlik bilgisi ve bir HTTP istemcisi ile sağlarsınız. |
Sms İstemcisi | Bu sınıf tüm SMS işlevleri için gereklidir. BUNU SMS mesajları göndermek için kullanırsınız. |
SMS Gönderme Seçenekleri | Bu sınıf, özel etiketler ekleme ve teslim raporlamayı yapılandırma seçenekleri sağlar. deliveryReportEnabled true olarak ayarlanırsa, teslim başarılı olduğunda bir olay yayılır. |
SMSGönderimSonucu | Bu sınıf SMS hizmetinin sonucunu içerir. |
İstemcinin kimliğini doğrulama
Bir istemcinin kimliğini doğrulamak için bağlantı dizesi ile bir SmsClient
örneği oluşturursunuz. Azure portalından Key
kimlik bilgisi için kullanın. Kaynağınızın bağlantı dizesini yönetmeyi öğrenin. İstemciyi, arabirimini uygulayan com.azure.core.http.HttpClient
herhangi bir özel HTTP istemcisiyle de başlatabilirsiniz.
İstemciyi örneklemek için main
yöntemine aşağıdaki kodu ekleyin:
// You can get your endpoint and access key from your resource in the Azure portal.
String endpoint = "https://<resource-name>.communication.azure.com/";
AzureKeyCredential azureKeyCredential = new AzureKeyCredential("<access-key-credential>");
SmsClient smsClient = new SmsClientBuilder()
.endpoint(endpoint)
.credential(azureKeyCredential)
.buildClient();
Uç nokta ve erişim anahtarı sağlamaktansa, connectionString
işlevini kullanarak tüm bağlantı dizesini de sağlayabilirsiniz.
// You can get your connection string from your resource in the Azure portal.
String connectionString = "endpoint=https://<resource-name>.communication.azure.com/;accesskey=<access-key>";
SmsClient smsClient = new SmsClientBuilder()
.connectionString(connectionString)
.buildClient();
1:1 SMS iletisi gönderme
Tek bir alıcıya SMS iletisi göndermek için, SmsClient'teki send
yöntemini tek bir alıcı telefon numarasıyla çağırın. Ayrıca, teslim raporunun etkinleştirilip etkinleştirilmeyeceğini belirtmek ve özel etiketler ayarlamak için isteğe bağlı parametreler de sağlayabilirsiniz.
SmsSendResult sendResult = smsClient.send(
"<from-phone-number>",
"<to-phone-number>",
"Weekly Promotion");
System.out.println("Message Id: " + sendResult.getMessageId());
System.out.println("Recipient Number: " + sendResult.getTo());
System.out.println("Send Result Successful:" + sendResult.isSuccessful());
Kodda şu değişiklikleri yapın:
-
<from-phone-number>
değerini İletişim Hizmetleri kaynağınızla ilişkilendirilmiş SMS özellikli bir telefon numarasıyla değiştirin. - yerine
<to-phone-number>
ileti göndermek istediğiniz telefon numarasını yazın.
Uyarı
+14255550123 gibi E.164 uluslararası standart biçiminde telefon numaraları sağlayın.
<from-phone-number>
için değer, 23456 gibi kısa bir kod veya CONTOSO gibi alfasayısal bir gönderen kimliği olabilir.
Seçeneklerle 1:N SMS iletisi gönderme
Alıcı listesine SMS iletisi göndermek için, alıcı telefon numaraları listesiyle yöntemini çağırın send
. Ayrıca, teslim raporunun etkinleştirilip etkinleştirilmeyeceğini belirtmek ve özel etiketler ayarlamak için isteğe bağlı parametreler de sağlayabilirsiniz.
SmsSendOptions options = new SmsSendOptions();
options.setDeliveryReportEnabled(true);
options.setTag("Marketing");
Iterable<SmsSendResult> sendResults = smsClient.sendWithResponse(
"<from-phone-number>",
Arrays.asList("<to-phone-number1>", "<to-phone-number2>"),
"Weekly Promotion",
options /* Optional */,
Context.NONE).getValue();
for (SmsSendResult result : sendResults) {
System.out.println("Message Id: " + result.getMessageId());
System.out.println("Recipient Number: " + result.getTo());
System.out.println("Send Result Successful:" + result.isSuccessful());
}
Kodda şu değişiklikleri yapın:
-
<from-phone-number>
değerini, İletişim Hizmetleri kaynağınızla ilişkilendirilmiş SMS özellikli bir telefon numarasıyla değiştirin. -
<to-phone-number-1>
ve<to-phone-number-2>
yerine mesaj göndermek istediğiniz telefon numaralarını yazın.
Uyarı
Telefon numaralarını E.164 uluslararası standart biçiminde (örneğin, +14255550123) sağlayın.
<from-phone-number>
'nın değeri, örneğin 23456 gibi kısa bir kod veya CONTOSO gibi alfasayısal bir gönderen kimliği de olabilir.
setDeliveryReportEnabled
yöntemi, teslim raporlamayı yapılandırmak için kullanılır. Bu işlev, SMS iletileri teslim edildiğinde olayları yaymak istediğinizde kullanışlıdır.
SMS Olaylarını İşleme hızlı başlangıcına bakarak SMS iletileriniz için teslim raporlamayı yapılandırın.
Teslim raporuna etiket uygulamak için yöntemini kullanın setTag
.
Kodu çalıştırma
pom.xml dosyasını içeren dizine gidin ve komutunu kullanarak projeyi derleyin
mvn
.mvn compile
Paketi oluşturun.
mvn package
Uygulamayı yürütmek için aşağıdaki
mvn
komutu çalıştırın.- Komut İstemi
mvn exec:java -Dexec.mainClass="com.communication.quickstart.App" -Dexec.cleanupDaemonThreads=false
- PowerShell
mvn exec:java "-Dexec.mainClass=com.communication.quickstart.App" "-Dexec.cleanupDaemonThreads=false"
SMS iletileri gönderebilen otomatik iş akışları oluşturmak için Azure İletişim Hizmetleri SMS bağlayıcısını ve Azure Logic Apps'i kullanın.
Bu makalede, mantıksal uygulama iş akışının ilk adımı olan tetikleyici olayına yanıt olarak otomatik olarak kısa mesaj gönderme işlemi açıklanmaktadır. Tetikleyici olayı gelen e-posta iletisi, yineleme zamanlaması, Azure Event Grid kaynak olayı veya Azure Logic Apps tarafından desteklenen diğer tetikleyiciler olabilir.
Bu makale bir tetikleyiciye yanıt vermek için bağlayıcıyı kullanmaya odaklansa da, bir iş akışında tetikleyiciyi izleyen adımlar olan diğer eylemlere yanıt vermek için bağlayıcıyı da kullanabilirsiniz. Logic Apps'i kullanmaya yeni başladıysanız başlamadan önce bkz. Azure Logic Apps nedir ?
Not
Bu makaleyi tamamlamak, Azure hesabınızda birkaç ABD senti veya daha az bir maliyete neden olur.
Önkoşullar
Etkin aboneliği olan bir Azure hesabı veya ücretsiz bir Azure hesabı oluşturun.
Etkin bir Azure İletişim Hizmetleri kaynağı veya bir İletişim Hizmetleri kaynağı oluşturun.
Etkin bir Logic Apps kaynağı (mantıksal uygulama) veya kullanmak istediğiniz tetikleyiciyle birlikte boş bir mantıksal uygulama oluşturun. Şu anda Azure İletişim Hizmetleri SMS bağlayıcısı yalnızca eylemler sağladığından mantıksal uygulamanız en azından bir tetikleyici gerektirir.
Bu hızlı başlangıçta, Office 365 Outlook bağlayıcısı ile kullanılabilen Yeni bir e-posta geldiğinde tetikleyicisi kullanılır.
SMS özellikli bir telefon numarası, kısa kod veya alfasayısal gönderen kimliği. Bir telefon numarası alın.
Önemli
SMS ve PSTN özellikleri, kullandığınız telefon numarasına ve Azure fatura adresiniz tarafından belirlenen şekilde içinde çalıştığınız ülkeye/bölgeye bağlıdır. Daha fazla bilgi için Abonelik uygunluğu belgesini ziyaret edin.
SMS eylemi ekleme
Azure İletişim Hizmetleri SMS bağlayıcısını kullanarak SMS gönder eylemini iş akışınıza yeni bir adım olarak eklemek için Mantıksal Uygulama Tasarımcısı'nda mantıksal uygulama iş akışınız açıkken Azure portalında şu adımları izleyin:
Tasarımcıda, yeni eylemi eklemek istediğiniz adımın altında Yeni adım'ı seçin. Alternatif olarak, adımlar arasına yeni eylem eklemek için işaretçinizi bu adımlar arasındaki okun üzerine getirin, artı işaretini ()+ seçin ve Eylem ekle'yi seçin.
Bir işlem seç arama kutusuna
Azure Communication Services
yazın. Eylemler listesinden SMS Gönder'i seçin.Şimdi İletişim Hizmetleri kaynağınıza bir bağlantı oluşturun.
Aynı abonelik içinde:
Bağlantı için bir ad belirtin.
Azure İletişim Hizmetleri kaynağınızı seçin.
Oluştur'u belirleyin.
İletişim Hizmetleri kaynağınızdaki bağlantı dizesi kullanarak:
Bağlantı için bir ad belirtin.
Açılan seçeneklerden ConnectionString Kimlik Doğrulaması'nı seçin.
İletişim Hizmetleri kaynağınızın bağlantı dizesi girin.
Oluştur'u belirleyin.
Hizmet Sorumlusunu Kullanma (Hizmet Sorumlusu Oluşturma bölümüne bakın):
Bağlantı için bir ad belirtin.
Açılan seçeneklerden hizmet sorumlusu (Microsoft Entra uygulaması) doğrulamasını seçin.
Hizmet Sorumlunuzun Kiracı Kimliği, İstemci Kimliği ve İstemci Gizli Anahtarı değerlerini girin.
İletişim Hizmetleri kaynağınızın İletişim Hizmetleri Uç Noktası URL değerini girin.
Oluştur'u belirleyin.
SMS Gönder eyleminde aşağıdaki bilgileri sağlayın:
Kaynak ve hedef telefon numaraları. Test amacıyla, hedef telefon numarası olarak kendi telefon numaranızı kullanabilirsiniz.
Göndermek istediğiniz ileti içeriği, örneğin, "Logic Apps'ten Merhaba!".
Örnek bilgiler içeren BIR SMS Gönder eylemi aşağıda verilmiştir:
İşlemi tamamladığınızda tasarımcı araç çubuğunda Kaydet'i seçin.
Ardından test için iş akışınızı çalıştırın.
İş akışınızı test etme
İş akışınızı el ile başlatmak için tasarımcı araç çubuğunda Çalıştır'ı seçin. Ya da tetikleyicinin çalışmasını bekleyebilirsiniz. Her iki durumda da iş akışının belirtilen hedef telefon numaranıza bir SMS iletisi göndermesi gerekir. Daha fazla bilgi için iş akışınızı çalıştırmayı gözden geçirin.
İş akışı kaynaklarını temizleme
Mantıksal uygulama iş akışınızı ve ilgili kaynakları temizlemek için Logic Apps kaynaklarını temizlemeyi gözden geçirin.
Sorun giderme
SMS teslimiyle ilgili sorunları gidermek için, teslim ayrıntılarını yakalamak için Event Grid ile teslim bildirimini etkinleştirebilirsiniz.
Kaynakları temizleme
İletişim Hizmetleri aboneliğini temizlemek ve kaldırmak istiyorsanız, kaynağı veya kaynak grubunu silebilirsiniz. Kaynak grubunun silinmesi, kaynak grubuyla ilişkili diğer tüm kaynakları da siler. Kaynakları temizleme hakkında daha fazla bilgi edinin.
Ücretsiz doğrulama
SMS mesajları göndermek için yeni bir ücretsiz numara kullanmak için ücretsiz doğrulama işlemini tamamlamanız gerekir. Ücretsiz numaranızın doğrulamasını nasıl tamamlayacağınızla ilgili rehberlik için ücretsiz doğrulama göndermeye yönelik hızlı başlangıç kılavuzuna bakın. Yalnızca tam olarak doğrulanmış ücretsiz numaralar SMS trafiği gönderme yetkisine sahip. ABD ve CA telefon numaralarına yönlendirilen, uygun olmayan ücretsiz numaralardan gelen sms trafiği engellenir.
Sonraki adımlar
Bu makalede, Azure İletişim Hizmetleri'ni kullanarak SMS iletileri gönderme açıklanmıştır.