إرسال رسالة SMS
هام
تعتمد قدرات الرسائل القصيرة على رقم الهاتف الذي تستخدمه والبلد/المنطقة التي تعمل داخلها كما يحددها عنوان فوترة Azure. لمزيد من المعلومات، راجع أهلية الاشتراك.
ابدأ مع Azure Communication Services باستخدام وحدة الاتصال في Azure CLI لإرسال رسائل SMS.
يتطلب إكمال هذا التشغيل السريع تكلفة صغيرة تبلغ بضعة سنتات أمريكية أو أقل في حساب Azure الخاص بك.
المتطلبات الأساسية
- حساب Azure مع اشتراك نشط. أنشئ حساباً مجاناً.
- مورد "خدمات الاتصال" النشطة وسلسلة الاتصال. إنشاء مورد Communication Services
- رقم هاتف مزود برسائل SMS أو رمز قصير أو معرف مرسل أبجدي رقمي. الحصول على رقم هاتف.
- أحدث إصدار من Azure CLI لنظام التشغيل الخاص بك.
التحقق من المتطلبات الأساسية
- في نافذة طرفية أو نافذة أوامر، قم بتشغيل
az --version
للتحقق من تثبيت Azure CLI.
الإعداد
تثبيت وحدة الاتصال
قم بتشغيل الأمر التالي في محطة طرفية أو نافذة أوامر لتثبيت وحدة الاتصال.
az extension add --name communication
تسجيل الدخول إلى واجهة سطر الأوامر Azure
ستحتاج إلى تسجيل الدخول إلى Azure CLI. يمكنك تسجيل الدخول لتشغيل az login
الأمر من المحطة الطرفية وتوفير بيانات الاعتماد الخاصة بك.
تأكد من استخدام الاشتراك الصحيح
إذا كان لديك اشتراكات متعددة في حسابك، فتأكد من أنك تستخدم الاشتراك الصحيح لهذا البرنامج التعليمي.
في نافذة طرفية أو أوامر، قم بتشغيل الأمر التالي للتحقق من الاشتراك الحالي.
az account show
إذا كنت بحاجة إلى تغيير الاشتراك، يمكنك القيام بذلك عن طريق تشغيل الأمر التالي.
az account set --subscription "<yourSubscriptionId>"
تحتاج إلى استبدال <yourSubscriptionId>
بمعرف الاشتراك الفعلي، والذي يمكنك العثور عليه في قسم الاشتراكات في مدخل Microsoft Azure.
(اختياري) استخدام عمليات الرسائل القصيرة ل Azure CLI دون المرور في سلسلة الاتصال
يمكنك تكوين AZURE_COMMUNICATION_CONNECTION_STRING
متغير البيئة لاستخدام عمليات الرسائل القصيرة ل Azure CLI دون الحاجة إلى استخدام --connection_string
لتمرير سلسلة الاتصال. لتكوين متغير بيئة، افتح إطار وحدة التحكم وحدد نظام التشغيل من علامات التبويب أدناه. استبدل <yourConnectionString>
بسلسلة الاتصال الفعلية الخاصة بك.
افتح إطار وحدة التحكم وأدخل الأمر التالي:
setx AZURE_COMMUNICATION_CONNECTION_STRING "<yourConnectionString>"
بعد إضافة متغير البيئة، قد تحتاج إلى إعادة تشغيل أي برامج قيد التشغيل ستحتاج إلى قراءة متغير البيئة، بما في ذلك إطار وحدة التحكم. على سبيل المثال، إذا كنت تستخدم Visual Studio كمحرر، فعد تشغيل Visual Studio قبل تشغيل المثال.
العمليات
إرسال رسالة نصية قصيرة 1:1
لإرسال رسالة SMS إلى مستلم واحد، اتصل بالأسلوب send
من وحدة الرسائل القصيرة برقم هاتف مستلم واحد.
az communication sms send --sender "<fromPhoneNumber>" --recipient "<toPhoneNumber>" --message "Hello world via SMS for Azure CLI!" --connection-string "<yourConnectionString>"
قم بإجراء هذه الاستبدالات في التعليمات البرمجية:
- استبدل
<fromPhoneNumber>
برقم هاتف ممكن بواسطة رسالة نصية قصيرة مقترن بمورد Communication Services. - استبدل
<toPhoneNumber>
برقم هاتف تريد إرسال رسالة إليه. - استبدل
<yourConnectionString>
سلسلة الاتصال الخاص بك.
تحذير
قم بتوفير أرقام الهواتف بتنسيق E.164 القياسي الدولي، على سبيل المثال، +14255550123. يمكن أن تكون قيمة <fromPhoneNumber>
أيضا رمزا قصيرا، على سبيل المثال، 23456 أو معرف مرسل أبجدي رقمي، على سبيل المثال، CONTOSO.
إرسال رسالة SMS 1:N
لإرسال رسالة SMS إلى قائمة المستلمين، اتصل بالأسلوب send
من وحدة الرسائل القصيرة مع أرقام هواتف متعددة للمستلمين.
az communication sms send --sender "<fromPhoneNumber>" --recipient "<toPhoneNumber1>" "<toPhoneNumber2>" "<toPhoneNumber3>" --message "Hello world via SMS for Azure CLI!" --connection-string "<yourConnectionString>"
قم بإجراء هذه الاستبدالات في التعليمات البرمجية:
- استبدل
<fromPhoneNumber>
برقم هاتف ممكن بواسطة رسالة نصية قصيرة مقترن بمورد Communication Services. - استبدل
<toPhoneNumberN>
برقم الهاتف N'th الذي تريد إرسال رسالة إليه. - استبدل
<yourConnectionString>
سلسلة الاتصال الخاص بك.
تحذير
قم بتوفير أرقام الهواتف بتنسيق E.164 القياسي الدولي، على سبيل المثال، +14255550123. يمكن أن تكون قيمة <fromPhoneNumber>
أيضا رمزا قصيرا، على سبيل المثال، 23456 أو معرف مرسل أبجدي رقمي، على سبيل المثال، CONTOSO.
ابدأ العمل مع Azure Communication Services باستخدام Communication Services C# SMS SDK لإرسال رسائل نصية قصيرة.
يتطلب إكمال هذا التشغيل السريع تكلفة صغيرة تبلغ بضعة سنتات أمريكية أو أقل في حساب Azure الخاص بك.
إشعار
ابحث عن التعليمات البرمجية النهائية لهذا البداية السريعة في GitHub.
المتطلبات الأساسية
- حساب Azure مع اشتراك نشط. أنشئ حساباً مجاناً.
- أحدث إصدار من .NET Core SDK لنظام التشغيل الخاص بك.
- مورد "خدمات الاتصال" النشطة وسلسلة الاتصال. إنشاء مورد Communication Services
- رقم هاتف مزود برسائل SMS أو رمز قصير أو معرف مرسل أبجدي رقمي. الحصول على رقم هاتف.
التحقق من المتطلبات الأساسية
- في النافذة الطرفية أو الأمر، تشغيل
dotnet
الأمر للتحقق من تثبيت NET SDK. - لعرض أرقام الهواتف المقترنة بمورد Communication Services، سجل الدخول إلى مدخل Microsoft Azure وحدد موقع مورد Communication Services. في جزء التنقل على اليسار، حدد أرقام الهواتف.
إعداد بيئة التطبيق
لإعداد بيئة لإرسال الرسائل، اتبع الخطوات الواردة في الأقسام التالية.
إنشاء تطبيق C# جديد
في نافذة وحدة التحكم، مثل cmd أو PowerShell أو Bash، استخدم الأمر
dotnet new
لإنشاء تطبيق وحدة تحكم جديد بالاسمSmsQuickstart
. يُنشئ هذا الأمر مشروع "مرحباً بالعالم" C# بسيطاً مع مصدر ملف واحد، Program.cs.dotnet new console -o SmsQuickstart
قم بتغيير الدليل الخاص بك إلى مجلد التطبيق الذي تم إنشاؤه حديثًا، واستخدم الأمر
dotnet build
للتحويل البرمجي لتطبيقك.cd SmsQuickstart dotnet build
تثبيت الحزمة
أثناء الاستمرار في دليل التطبيق، قم بتثبيت Azure Communication Services SMS SDK لحزمة .NET باستخدام الأمر التالي.
dotnet add package Azure.Communication.Sms --version 1.0.0
أضف توجيه
using
إلى أعلى Program.cs لتضمين مساحة اسمAzure.Communication
.using System; using System.Collections.Generic; using Azure; using Azure.Communication; using Azure.Communication.Sms;
نموذج الكائن
تتعامل الفئات والواجهات التالية مع بعض الميزات الرئيسية لـ Azure Communication Services SMS SDK for C#.
Name | الوصف |
---|---|
SmsClient | هذه الفئة مطلوبة لجميع وظائف الرسائل النصية القصيرة. إنشاء مثيل مع معلومات الاشتراك الخاص بك، واستخدامها لإرسال الرسائل النصية القصيرة. |
SmsSendOptions | توفر هذه الفئة خيارات لتكوين تقارير التسليم. إذا تم تعيين enable_delivery_report إلى True، يتم إصدار حدث عند نجاح التسليم. |
SmsSendResult | تحتوي هذه الفئة على النتيجة من خدمة SMS. |
مصادقة العميل
افتح Program.cs في محرر النصوص، واستبدل نص الأسلوب Main
مع التعليمات البرمجية لتهيئة SmsClient
مع سلسلة الاتصال. تسترد التعليمات البرمجية التالية سلسلة الاتصال للمورد من متغير بيئة يسمى COMMUNICATION_SERVICES_CONNECTION_STRING
. تعرف على كيفية إدارة سلسلة اتصال الموارد خاصتك.
// 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
لإرسال رسالة نصية قصيرة إلى مستلم واحد، استدع الدالة Send
أو SendAsync
من SmsClient. أضف هذه التعليمة البرمجية Main
إلى نهاية الأسلوب في Program.cs:
SmsSendResult sendResult = smsClient.Send(
from: "<from-phone-number>",
to: "<to-phone-number>",
message: "Hello World via SMS"
);
Console.WriteLine($"Sms id: {sendResult.MessageId}");
قم بإجراء هذه الاستبدالات في التعليمات البرمجية:
- استبدل
<from-phone-number>
برقم هاتف ممكن بواسطة رسالة نصية قصيرة مقترن بمورد Communication Services. - استبدل
<to-phone-number>
برقم الهاتف الذي تريد إرسال رسالة إليه.
تحذير
قم بتوفير أرقام الهواتف بتنسيق E.164 القياسي الدولي، على سبيل المثال، +14255550123. يمكن أن تكون قيمة <from-phone-number>
أيضا رمزا قصيرا، على سبيل المثال، 23456 أو معرف مرسل أبجدي رقمي، على سبيل المثال، CONTOSO.
إرسال رسالة نصية قصيرة 1:N مع خيارات
لإرسال رسالة SMS إلى قائمة المستلمين، اتصل بالدالة Send
أو SendAsync
من SmsClient مع قائمة بأرقام هواتف المستلمين. يمكنك أيضا توفير معلمات اختيارية لتحديد ما إذا كان يجب تمكين تقرير التسليم وتعيين علامات مخصصة.
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}");
}
قم بإجراء هذه الاستبدالات في التعليمات البرمجية:
- استبدل
<from-phone-number>
برقم هاتف ممكن بواسطة رسالة نصية قصيرة مقترن بمورد Communication Services. - استبدل
<to-phone-number-1>
و<to-phone-number-2>
بأرقام الهواتف التي تريد إرسال رسالة إليها.
تحذير
قم بتوفير أرقام الهواتف بتنسيق E.164 القياسي الدولي، على سبيل المثال، +14255550123. يمكن أن تكون قيمة <from-phone-number>
أيضا رمزا قصيرا، على سبيل المثال، 23456 أو معرف مرسل أبجدي رقمي، على سبيل المثال، CONTOSO.
enableDeliveryReport
المعلمة هي معلمة اختيارية يمكنك استخدامها لتكوين تقارير التسليم. هذه الوظيفة مفيدة عندما تريد إرسال أحداث عند تسليم رسائل SMS.
راجع التشغيل السريع معالجة أحداث SMS لتكوين تقارير التسليم لرسائل SMS الخاصة بك.
يمكنك استخدام المعلمة Tag
لتطبيق علامة على تقرير التسليم.
تشغيل التعليمات البرمجية
شغّل التطبيق من دليل تطبيقك باستخدام الأمر dotnet run
.
dotnet run
التعليمة البرمجية العينة
يمكنك تنزيل التطبيق العينة من GitHub.
ابدأ مع Azure Communication Services باستخدام Communication Services JavaScript SMS SDK لإرسال رسائل نصية قصيرة.
يتطلب إكمال هذا التشغيل السريع تكلفة صغيرة تبلغ بضعة سنتات أمريكية أو أقل في حساب Azure الخاص بك.
إشعار
ابحث عن التعليمات البرمجية النهائية لهذا البداية السريعة في GitHub.
المتطلبات الأساسية
- حساب Azure مع اشتراك نشط. أنشئ حساباً مجاناً.
- Node.js يوصى بإصدارات LTS والصيانة النشطة (8.11.1 و10.14.1).
- مورد "خدمات الاتصال" النشطة وسلسلة الاتصال. إنشاء مورد Communication Services
- رقم هاتف مزود برسائل SMS أو رمز قصير أو معرف مرسل أبجدي رقمي. الحصول على رقم هاتف.
التحقق من المتطلبات الأساسية
- في نافذة طرفية أو نافذة أوامر، قم بتشغيل
node --version
للتحقق من تثبيت Node.js. - لعرض أرقام الهواتف المقترنة بمورد Communication Services، سجل الدخول إلى مدخل Microsoft Azure وحدد موقع مورد Communication Services. في جزء التنقل على اليسار، حدد أرقام الهواتف.
إعداد بيئة التطبيق
لإعداد بيئة لإرسال الرسائل، اتبع الخطوات الواردة في الأقسام التالية.
إنشاء تطبيق Node.js جديد
افتح المحطة الطرفية أو نافذة الأوامر، ثم قم بتشغيل الأمر التالي لإنشاء دليل جديد لتطبيقك والانتقال إليه.
mkdir sms-quickstart && cd sms-quickstart
قم بتشغيل الأمر التالي لإنشاء ملف package.json بإعدادات افتراضية.
npm init -y
استخدم محرر نص لإنشاء ملف يُسمى send-sms.js في الدليل الجذر للمشروع.
في الأقسام التالية، ستضيف جميع التعليمات البرمجية المصدر لهذا التشغيل السريع إلى ملف send-sms.js الذي قمت بإنشائه للتو.
تثبيت الحزمة
استخدم الأمر npm install
لتثبيت Azure Communication Services Calling SDK لـ JavaScript.
npm install @azure/communication-sms --save
يسرد الخيار --save
المكتبة كتبعية في ملف package.json.
نموذج الكائن
تتعامل الفئات والواجهات التالية مع بعض الميزات الرئيسية لـ Azure Communication Services SMS SDK لـ Node.js.
Name | الوصف |
---|---|
SmsClient | هذه الفئة مطلوبة لجميع وظائف الرسائل النصية القصيرة. إنشاء مثيل مع معلومات الاشتراك الخاص بك، واستخدامها لإرسال الرسائل النصية القصيرة. |
SmsSendRequest | هذه الواجهة هي نموذج لبناء طلب SMS. يمكنك استخدامه لتكوين من وإلى أرقام الهواتف ومحتوى الرسائل القصيرة. |
SmsSendOptions | توفر هذه الواجهة خيارات لتكوين تقارير التسليم. إذا enableDeliveryReport تم تعيين إلى true ، يتم إصدار حدث عند نجاح التسليم. |
SmsSendResult | تحتوي هذه الفئة على النتيجة من خدمة SMS. |
مصادقة العميل
لمصادقة عميل، يمكنك استيراد SmsClient من SDK وإنشاء مثيل له مع سلسلة الاتصال الخاص بك. يمكنك استرداد سلسلة الاتصال للمورد من متغير بيئة. على سبيل المثال، تسترد التعليمات البرمجية في هذا القسم سلسلة الاتصال من COMMUNICATION_SERVICES_CONNECTION_STRING
متغير البيئة. تعرف على كيفية إدارة سلسلة اتصال الموارد خاصتك.
لاستيراد العميل وإنشاء مثيل له:
إنشاء ملف باسم send-sms.js.
أضف التعليمات البرمجية التالية إلى send-sms.js.
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);
إرسال رسالة SMS 1:N
لإرسال رسالة SMS إلى قائمة المستلمين، اتصل بالدالة send
من SmsClient مع قائمة بأرقام هواتف المستلمين. إذا كنت ترغب في إرسال رسالة إلى مستلم واحد، فقم بتضمين رقم واحد فقط في القائمة. أضف هذه التعليمة البرمجية إلى نهاية send-sms.js:
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();
قم بإجراء هذه الاستبدالات في التعليمات البرمجية:
- استبدل
<from-phone-number>
برقم هاتف ممكن بواسطة رسالة نصية قصيرة مقترن بمورد Communication Services. - استبدل
<to-phone-number-1>
و<to-phone-number-2>
بأرقام الهواتف التي تريد إرسال رسالة إليها.
تحذير
قم بتوفير أرقام الهواتف بتنسيق E.164 القياسي الدولي، على سبيل المثال، +14255550123. يمكن أن تكون قيمة <from-phone-number>
أيضا رمزا قصيرا، على سبيل المثال، 23456 أو معرف مرسل أبجدي رقمي، على سبيل المثال، CONTOSO.
إرسال رسالة نصية قصيرة 1:N مع خيارات
يمكنك أيضا توفير عنصر خيارات لتحديد ما إذا كان يجب تمكين تقرير التسليم وتعيين علامات مخصصة.
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();
قم بإجراء هذه الاستبدالات في التعليمات البرمجية:
- استبدل
<from-phone-number>
برقم هاتف ممكن بواسطة رسالة نصية قصيرة مقترن بمورد Communication Services. - استبدل
<to-phone-number-1>
و<to-phone-number-2>
بأرقام الهواتف التي تريد إرسال رسالة إليها.
تحذير
قم بتوفير أرقام الهواتف بتنسيق E.164 القياسي الدولي، على سبيل المثال، +14255550123. يمكن أن تكون قيمة <from-phone-number>
أيضا رمزا قصيرا، على سبيل المثال، 23456 أو معرف مرسل أبجدي رقمي، على سبيل المثال، CONTOSO.
enableDeliveryReport
المعلمة هي معلمة اختيارية يمكنك استخدامها لتكوين تقارير التسليم. هذه الوظيفة مفيدة عندما تريد إرسال أحداث عند تسليم رسائل SMS.
راجع التشغيل السريع معالجة أحداث SMS لتكوين تقارير التسليم لرسائل SMS الخاصة بك.
المعلمة tag
اختيارية. يمكنك استخدامه لتطبيق علامة على تقرير التسليم.
تشغيل التعليمات البرمجية
node
استخدم الأمر لتشغيل التعليمات البرمجية التي أضفتها إلى ملف send-sms.js.
node ./send-sms.js
ابدأ باستخدام خدمات الاتصال Azure باستخدام SDK PYTHON SMS خدمات الاتصالات لإرسال رسائل SMS.
يتطلب إكمال هذا التشغيل السريع تكلفة صغيرة تبلغ بضعة سنتات أمريكية أو أقل في حساب Azure الخاص بك.
إشعار
ابحث عن التعليمات البرمجية النهائية لهذا البداية السريعة في GitHub.
المتطلبات الأساسية
- حساب Azure مع اشتراك نشط. أنشئ حساباً مجاناً.
- Python 3.7+.
- مورد "خدمات الاتصال" النشطة وسلسلة الاتصال. إنشاء مورد Communication Services
- رقم هاتف مزود برسائل SMS أو رمز قصير أو معرف مرسل أبجدي رقمي. الحصول على رقم هاتف.
التحقق من المتطلبات الأساسية
- في نافذة طرفية أو نافذة أوامر، قم بتشغيل
python --version
الأمر للتحقق من تثبيت Python. - لعرض أرقام الهواتف المقترنة بمورد Communication Services، سجل الدخول إلى مدخل Microsoft Azure وحدد موقع مورد Communication Services. في جزء التنقل على اليسار، حدد أرقام الهواتف.
إعداد بيئة التطبيق
لإعداد بيئة لإرسال الرسائل، اتبع الخطوات الواردة في الأقسام التالية.
إنشاء تطبيق Python جديد
افتح نافذة المحطة الطرفية أو نافذة الأوامر. ثم استخدم الأمر التالي لإنشاء دليل جديد لتطبيقك والانتقال إليه.
mkdir sms-quickstart && cd sms-quickstart
استخدم محرر نص لإنشاء ملف يسمى send-sms.py في الدليل الجذر للمشروع وإضافة بنية البرنامج، بما في ذلك معالجة الاستثناءات الأساسية.
import os from azure.communication.sms import SmsClient try: # Quickstart code goes here. except Exception as ex: print('Exception:') print(ex)
في الأقسام التالية، ستضيف جميع التعليمات البرمجية المصدر لهذا التشغيل السريع إلى ملف send-sms.py الذي قمت بإنشائه للتو.
تثبيت الحزمة
أثناء وجودك في دليل التطبيق، قم بتثبيت حزمة SDK SMS ل Azure Communication Services لحزمة Python باستخدام الأمر التالي.
pip install azure-communication-sms
نموذج الكائن
تتعامل الفئات والواجهات التالية مع بعض الميزات الرئيسية لـ Azure Communication Services Calling SDK:
Name | الوصف |
---|---|
SmsClient | هذه الفئة مطلوبة لجميع وظائف الرسائل النصية القصيرة. إنشاء مثيل مع معلومات الاشتراك الخاص بك، واستخدامها لإرسال الرسائل النصية القصيرة. |
SmsSendResult | تحتوي هذه الفئة على النتيجة من خدمة SMS. |
مصادقة العميل
إنشاء مثيل SmsClient مع سلسلة الاتصال الخاص بك. تعرف على كيفية إدارة سلسلة اتصال الموارد خاصتك.
# Create the SmsClient object that you use to send SMS messages.
sms_client = SmsClient.from_connection_string(<connection_string>)
للتبسيط، يستخدم هذا التشغيل السريع سلسلة الاتصال، ولكن في بيئات الإنتاج، نوصي باستخدام كيانات الخدمة.
إرسال رسالة نصية قصيرة 1:1
لإرسال رسالة SMS إلى مستلم واحد، اتصل بالأسلوب send
من SmsClient برقم هاتف مستلم واحد. يمكنك أيضا توفير معلمات اختيارية لتحديد ما إذا كان يجب تمكين تقرير التسليم وتعيين علامات مخصصة. أضف هذه التعليمة البرمجية try
إلى نهاية الكتلة في send-sms.py:
# 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
قم بإجراء هذه الاستبدالات في التعليمات البرمجية:
- استبدل
<from-phone-number>
برقم هاتف مزود برسائل SMS مرتبط بخدمة الاتصال الخاصة بك. - استبدل
<to-phone-number>
برقم الهاتف الذي تريد إرسال رسالة إليه.
تحذير
قم بتوفير أرقام الهواتف بتنسيق E.164 القياسي الدولي، على سبيل المثال، +14255550123. يمكن أن تكون قيمة <from-phone-number>
أيضا رمزا قصيرا، على سبيل المثال، 23456 أو معرف مرسل أبجدي رقمي، على سبيل المثال، CONTOSO.
إرسال رسالة SMS 1:N
لإرسال رسالة SMS إلى قائمة المستلمين، اتصل بالأسلوب send
من SmsClient مع قائمة بأرقام هواتف المستلمين. يمكنك أيضا توفير معلمات اختيارية لتحديد ما إذا كان يجب تمكين تقرير التسليم وتعيين علامات مخصصة. أضف هذه التعليمة البرمجية try
إلى نهاية الكتلة في send-sms.py:
# 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
قم بإجراء هذه الاستبدالات في التعليمات البرمجية:
- استبدل
<from-phone-number>
برقم هاتف مزود برسائل SMS مرتبط بخدمة الاتصال الخاصة بك. - استبدل
<to-phone-number-1>
و<to-phone-number-2>
بأرقام الهواتف التي تريد إرسال رسالة إليها.
تحذير
قم بتوفير أرقام الهواتف بتنسيق E.164 القياسي الدولي، على سبيل المثال، +14255550123. يمكن أن تكون قيمة <from-phone-number>
أيضا رمزا قصيرا، على سبيل المثال، 23456 أو معرف مرسل أبجدي رقمي، على سبيل المثال، CONTOSO.
تتمثل المعلمات الاختيارية في الآتي
enable_delivery_report
المعلمة هي معلمة اختيارية يمكنك استخدامها لتكوين تقارير التسليم. هذه الوظيفة مفيدة عندما تريد إرسال أحداث عند تسليم رسائل SMS.
راجع التشغيل السريع معالجة أحداث SMS لتكوين تقارير التسليم لرسائل SMS الخاصة بك.
tag
المعلمة هي معلمة اختيارية يمكنك استخدامها لتطبيق علامة على تقرير التسليم.
تشغيل التعليمات البرمجية
شغّل التطبيق من دليل تطبيقك باستخدام الأمر python
.
python send-sms.py
يجب أن يبدو البرنامج النصي Python الكامل شيئا مثل التعليمات البرمجية التالية:
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)
ابدأ مع Azure Communication Services باستخدام Communication Services Java SMS SDK لإرسال رسائل نصية قصيرة.
يتطلب إكمال هذا التشغيل السريع تكلفة صغيرة تبلغ بضعة سنتات أمريكية أو أقل في حساب Azure الخاص بك.
إشعار
ابحث عن التعليمات البرمجية النهائية لهذا البداية السريعة في GitHub.
المتطلبات الأساسية
- حساب Azure مع اشتراك نشط. أنشئ حساباً مجاناً.
- Java Development Kit (JDK) الإصدار 8 أو أحدث.
- Apache Maven.
- مورد "خدمات الاتصال" النشطة وسلسلة الاتصال. إنشاء مورد Communication Services
- رقم هاتف مزود برسائل SMS أو رمز قصير أو معرف مرسل أبجدي رقمي. الحصول على رقم هاتف.
التحقق من المتطلبات الأساسية
- في نافذة طرفية أو نافذة أوامر، قم بتشغيل
mvn -v
للتحقق من تثبيت Maven. - لعرض أرقام الهواتف المقترنة بمورد Communication Services، سجل الدخول إلى مدخل Microsoft Azure وحدد موقع مورد Communication Services. في جزء التنقل على اليسار، حدد أرقام الهواتف.
إعداد بيئة التطبيق
لإعداد بيئة لإرسال الرسائل، اتبع الخطوات الواردة في الأقسام التالية.
إنشاء تطبيق Java جديد
افتح نافذة الأوامر أو terminal وانتقل إلى الدليل حيث ترغب في إنشاء تطبيق Java خاصتك. قم بتشغيل الأمر التالي لإنشاء مشروع Java من قالب maven-archetype-quickstart.
- موجه الأوامر
mvn archetype:generate -DgroupId=com.communication.quickstart -DartifactId=communication-quickstart -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DinteractiveMode=false
- بوويرشيل
mvn archetype:generate "-DgroupId=com.communication.quickstart" "-DartifactId=communication-quickstart" "-DarchetypeArtifactId=maven-archetype-quickstart" "-DarchetypeVersion=1.4" "-DinteractiveMode=false"
ينشئ generate
الهدف دليلا بنفس اسم artifactId
القيمة. ضمن هذا الدليل، يحتوي الدليل src/main/java على التعليمات البرمجية لمصدر المشروع، ويحتوي الدليل src/test/java على مصدر الاختبار، والملف pom.xml هو نموذج كائن المشروع (POM).
تثبيت الحزمة
افتح ملف pom.xml في محرر النص. أضف عنصر التبعية التالي إلى مجموعة التبعيات.
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-communication-sms</artifactId>
<version>1.0.1</version>
</dependency>
إعداد إطار عمل التطبيق
افتح /src/main/java/com/communication/quickstart/App.java في محرر نصوص، وأضف توجيهات الاستيراد، وأزل العبارة System.out.println("Hello world!");
:
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.
}
}
نموذج الكائن
تتعامل الفئات والواجهات التالية مع بعض الميزات الرئيسية لـ Azure Communication Services SMS SDK for Java.
Name | الوصف |
---|---|
SmsClientBuilder | تنشئ هذه الفئة SmsClient. يمكنك تزويده بنقطة نهاية وبيانات اعتماد وعميل HTTP. |
SmsClient | هذه الفئة مطلوبة لجميع وظائف الرسائل النصية القصيرة. يمكنك استخدامه لإرسال رسائل نصية قصيرة. |
SmsSendOptions | توفر هذه الفئة خيارات لإضافة علامات مخصصة وتكوين تقارير التسليم. إذا تم تعيين deliveryReportEnabled إلى true، يتم إصدار حدث عند نجاح التسليم. |
SmsSendResult | تحتوي هذه الفئة على النتيجة من خدمة SMS. |
مصادقة العميل
لمصادقة عميل، يمكنك إنشاء SmsClient
مثيل مع سلسلة الاتصال. للحصول على بيانات الاعتماد، استخدم Key
من مدخل Microsoft Azure. تعرف على كيفية إدارة سلسلة اتصال الموارد خاصتك. يمكنك أيضا تهيئة العميل مع أي عميل HTTP مخصص ينفذ الواجهة com.azure.core.http.HttpClient
.
لإنشاء مثيل عميل، أضف التعليمات البرمجية main
التالية إلى الأسلوب :
// 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();
يمكنك أيضا توفير سلسلة الاتصال بالكامل باستخدام الدالة connectionString
بدلا من توفير نقطة النهاية ومفتاح الوصول.
// 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
لإرسال رسالة نصية قصيرة إلى مستلم واحد، استدعِ الأسلوب send
من SmsClient مع رقم هاتف مستلم واحد. يمكنك أيضا توفير معلمات اختيارية لتحديد ما إذا كان يجب تمكين تقرير التسليم وتعيين علامات مخصصة.
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());
قم بإجراء هذه الاستبدالات في التعليمات البرمجية:
- استبدل
<from-phone-number>
برقم هاتف ممكن بواسطة رسالة نصية قصيرة مقترن بمورد Communication Services. - استبدل
<to-phone-number>
برقم هاتف تريد إرسال رسالة إليه.
تحذير
قم بتوفير أرقام الهواتف بتنسيق E.164 القياسي الدولي، على سبيل المثال، +14255550123. يمكن أن تكون قيمة <from-phone-number>
أيضا رمزا قصيرا، على سبيل المثال، 23456 أو معرف مرسل أبجدي رقمي، على سبيل المثال، CONTOSO.
إرسال رسالة نصية قصيرة 1:N مع خيارات
لإرسال رسالة نصية قصيرة إلى قائمة من المستلمين، استدعِ الأسلوب send
مع قائمة بأرقام هواتف المستلمين. يمكنك أيضا توفير معلمات اختيارية لتحديد ما إذا كان يجب تمكين تقرير التسليم وتعيين علامات مخصصة.
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());
}
قم بإجراء هذه الاستبدالات في التعليمات البرمجية:
- استبدال
<from-phone-number>
برقم هاتف ممكن بواسطة رسالة نصية قصيرة مقترن بمورد Communication Services - استبدل
<to-phone-number-1>
و<to-phone-number-2>
بأرقام الهواتف التي تريد إرسال رسالة إليها.
تحذير
قم بتوفير أرقام الهواتف بتنسيق E.164 القياسي الدولي، على سبيل المثال، +14255550123. يمكن أن تكون قيمة <from-phone-number>
أيضا رمزا قصيرا، على سبيل المثال، 23456 أو معرف مرسل أبجدي رقمي، على سبيل المثال، CONTOSO.
setDeliveryReportEnabled
يتم استخدام الأسلوب لتكوين تقارير التسليم. هذه الوظيفة مفيدة عندما تريد إرسال أحداث عند تسليم رسائل SMS.
راجع التشغيل السريع معالجة أحداث SMS لتكوين تقارير التسليم لرسائل SMS الخاصة بك.
يمكنك استخدام setTag
الأسلوب لتطبيق علامة على تقرير التسليم.
تشغيل التعليمات البرمجية
انتقل إلى الدليل الذي يحتوي على ملف pom.xml وقم بتحويل المشروع برمجيا باستخدام
mvn
الأمر .mvn compile
إنشاء الحزمة.
mvn package
قم بتشغيل الأمر التالي
mvn
لتنفيذ التطبيق.- موجه الأوامر
mvn exec:java -Dexec.mainClass="com.communication.quickstart.App" -Dexec.cleanupDaemonThreads=false
- بوويرشيل
mvn exec:java "-Dexec.mainClass=com.communication.quickstart.App" "-Dexec.cleanupDaemonThreads=false"
باستخدام موصل SMS خدمات الاتصالات Azure وتطبيقات المنطق Azure، يمكنك إنشاء سير العمل التلقائي الذي يمكن إرسال رسائل SMS. يوضح هذا البدء السريع كيفية إرسال رسائل نصية تلقائيًا استجابةً لحدث المشغل، وهو الخطوة الأولى في سير عمل تطبيق منطقي. يمكن أن يكون حدث المشغل رسالة بريد إلكتروني واردة أو جدول تكرار أو حدث مورد Azure Event Grid أو أي مشغل آخر معتمد من قِبل Azure Logic Apps.
على الرغم من أن هذا البدء السريع يركز على استخدام الموصل للاستجابة إلى مشغل، يمكنك أيضًا استخدام الموصل للاستجابة لإجراءات أخرى، وهي الخطوات التي تتبع المشغل في سير العمل. إذا كنت جديدًا على Logic Apps، فراجع ما هي تطبيقات المنطق Azure قبل البدء.
إشعار
يتطلب إكمال هذا التشغيل السريع تكلفة صغيرة تبلغ بضعة سنتات أمريكية أو أقل في حساب Azure الخاص بك.
المتطلبات الأساسية
حساب Azure باشتراك نشط - أنشئ حساب Azure مجانًا
مورد خدمات اتصالات Azure نشط، أو قم بإنشاء مورد خدمات الاتصال .
مورد Logic Apps نشط (تطبيق منطقي)، أو إنشاء تطبيق منطق فارغ ولكن مع المشغل الذي تريد استخدامه. حاليًا، يوفر موصل SMS خدمات الاتصالات Azure الإجراءات فقط، لذلك يتطلب التطبيق المنطق مشغلاً، على الأقل.
يستخدم هذا البدء السريع عند وصول بريد إلكتروني جديد المشغل، والذي يتوفر مع موصل Office 365 Outlook.
رقم هاتف مزود برسائل SMS أو رمز قصير أو معرف مرسل أبجدي رقمي. الحصول على رقم هاتف.
هام
تعتمد قدرات SMS وPSTN على رقم الهاتف الذي تستخدمه والبلد/المنطقة التي تعمل فيها كما هو محدد بواسطة عنوان فوترة Azure الخاص بك. لمزيد من المعلومات، تفضل بزيارة وثائق أهلية الاشتراك.
أضف إجراء SMS
لإضافة الإجراء إرسال SMS كخطوة جديدة في سير العمل الخاص بك باستخدام موصل SMS خدمات الاتصالات Azure اتبع الخطوات التالية في المدخل Azure مع سير العمل التطبيق المنطق فتح في مصمم التطبيق المنطق:
على المصمم، ضمن الخطوة التي تريد إضافة الإجراء الجديد إليها، حدد خطوة جديدة. بدلاً من ذلك، لإضافة الإجراء الجديد بين الخطوات، قم بتحريك المؤشر فوق السهم بين هاتين الخطوتين، وحدد علامة الجمع ( + )، وحدد Add an action.
في مربع اختيار عملية البحث، أدخل
Azure Communication Services
. من قائمة الإجراءات، حدد Send SMS.الآن قم بإنشاء اتصال بمورد خدمات الاتصال الخاص بك.
ضمن نفس الاشتراك:
أدخل اسمًا للاتصال.
حدد مورد خدمات الاتصال في Azure.
حدد إنشاء.
باستخدام سلسلة الاتصال من مورد خدمات الاتصال الخاص بك:
أدخل اسمًا للاتصال.
حدد ConnectionString Authentication من خيارات القائمة المنسدلة.
أدخل سلسلة الاتصال الخاصة بمورد خدمات الاتصال.
حدد إنشاء.
استخدام خدمة رئيسية (الرجوع إلى إنشاء الخدمات الرئيسية):
أدخل اسمًا للاتصال.
حدد Service principal (تطبيق Microsoft Entra) Authentication من خيارات القائمة المنسدلة.
أدخل معرف المستأجر معرف العميل والعميل السري الخاص بك الخدمة الرئيسية.
أدخل قيمة URL نقطة نهاية خدمات الاتصالات لمورد خدمات الاتصال.
حدد إنشاء.
في إجراء Send SMS، قم بتوفير المعلومات التالية:
أرقام هواتف المصدر والوجهة. لأغراض الاختبار، يمكنك استخدام رقم هاتفك كرقم هاتف الوجهة.
محتوى الرسالة الذي تريد إرساله، على سبيل المثال، "مرحبًا من Logic Apps!".
إليك إجراء Send SMS تتضمن معلومات عن المثال:
عند الانتهاء، على شريط أدوات المصمم، حدد Save.
بعد ذلك، قم بتشغيل سير العمل للاختبار.
اختبار سير العمل
لبدء سير العمل يدويًا، في شريط أدوات المصمم، حدد Run. أو يمكنك انتظار إطلاق الزناد. في كلتا الحالتين، يجب أن يرسل سير العمل رسالة SMS إلى رقم هاتف الوجهة المحدد. لمزيد من المعلومات، راجع كيفية تشغيل سير العمل.
تنظيف موارد سير العمل
لتنظيف سير عمل تطبيق المنطق والموارد ذات الصلة، راجع كيفية تنظيف موارد Logic Apps.
استكشاف الأخطاء وإصلاحها
لاستكشاف المشكلات المتعلقة بتسليم الرسائل القصيرة وإصلاحها، يمكنك تمكين تقارير التسليم باستخدام Event Grid لالتقاط تفاصيل التسليم.
تنظيف الموارد
إذا كنت ترغب في تنظيف وإزالة اشتراك Communication Services، يمكنك حذف المورد أو مجموعة الموارد. يؤدي حذف مجموعة الموارد إلى حذف أية موارد أخرى مقترنة بها أيضًا. تعرّف على المزيد حول تنظيف الموارد.
التحقق المجاني
لاستخدام رقم مجاني جديد لإرسال رسائل SMS، يجب إكمال عملية التحقق المجانية. للحصول على إرشادات حول كيفية إكمال التحقق من رقمك المجاني، راجع التشغيل السريع لإرسال التحقق المجاني. يتم التصريح فقط للأرقام المجانية التي تم التحقق منها بالكامل بإرسال حركة مرور SMS. يتم حظر أي حركة مرور SMS من أرقام مجانية لم يتم التحقق منها موجهة إلى أرقام هواتف الولايات المتحدة و CA.
الخطوات التالية
في هذه البداية السريعة، تعلمت كيفية إرسال رسائل SMS باستخدام Azure Communication Services.