البرنامج التعليمي: إنشاء مهام سير العمل التي تعالج رسائل البريد الإلكتروني باستخدام Azure Logic Apps وAzure Functions وAzure Storage
التطبيق على:Azure Logic Apps (Consumption)
يوضح هذا البرنامج التعليمي كيفية إنشاء سير عمل مثال يدمج Azure Functions وAzure Storage باستخدام Azure Logic Apps. ينشئ هذا المثال على وجه التحديد سير عمل تطبيق منطق الاستهلاك الذي يعالج رسائل البريد الإلكتروني الواردة وأي مرفقات، ويحلل محتوى البريد الإلكتروني باستخدام Azure Functions، ويحفظ المحتوى في تخزين Azure، ويرسل بريدا إلكترونيا لمراجعة المحتوى.
عند الانتهاء، يبدو سير العمل الخاص بك مثل المثال التالي عالي المستوى:
تلميح
لمعرفة المزيد، يمكنك طرح الأسئلة التالية على Azure Copilot:
- ما هي Azure Logic Apps؟
- ما هي Azure Functions؟
- ما هو Azure Storage؟
- ما هو سير عمل تطبيق منطق الاستهلاك؟
للعثور على Azure Copilot، في شريط أدوات مدخل Microsoft Azure، حدد Copilot.
يمكنك إنشاء سير عمل مشابه باستخدام مورد تطبيق منطقي قياسي حيث تتوفر أيضا بعض عمليات الموصل، مثل Azure Blob Storage، ك العمليات المضمنة المستندة إلى موفر الخدمة. ومع ذلك، تختلف تجربة المستخدم وخطوات البرنامج التعليمي قليلا عن إصدار Consumption.
المتطلبات الأساسية
حساب واشتراك Azure. إذا لم يكن لديك اشتراك، فيجب التسجيل للحصول على حساب Azure مجاني.
حساب بريد إلكتروني من موفر بريد إلكتروني مدعوم من Azure Logic Apps، مثل Office 365 Outlook أو Outlook.com أو Gmail. بالنسبة لموفري البريد الإلكتروني الآخرين المدعومين، راجع الموصلات ل Azure Logic Apps.
يستخدم هذا المثال Office 365 Outlook مع حساب العمل أو المؤسسة التعليمية. إذا كنت تستخدم حساب بريد إلكتروني مختلفا، فستظل الخطوات العامة كما هي، ولكن قد تختلف تجربة المستخدم قليلا. إذا كنت تستخدم Outlook.com، فاستخدم حساب Microsoft الشخصي بدلا من ذلك لتسجيل الدخول.
إشعار
إذا كنت ترغب في استخدام موصل Gmail، يمكن لحسابات الأعمال G-Suite فقط استخدام هذا الرابط دون قيود في سير عمل تطبيقات المنطق. إذا كان لديك حساب عميل Gmail، يمكنك استخدام هذا الرابط مع خدمات معينة معتمدة من Google فقط، أو يمكنك إنشاء تطبيق عميل Google لاستخدامه للمصادقة باستخدام موصل Gmail. لمزيد من المعلومات، يرجى مراجعة سياسات أمان البيانات والخصوصية لموصلات Google في تطبيقات Azure Logic.
تحميل وتثبيت Microsoft Azure Storage Explorer المجاني. تساعدك هذه الأداة في التحقق من إعداد حاوية التخزين بشكل صحيح.
إذا كان سير العمل يحتاج إلى الاتصال عبر جدار حماية يحد من نسبة استخدام الشبكة لعناوين IP محددة، فيجب أن يسمح جدار الحماية هذا بالوصول إلى عناوين IP الواردة و الصادرة مستخدمة بواسطة تطبيقات Azure Logic في منطقة Azure حيث يوجد تطبيق المنطق الخاص بك. إذا كان سير العمل يستخدم أيضا موصلات مدارة، مثل موصل Office 365 Outlook أو موصل SQL، أو يستخدم موصلات مخصصة، فسيحتاج جدار الحماية أيضا إلى السماح بالوصول إلى جميع عناوين IP الصادرة للموصل المدار في منطقة Azure لتطبيق المنطق.
إعداد مساحة تخزين لحفظ المرفقات
تقوم الخطوات التالية بإعداد تخزين Azure بحيث يمكنك تخزين رسائل البريد الإلكتروني والمرفقات الواردة ككائنات ثنائية كبيرة الحجم.
في مدخل Microsoft Azure، سجل الدخول باستخدام بيانات اعتماد حساب Azure.
اتبع هذه الخطوات لإنشاء حساب تخزين ما لم يكن لديك حساب بالفعل.
في علامة التبويب Basics ، قم بتوفير المعلومات التالية:
الخاصية المطلوب قيمة الوصف الاشتراك نعم <"Azure-subscription-name"> اسم اشتراك Azure خاصتك.
يستخدم هذا المثال الدفع أولًا بأول.مجموعة الموارد نعم <مجموعة موارد Azure> اسم مجموعة موارد Azure المستخدمة لتنظيم الموارد ذات الصلة وإدارتها.
ملاحظة: توجد مجموعة موارد داخل منطقة معينة. على الرغم من أن العناصر الموجودة في هذا البرنامج التعليمي قد لا تكون متوفرة في جميع المناطق، حاول استخدام نفس المنطقة عند الإمكان.
يستخدم هذا المثال LA-Tutorial-RG.Storage account name نعم <اسم حساب تخزين Azure> اسم حساب التخزين الفريد الخاص بك، والذي يجب أن يحتوي على 3-24 حرفا ويمكن أن يحتوي على أحرف صغيرة وأرقام فقط.
يستخدم هذا المثال attachmentstorageacct.المنطقة نعم <تحديد منطقة Azure> منطقة بيانات Azure لحساب التخزين الخاص بك.
يستخدم هذا المثال غرب الولايات المتحدة.الخدمة الأساسية لا <خدمة تخزين Azure> نوع التخزين الأساسي لاستخدامه في حساب التخزين الخاص بك. راجع خيارات المراجعة لتخزين البيانات في Azure. اداء نعم - قياسي
- قسطيحدد هذا الإعداد أنواع البيانات المعتمدة ووسائط تخزين البيانات. راجع نظرة عامة على حساب التخزين.
يستخدم هذا المثال Standard.التكرار نعم - التخزين المتكرر محليا
- التخزين المتكرر جغرافيا (GRS)يتيح هذا الإعداد تخزين نسخ متعددة من بياناتك كحماية من الأحداث المخطط لها وغير المخطط لها. لمزيد من المعلومات، راجع تكرار Azure Storage.
يستخدم هذا المثال التخزين الجغرافي المتكرر (GRS).لإنشاء حساب تخزين، يمكنك أيضًا استخدام Azure PowerShell أو Azure CLI.
عندما تكون مستعدا، حدد Review + create. بعد أن يتحقق Azure من صحة المعلومات حول مورد حساب التخزين الخاص بك، حدد Create.
بعد أن ينشر Azure حساب التخزين الخاص بك، حدد Go to resource. أو ابحث عن حساب التخزين الخاص بك وحدده باستخدام مربع البحث Azure.
احصل على مفتاح الوصول لحساب التخزين باتباع الخطوات التالية:
في قائمة حساب التخزين، ضمن الأمان + الشبكات، حدد مفاتيح Access.
انسخ اسم حساب التخزين والمفتاح1. احفظ هذه القيم في مكان آمن لاستخدامه لاحقا.
لإنشاء حساب تخزين، يمكنك أيضًا استخدام Azure PowerShell أو Azure CLI.
إنشاء حاوية تخزين نقاط لمرفقات البريد الإلكتروني الخاص بك.
في قائمة حساب التخزين، ضمن Data storage، حدد Containers.
في شريط أدوات صفحة الحاويات ، حدد حاوية.
في جزء New container ، قم بتوفير المعلومات التالية:
الخاصية القيمة الوصف الاسم المرفقات اسم الحاوية. مستوى الوصول المجهول الحاوية (وصول قراءة مجهول للحاويات والكائنات الثنائية كبيرة الحجم) حدد إنشاء.
بعد الانتهاء، تعرض قائمة الحاويات الآن حاوية التخزين الجديدة.
لإنشاء حساب تخزين، يمكنك أيضًا استخدام Azure PowerShell أو Azure CLI.
بعد ذلك، قم بتوصيل مستكشف التخزين بحساب التخزين الخاص بك.
إعداد مستكشف التخزين
تربط الخطوات التالية Storage Explorer بحساب التخزين الخاص بك حتى تتمكن من التأكد من أن سير العمل الخاص بك يحفظ المرفقات بشكل صحيح كنقاط كبيرة في حاوية التخزين الخاصة بك.
قم بتشغيل مستكشف تخزين Microsoft Azure تسجيل بحساب Azure الخاص بك.
إشعار
إذا لم تظهر مطالبة، في شريط نشاط Storage Explorer، حدد إدارة الحساب (أيقونة ملف التعريف).
في نافذة تحديد بيئة Azure، حدد بيئة Azure، ثم حدد التالي.
يستمر هذا المثال عن طريق تحديد Azure العمومي متعدد المستأجرين.
في نافذة المستعرض التي تظهر، سجل الدخول باستخدام حساب Azure الخاص بك.
ارجع إلى Storage Explorer ونافذة Account Management . تأكد من تحديد مستأجر Microsoft Entra الصحيح والاشتراك.
في شريط نشاط Storage Explorer، حدد Open Connect Dialog.
في نافذة Select Resource ، حدد Storage account or service.
في نافذة تحديد أسلوب الاتصال، حدد اسم الحساب والمفتاح>التالي.
في نافذة الاتصال ب Azure Storage ، قم بتوفير المعلومات التالية:
الخاصية القيمة اسم العرض اسم مألوف لاتصالك Account name اسم حساب التخزين الخاص بك مفتاح الحساب مفتاح الوصول الذي قمت بحفظه مسبقا بالنسبة لمجال التخزين، تأكد من تحديد Azure (core.windows.net)، وحدد التالي.
في نافذة Summary ، تأكد من معلومات الاتصال، وحدد Connect.
ينشئ Storage Explorer الاتصال. يظهر حساب التخزين الخاص بك في نافذة المستكشف ضمن المحاكي وحسابات التخزين المرفقة>.
للعثور على حاوية تخزين الكائن الثنائي كبير الحجم، ضمن حسابات التخزين، قم بتوسيع حساب التخزين الخاص بك، وهو attachmentstorageacct لهذا المثال. ضمن حاويات Blob حيث تجد حاوية المرفقات ، على سبيل المثال:
بعد ذلك، قم بإنشاء تطبيق دالة Azure ودالة تزيل HTML من المحتوى.
قم بإنشاء تطبيق دالة
تنشئ الخطوات التالية دالة Azure التي يستدعيها سير العمل لإزالة HTML من البريد الإلكتروني الوارد.
قبل أن تتمكن من إنشاء دالة، قم بإنشاء تطبيق دالة عن طريق تحديد خطة الاستهلاك واتباع الخطوات التالية:
في علامة التبويب Basics ، قم بتوفير المعلومات التالية:
الخاصية المطلوب قيمة الوصف الاشتراك نعم <"Azure-subscription-name"> نفس اشتراك Azure الذي استخدمته مسبقا لحساب التخزين الخاص بك. مجموعة الموارد نعم <اسم مجموعة الموارد> نفس مجموعة موارد Azure التي استخدمتها مسبقا لحساب التخزين الخاص بك.
في هذا المثال، حدد LA-Tutorial-RG.اسم تطبيق الوظائف نعم <function-app-name> اسم تطبيق الوظائف الخاص بك، والذي يجب أن يكون فريدا عبر مناطق Azure ويمكن أن يحتوي على أحرف فقط (غير حساسة لحالة الأحرف) والأرقام (0-9) والواصلات (-).
يستخدم هذا المثال بالفعل CleanTextFunctionApp، لذا قم بتوفير اسم مختلف، مثل MyCleanTextFunctionApp-your-name<>مكدس وقت التشغيل نعم <لغة البرمجة> وقت التشغيل للغة البرمجة الوظيفية المفضلة لديك. بالنسبة لدالات C# وF#، حدد .NET.
يستخدم هذا المثال .NET.
يتوفر التحرير في المدخل فقط للغات التالية:
- JavaScript
- PowerShell
- TypeScript
- البرنامج النصي C#
يجب عليك تطوير أي مكتبة فئة C# وJava وPython محليا.الإصدار نعم <رقم الإصدار> حدد إصدار وقت التشغيل المثبت. المنطقة نعم <تحديد منطقة Azure> نفس المنطقة التي استخدمتها سابقا.
يستخدم هذا المثال غرب الولايات المتحدة.نظام تشغيل نعم <نظام التشغيل الخاص بك> يتم تحديد نظام التشغيل مسبقا لك استنادا إلى تحديد مكدس وقت التشغيل، ولكن يمكنك تحديد نظام التشغيل الذي يدعم لغة برمجة الوظائف المفضلة لديك. يتم اعتماد التحرير في المدخل فقط على نظام Windows.
يحدد هذا المثال Windows.حدد Next: Storage. في علامة التبويب Storage ، قم بتوفير المعلومات التالية:
الخاصية المطلوب قيمة الوصف حساب التخزين نعم <اسم حساب تخزين Azure> إنشاء حساب تخزين لتطبيق الوظائف لاستخدامه. يجب أن يتراوح طول أسماء حسابات التخزين بين 3 و24 حرفا ويمكن أن تحتوي على أحرف صغيرة وأرقام فقط.
يستخدم هذا المثال cleantextfunctionstorageacct.
ملاحظة: يحتوي حساب التخزين هذا على تطبيقات الوظائف الخاصة بك ويختلف عن حساب التخزين الذي تم إنشاؤه مسبقًا لمرفقات البريد الإلكتروني. كما يمكنك استخدام حساب موجود، والذي ينبغي أن يفي بمتطلبات حساب التخزين.عند الانتهاء، حدد Review + create. بعد أن يتحقق Azure من صحة المعلومات المتوفرة، حدد Create.
بعد توزيع Azure لمورد تطبيق الوظائف، حدد Go to resource.
إنشاء دالة لإزالة HTML
تنشئ الخطوات التالية دالة Azure التي تزيل HTML من كل بريد إلكتروني وارد باستخدام نموذج القصاصة البرمجية. تعمل هذه الدالة على جعل محتوى البريد الإلكتروني أكثر نظافة وسهولة في المعالجة. يمكنك استدعاء هذه الدالة من سير العمل الخاص بك.
لمزيد من المعلومات، راجع إنشاء دالتك الأولى في مدخل Microsoft Azure. لإنشاء دالة موسعة، يمكنك أيضا إنشاء دالتك محليا.
في مدخل Microsoft Azure، افتح تطبيق الوظائف، إذا لم يكن مفتوحا بالفعل.
لتشغيل وظيفتك لاحقا في مدخل Microsoft Azure، قم بإعداد تطبيق الوظائف لقبول الطلبات من المدخل بشكل صريح. في قائمة تطبيق الوظائف، ضمن API، حدد CORS. ضمن الأصول المسموح بها، أدخل
https://portal.azure.com
، وحدد حفظ.في قائمة تطبيق الوظائف، حدد Overview. في علامة التبويب Functions ، حدد Create.
في جزء Create function، حدد HTTP trigger: C#>Next.
إشعار
إذا كنت لا ترى إصدار C#، فتأكد من
قم بتوفير المعلومات التالية لدالتك، وحدد Create:
المعلمة القيمة اسم الدالة إزالةHTMLFunction مستوى التخويل دالة في علامة التبويب Code + Test ، أدخل نموذج التعليمات البرمجية التالي، الذي يزيل HTML ويعيد النتائج إلى المتصل.
#r "Newtonsoft.Json" using System.Net; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Primitives; using Newtonsoft.Json; using System.Text.RegularExpressions; public static async Task<IActionResult> Run(HttpRequest req, ILogger log) { log.LogInformation("HttpWebhook triggered"); // Parse query parameter string emailBodyContent = await new StreamReader(req.Body).ReadToEndAsync(); // Replace HTML with other characters string updatedBody = Regex.Replace(emailBodyContent, "<.*?>", string.Empty); updatedBody = updatedBody.Replace("\\r\\n", " "); updatedBody = updatedBody.Replace(@" ", " "); // Return cleaned text return (ActionResult)new OkObjectResult(new {updatedBody}); }
عند الانتهاء، في شريط أدوات Code + Test ، حدد Save، ثم حدد Test/Run.
في جزء Test/Run ، في علامة التبويب Input ، في المربع Body ، أدخل نموذج الإدخال التالي، وحدد Run:
{"name": "<p><p>Testing my function</br></p></p>"}
يبدو إخراج الدالة الخاص بك مثل النتيجة التالية:
{"updatedBody": "{\"name\": \"Testing my function\"}"}
بعد التأكد من أن الدالة تعمل، قم بإنشاء مورد تطبيق المنطق وسير العمل. على الرغم من أن هذا البرنامج التعليمي يوضح كيفية إنشاء دالة تزيل HTML من رسائل البريد الإلكتروني، فإن Azure Logic Apps يوفر أيضا HTML إلى موصل النص .
إنشاء مورد تطبيق منطقي الاستهلاك
في مربع البحث في مدخل Microsoft Azure، أدخل logic app، وحدد Logic apps.
في شريط أدوات صفحة Logic apps ، حدد Add.
تظهر صفحة Create Logic App وتعرض الخيارات التالية:
الخطة الوصف استهلاك إنشاء مورد تطبيق منطقي يدعم سير عمل واحد فقط يعمل في Azure Logic Apps متعدد المستأجرين ويستخدم نموذج الاستهلاك للفوترة. قياسي إنشاء مورد تطبيق منطقي يدعم مهام سير عمل متعددة. لديك الخيارات التالية:
- خطة خدمة سير العمل: يتم تشغيل مهام سير العمل في Azure Logic Apps أحادية المستأجر وتستخدم النموذج القياسي للفوترة.
- App Service Environment V3: يتم تشغيل مهام سير العمل في Azure Logic Apps أحادية المستأجر وتستخدم خطة App Service Environment للفوترة.في صفحة Create Logic App ، حدد Consumption (Multi-tenant).
في علامة التبويب Basics ، قم بتوفير المعلومات التالية حول مورد تطبيق المنطق الخاص بك:
المعلمة المطلوب قيمة الوصف الاشتراك نعم <"Azure-subscription-name"> نفس اشتراك Azure الذي استخدمته سابقا. مجموعة الموارد نعم LA-Tutorial-RG نفس مجموعة موارد Azure التي استخدمتها سابقا. إدخال اسم التطبيق نعم <"logic-app-name"> اسم مورد تطبيق المنطق الخاص بك، والذي يجب أن يكون فريدا عبر المناطق ويمكن أن يحتوي فقط على أحرف وأرقام وواصلات (-) والتسطير السفلي (_) والأقواس (()) والنقاط (.).
ينشئ هذا المثال مورد تطبيق منطقي يسمى LA-ProcessAttachment. دائما ما يكون لتطبيق منطق الاستهلاك وسير العمل نفس الاسم.المنطقة نعم غرب الولايات المتحدة نفس المنطقة التي استخدمتها سابقا. تمكين تحليلات السجل نعم لا يمكنك تغيير هذا الخيار فقط عندما ترغب في تمكين تسجيل التشخيص. في هذا البرنامج التعليمي، احتفظ بالتحديد الافتراضي.
ملاحظة: يتوفر هذا الخيار فقط مع تطبيقات منطق الاستهلاك.إشعار
يتم تمكين مناطق التوفر تلقائيا لسير عمل تطبيق منطق الاستهلاك الجديد والموجود في مناطق Azure التي تدعم مناطق التوفر. لمزيد من المعلومات، راجع الموثوقية في Azure Functions وحماية التطبيقات المنطقية من حالات فشل المنطقة مع التكرار في المنطقة ومناطق التوفر.
عندما تكون مستعدا، حدد Review + create. بعد أن يتحقق Azure من صحة المعلومات حول مورد تطبيق المنطق، حدد Create.
بعد توزيع Azure لمورد تطبيق المنطق، حدد Go to resource. أو ابحث عن مورد تطبيق المنطق وحدده باستخدام مربع البحث Azure.
إضافة مشغل لمراقبة البريد الإلكتروني الوارد
تضيف الخطوات التالية مشغلا ينتظر رسائل البريد الإلكتروني الواردة التي تحتوي على مرفقات.
في قائمة logic app، ضمن Development Tools، حدد Logic app designer.
على مصمم سير العمل، اتبع هذه الخطوات العامة لإضافة مشغل Office 365 Outlook المسمى عند وصول بريد إلكتروني جديد.
يتطلب موصل Office 365 Outlook تسجيل الدخول باستخدام حساب Microsoft للعمل أو المؤسسة التعليمية. إذا كنت تستخدم حساب Microsoft شخصي، فاستخدم موصل Outlook.com.
سجل الدخول إلى حساب بريدك الإلكتروني، مما يؤدي إلى إنشاء اتصال بين سير العمل وحساب بريدك الإلكتروني.
في مربع معلومات المشغل، من قائمة Advanced parameters ، أضف المعلمات التالية، إذا لم تظهر، وقدم المعلومات التالية:
المعلمة قيمة الوصف اهميه Any تحديد مستوى أهمية البريد الإلكتروني الذي تريده. مع المرفقات فقط نعم احصل على رسائل البريد الإلكتروني التي تحتوي على مرفقات فقط.
ملاحظة: لا يزيل المشغل أي رسائل بريد إلكتروني من حسابك، حيث يتحقق فقط من الرسائل الجديدة ويعالج رسائل البريد الإلكتروني التي تتطابق مع فلتر الموضوع فقط.تضمين المرفقات نعم احصل على المرفقات كمدخل لسير العمل الخاص بك، بدلاً من التحقق فقط من وجود المرفقات. مجلد علبة الوارد مجلد البريد الإلكتروني الذي يجب التحقق من وجوده. عامل تصفية الموضوع محلل الأعمال 2 #423501 تحديد النص الذي تريد البحث فيه في موضوع البريد الإلكتروني. عند الانتهاء، يبدو المشغل مشابها للمثال التالي:
احفظ سير العمل الخاص بك. في شريط أدوات المصمم، حدد "Save".
سير العمل الخاص بك الآن مباشر ولكنه لا يقوم بأي شيء آخر للتحقق من رسائل البريد الإلكتروني الخاصة بك. بعد ذلك، أضف شرطا يحدد معايير لمتابعة الإجراءات اللاحقة في سير العمل.
إضافة شرط للتحقق من وجود مرفقات
تضيف الخطوات التالية شرطا يحدد رسائل البريد الإلكتروني التي تحتوي على مرفقات فقط.
على مصمم سير العمل، اتبع هذه الخطوات العامة لإضافة إجراء Control المسمى Condition.
في جزء معلومات إجراء الشرط ، أعد تسمية الإجراء باستخدام إذا كان البريد الإلكتروني يحتوي على مرفقات وعبارة موضوع المفتاح.
إنشاء شرط يتحقق من رسائل البريد الإلكتروني التي تحتوي على مرفقات.
في علامة التبويب معلمات ، في الصف الأول ضمن القائمة AND ، حدد داخل المربع الأيسر، ثم حدد قائمة المحتوى الديناميكي (أيقونة البرق). من هذه القائمة، في قسم المشغل، حدد إخراج Has Attachment .
تلميح
إذا لم تتمكن من رؤية الإخراج يحتوي على مرفق ، فحدد مشاهدة المزيد.
في المربع الأوسط، احتفظ بعامل التشغيل المسمى يساوي.
في المربع الأيسر، أدخل true، وهي القيمة المراد مقارنتها بقيمة إخراج Has Attachment من المشغل. إذا كانت القيمتان متساويتين، يحتوي البريد الإلكتروني على مرفق واحد على الأقل، ويمر الشرط، ويستمر سير العمل.
في تعريف سير العمل الأساسي، والذي يمكنك عرضه عن طريق تحديد طريقة عرض التعليمات البرمجية على شريط أدوات المصمم، يبدو الشرط مشابها للمثال التالي:
"Condition": { "actions": { <actions-to-run-when-condition-passes> }, "expression": { "and": [ { "equals": [ "@triggerBody()?['HasAttachment']", "true" ] } ] }, "runAfter": {}, "type": "If" }
احفظ سير العمل الخاص بك.
قم باختبار حالتك
في شريط أدوات المصمم، حدد Run>Run.
تبدأ هذه الخطوة سير العمل وتشغله يدويا، ولكن لا يحدث أي شيء حتى ترسل بريدا إلكترونيا تجريبيا إلى علبة الوارد.
أرسل لنفسك رسالة بريد إلكتروني تفي بالمعايير التالية:
يحتوي موضوع بريدك الإلكتروني على النص الذي حددته في عامل تصفية الموضوع للمشغل: محلل الأعمال 2 #423501
يحتوي بريدك الإلكتروني على مرفق واحد. في الوقت الحالي، فقط قم بإنشاء ملف نصي فارغ واحد وإرفاق هذا الملف ببريدك الإلكتروني.
عند وصول البريد الإلكتروني، يتحقق سير العمل من المرفقات ونص الموضوع المحدد. إذا مر الشرط، يتم تشغيل المشغل ويتسبب في إنشاء مثيل سير عمل وتشغيله في Azure Logic Apps.
للتحقق من تشغيل المشغل وتشغيل سير العمل بنجاح، في قائمة logic app، حدد Overview.
لعرض مهام سير العمل التي تم تشغيلها بنجاح، حدد Run history.
لعرض المشغلات التي تم تشغيلها بنجاح، حدد محفوظات المشغلات.
إذا لم يتم تشغيل المشغل، أو لم يتم تشغيل سير العمل على الرغم من وجود مشغل ناجح، فراجع استكشاف أخطاء سير عمل تطبيق المنطق وإصلاحها.
بعد ذلك، حدد الإجراءات التي يجب اتخاذها للفرع True . لحفظ البريد الإلكتروني مع أي مرفقات، قم بإزالة أي HTML من نص البريد الإلكتروني، ثم أنشئ النقط في حاوية التخزين للبريد الإلكتروني والمرفقات.
إشعار
يمكن أن يترك سير العمل فرع False فارغا ولا يتخذ أي إجراءات عندما لا يحتوي البريد الإلكتروني على مرفقات. كتمرين مكافأة بعد الانتهاء من هذا البرنامج التعليمي، يمكنك إضافة أي إجراء مناسب تريد اتخاذه لفرع False .
استدعاء RemoveHTMLFunction
تضيف الخطوات التالية دالة Azure التي تم إنشاؤها مسبقا، والتي تقبل محتوى نص البريد الإلكتروني من مشغل البريد الإلكتروني كمدخل.
في قائمة logic app، ضمن Development Tools، حدد Logic app designer. في الفرع True ، حدد Add an action.
اتبع هذه الخطوات العامة لإضافة إجراء Azure Functions المسمى Choose an Azure function.
حدد تطبيق الوظائف الذي تم إنشاؤه مسبقا، وهو CleanTextFunctionApp في هذا المثال.
حدد الدالة، المسماة RemoveHTMLFunction في هذا المثال، ثم حدد Add Action.
في جزء معلومات الإجراء Azure Functions ، أعد تسمية الإجراء باستخدام Call RemoveHTMLFunction.
الآن قم بتحديد الإدخال الخاص بك وظيفة لمعالجة.
بالنسبة إلى نص الطلب، أدخل النص التالي بمسافة زائدة:
{ "emailBody":
في أثناء العمل على هذا الإدخال في الخطوات التالية، يظهر خطأ حول JSON غير صالح حتى يتم تنسيق الإدخال بشكل صحيح كـ JSON. عند اختبار هذه الدالة مسبقًا، استخدم الإدخال المحدد لهذه الدالة تدوين كائن JavaScript (JSON). لذلك، يجب أن يستخدم نص الطلب نفس التنسيق.
حدد داخل مربع نص الطلب ، ثم حدد قائمة المحتوى الديناميكي (أيقونة البرق) بحيث يمكنك تحديد المخرجات من الإجراءات السابقة.
من قائمة المحتوى الديناميكي، ضمن عند وصول بريد إلكتروني جديد، حدد إخراج النص الأساسي . بعد حل هذه القيمة في مربع نص الطلب ، تذكر إضافة قوس الإغلاق المتعرج (}).
عند الانتهاء، تبدو دالة Azure مثل المثال التالي:
احفظ سير العمل الخاص بك.
بعد ذلك، أضف إجراء يقوم بإنشاء كائن ثنائي كبير الحجم لتخزين نص البريد الإلكتروني.
إضافة إجراء لإنشاء كائن ثنائي كبير الحجم لنص البريد الإلكتروني
تنشئ الخطوات التالية كائن ثنائي كبير الحجم يخزن نص البريد الإلكتروني في حاوية التخزين الخاصة بك.
على المصمم، في كتلة True للشرط، ضمن دالة Azure، حدد Add an action.
اتبع هذه الخطوات العامة لإضافة إجراء Azure Blob Storage المسمى Create blob.
قم بتوفير معلومات الاتصال لحساب التخزين الخاص بك، على سبيل المثال:
المعلمة المطلوب قيمة الوصف اسم الاتصال نعم <اسم الاتصال> اسم وصفي للاتصال.
يستخدم هذا المثال AttachmentStorageConnection.نوع المصادقة نعم <نوع المصادقة> نوع المصادقة المراد استخدامه للاتصال.
يستخدم هذا المثال مفتاح الوصول.اسم حساب تخزين Azure أو نقطة نهاية كائن ثنائي كبير الحجم نعم <اسم حساب التخزين> اسم حساب التخزين الذي تم إنشاؤه مسبقا.
يستخدم هذا المثال attachmentstorageacct.مفتاح الوصول إلى حساب تخزين Azure نعم <مفتاح الوصول إلى حساب التخزين> مفتاح الوصول لحساب التخزين الذي تم إنشاؤه مسبقا. عند الانتهاء، حدد إنشاء جديد.
في جزء إنشاء معلومات إجراء كائن ثنائي كبير الحجم، أعد تسمية الإجراء باستخدام إنشاء كائن ثنائي كبير الحجم لنص البريد الإلكتروني.
قدم معلومات الإجراء التالية:
تلميح
إذا لم تتمكن من العثور على إخراج محدد في قائمة المحتوى الديناميكي، فحدد مشاهدة المزيد بجوار اسم العملية.
المعلمة المطلوب قيمة الوصف اسم حساب التخزين أو نقطة نهاية كائن ثنائي كبير الحجم نعم استخدام إعدادات الاتصال (<storage-account-name-or-blob-endpoint>) حدد الخيار الذي يتضمن اسم حساب التخزين الخاص بك.
هذا المثال يستخدمhttps://attachmentstorageacct.blob.core.windows.net
.مسار المجلد نعم <اسم المسار والحاوية> مسار واسم الحاوية التي قمت بإنشائها مسبقًا.
في هذا المثال، حدد أيقونة المجلد، ثم حدد المرفقات.اسم الكائن الثنائي كبير الحجم نعم <اسم المرسل> على سبيل المثال، استخدم اسم المرسل كاسم كائن ثنائي كبير الحجم.
1. حدد داخل المربع اسم الكائن الثنائي كبير الحجم، ثم حدد خيار قائمة المحتوى الديناميكي (أيقونة البرق).
2. من المقطع عند وصول بريد إلكتروني جديد، حدد من.محتوى كائن ثنائي كبير الحجم نعم <نص بريد إلكتروني نظيف> على سبيل المثال، استخدم نص البريد الإلكتروني خالية من HTML كمحتوى نقاط.
1. حدد داخل مربع محتوى الكائن الثنائي كبير الحجم، ثم حدد خيار قائمة المحتوى الديناميكي (أيقونة البرق).
2. من قسم Call RemoveHTMLFunction ، حدد Body.تظهر لقطة الشاشة التالية المخرجات التي يجب تحديدها لإجراء إنشاء كائن ثنائي كبير الحجم ل نص البريد الإلكتروني:
عند الانتهاء، يبدو الإجراء مثل المثال التالي:
احفظ سير العمل الخاص بك.
اختبار معالجة المرفقات
في شريط أدوات المصمم، حدد Run>Run.
تبدأ هذه الخطوة سير العمل وتشغله يدويا، ولكن لا يحدث أي شيء حتى ترسل بريدا إلكترونيا تجريبيا إلى علبة الوارد.
أرسل لنفسك رسالة بريد إلكتروني تفي بالمعايير التالية:
يحتوي موضوع بريدك الإلكتروني على النص الذي حددته في معلمة عامل تصفية الموضوع للمشغل: محلل الأعمال 2 #423501
يحتوي بريدك الإلكتروني على مرفق واحد أو أكثر. في الوقت الحالي، فقط قم بإنشاء ملف نصي فارغ واحد، وأرفق هذا الملف ببريدك الإلكتروني.
يحتوي بريدك الإلكتروني على بعض محتوى الاختبار في النص الأساسي، على سبيل المثال: اختبار سير عمل تطبيق المنطق الخاص بي
إذا لم يتم تشغيل سير العمل أو تشغيله على الرغم من نجاح المشغل، فراجع استكشاف أخطاء سير عمل تطبيق المنطق وإصلاحها.
تحقق من حفظ سير العمل للبريد الإلكتروني في حاوية التخزين الصحيحة.
اختياريا، لاختبار الفرع False ، الذي لا يفعل شيئا في الوقت الحالي، يمكنك إرسال بريد إلكتروني لا يفي بالمعايير.
بعد ذلك، أضف لكل تكرار حلقي لمعالجة كل مرفق بريد إلكتروني.
إضافة تكرار حلقي لمعالجة المرفقات
تضيف الخطوات التالية تكرارا حلقيا لمعالجة كل مرفق في البريد الإلكتروني.
ارجع إلى مصمم سير العمل. ضمن الإجراء Create blob for email body، حدد Add an action.
اتبع هذه الخطوات العامة لإضافة إجراء Control المسمى لكل منها.
في جزء معلومات كل إجراء، أعد تسمية الإجراء مع لكل مرفق بريد إلكتروني.
الآن حدد محتوى التكرار الحلقي لمعالجته.
في التكرار الحلقي لكل مرفق بريد إلكتروني، حدد داخل المربع تحديد إخراج من الخطوات السابقة، ثم حدد خيار قائمة المحتوى الديناميكي (أيقونة البرق).
من المقطع عند وصول بريد إلكتروني جديد، حدد المرفقات.
يتضمن إخراج المرفقات صفيفا يحتوي على كافة المرفقات من رسالة بريد إلكتروني. يكرر التكرار الحلقي لكل إجراء على كل عنصر صفيف.
تلميح
إذا لم تتمكن من رؤية المرفقات، فحدد مشاهدة المزيد.
احفظ سير العمل الخاص بك.
بعد ذلك، أضف إجراء يحفظ كل مرفق ككائن ثنائي كبير الحجم في حاوية تخزين المرفقات .
إضافة إجراء لإنشاء كائن ثنائي كبير الحجم لكل مرفق
تضيف الخطوات التالية إجراء لإنشاء كائن ثنائي كبير الحجم لكل مرفق.
في المصمم، في التكرار الحلقي لكل مرفق بريد إلكتروني، حدد إضافة إجراء.
اتبع هذه الخطوات العامة لإضافة إجراء Azure Blob Storage المسمى Create blob.
في جزء Create blob action information، أعد تسمية الإجراء باستخدام Create blob لمرفق البريد الإلكتروني.
قدم معلومات الإجراء التالية:
تلميح
إذا لم تتمكن من العثور على إخراج محدد في قائمة المحتوى الديناميكي، فحدد مشاهدة المزيد بجوار اسم العملية.
المعلمة المطلوب قيمة الوصف اسم حساب التخزين أو نقطة نهاية كائن ثنائي كبير الحجم نعم استخدام إعدادات الاتصال (<storage-account-name-or-blob-endpoint>) حدد الخيار الذي يتضمن اسم حساب التخزين الخاص بك.
هذا المثال يستخدمhttps://attachmentstorageacct.blob.core.windows.net
.مسار المجلد نعم <اسم المسار والحاوية> مسار واسم الحاوية التي قمت بإنشائها مسبقًا.
في هذا المثال، حدد أيقونة المجلد، ثم حدد المرفقات.اسم الكائن الثنائي كبير الحجم نعم <اسم المرفق> في هذا المثال، استخدم اسم المرفق كاسم كائن ثنائي كبير الحجم.
1. حدد داخل المربع اسم الكائن الثنائي كبير الحجم، ثم حدد خيار قائمة المحتوى الديناميكي (أيقونة البرق).
2. من المقطع عند وصول بريد إلكتروني جديد، حدد الاسم.محتوى كائن ثنائي كبير الحجم نعم <محتوى-بريد إلكتروني> على سبيل المثال، استخدم محتوى البريد الإلكتروني كمحتوى كائن ثنائي كبير الحجم.
1. حدد داخل مربع محتوى الكائن الثنائي كبير الحجم، ثم حدد خيار قائمة المحتوى الديناميكي (أيقونة البرق).
2. من المقطع عند وصول بريد إلكتروني جديد، حدد المحتوى.إشعار
إذا قمت بتحديد إخراج يحتوي على صفيف، مثل إخراج المحتوى ، وهو صفيف يتضمن مرفقات، يضيف المصمم تلقائيا لكل تكرار حلقي حول الإجراء الذي يشير إلى هذا الإخراج. وبهذه الطريقة، يمكن لسير العمل تنفيذ هذا الإجراء على كل عنصر صفيف. لإزالة التكرار الحلقي، انقل الإجراء الذي يشير إلى الإخراج إلى خارج الحلقة، واحذف الحلقة.
تظهر لقطة الشاشة التالية المخرجات التي يجب تحديدها لإجراء إنشاء كائن ثنائي كبير الحجم لمرفق البريد الإلكتروني:
عند الانتهاء، يبدو الإجراء مثل المثال التالي:
احفظ سير العمل الخاص بك.
إعادة معالجة المرفقات
في شريط أدوات المصمم، حدد Run>Run.
تبدأ هذه الخطوة سير العمل وتشغله يدويا، ولكن لا يحدث أي شيء حتى ترسل بريدا إلكترونيا تجريبيا إلى علبة الوارد.
أرسل لنفسك رسالة بريد إلكتروني تفي بالمعايير التالية:
يحتوي موضوع بريدك الإلكتروني على النص الذي حددته في معلمة عامل تصفية الموضوع للمشغل: محلل الأعمال 2 #423501
يحتوي بريدك الإلكتروني على مرفقين أو أكثر. في الوقت الحالي، فقط قم بإنشاء ملفين نصيين فارغين وإرفاق هذه الملفات ببريدك الإلكتروني.
إذا لم يتم تشغيل سير العمل أو تشغيله على الرغم من نجاح المشغل، فراجع استكشاف أخطاء سير عمل تطبيق المنطق وإصلاحها.
تحقق من حفظ سير العمل للبريد الإلكتروني والمرفقات في حاوية التخزين الصحيحة.
بعد ذلك، أضف إجراء في سير العمل يرسل بريدا إلكترونيا لمراجعة المرفقات.
إضافة إجراء لإرسال بريد إلكتروني
تضيف الخطوات التالية إجراء بحيث يرسل سير العمل بريدا إلكترونيا لمراجعة المرفقات.
ارجع إلى مصمم سير العمل. في الفرع True ، ضمن التكرار الحلقي لكل مرفق بريد إلكتروني، حدد Add an action.
اتبع هذه الخطوات العامة لإضافة إجراء Office 365 Outlook المسمى إرسال بريد إلكتروني.
يستمر هذا المثال مع موصل Office 365 Outlook، الذي يعمل فقط مع حساب العمل أو المؤسسة التعليمية في Azure. بالنسبة لحسابات Microsoft الشخصية، حدد موصل Outlook.com.
إذا تمت مطالبتك ببيانات الاعتماد، فسجل الدخول إلى حساب بريدك الإلكتروني بحيث تنشئ Azure Logic Apps اتصالا بحساب بريدك الإلكتروني.
في جزء إرسال معلومات إجراء البريد الإلكتروني ، أعد تسمية الإجراء باستخدام إرسال بريد إلكتروني للمراجعة.
قم بتوفير معلومات الإجراء التالية وحدد المخرجات لتضمينها في البريد الإلكتروني:
تلميح
إذا لم تتمكن من العثور على إخراج محدد في قائمة المحتوى الديناميكي، فحدد مشاهدة المزيد بجوار اسم العملية.
المعلمة المطلوب قيمة الوصف إلى نعم <recipient-email-address> لأغراض الاختبار، استخدم عنوان البريد الإلكتروني الخاص بك. الموضوع نعم <موضوع البريد الإلكتروني> موضوع البريد الإلكتروني المراد تضمينه.
يستخدم هذا المثال ASAP - مراجعة مقدم الطلب للحصول على الوظيفة:، وإخراج الموضوع من المشغل.
1. في المربع الموضوع ، أدخل نص المثال بمسافة زائدة.
2. حدد داخل مربع الموضوع، ثم حدد خيار قائمة المحتوى الديناميكي (أيقونة البرق).
3. في القائمة، ضمن عند وصول بريد إلكتروني جديد، حدد الموضوع.نص الرسالة نعم <نص البريد الإلكتروني> نص البريد الإلكتروني المراد تضمينه.
يستخدم المثال Please review new applicant:, the trigger output named From, the Path output from the Create blob for email body action, and the Body output from your Call RemoveHTMLFunction action.
1. في مربع النص الأساسي ، أدخل نص المثال، يرجى مراجعة مقدم الطلب الجديد:.
2. في سطر جديد، أدخل نص المثال، اسم مقدم الطلب:، وأضف الإخراج من من المشغل.
3. في سطر جديد، أدخل نص المثال، موقع ملف التطبيق:، وأضف إخراج المسار من إجراء إنشاء كائن ثنائي كبير الحجم للبريد الإلكتروني الأساسي.
4. في سطر جديد، أدخل نص المثال، محتوى البريد الإلكتروني للتطبيق:، وأضف إخراج النص الأساسي من إجراء Call RemoveHTMLFunction .إشعار
إذا قمت بتحديد إخراج يحتوي على صفيف، مثل إخراج المحتوى ، وهو صفيف يتضمن مرفقات، يضيف المصمم تلقائيا لكل تكرار حلقي حول الإجراء الذي يشير إلى هذا الإخراج. وبهذه الطريقة، يمكن لسير العمل تنفيذ هذا الإجراء على كل عنصر صفيف. لإزالة التكرار الحلقي، انقل الإجراء الذي يشير إلى الإخراج إلى خارج الحلقة، واحذف الحلقة.
تظهر لقطة الشاشة التالية الإجراء النهائي إرسال بريد إلكتروني :
احفظ سير العمل الخاص بك.
يبدو سير العمل النهائي الآن مثل المثال التالي:
اختبار سير العمل
أرسل لنفسك رسالة إلكترونية تستوفي هذه المعايير:
يحتوي موضوع بريدك الإلكتروني على النص الذي حددته في معلمة عامل تصفية الموضوع للمشغل: محلل الأعمال 2 #423501
يحتوي بريدك الإلكتروني على مرفق واحد أو أكثر. يمكنك إعادة استخدام ملف نصي فارغ من الاختبار السابق. للحصول على سيناريو أكثر واقعية، أرفق ملف سيرة ذاتية.
يحتوي نص البريد الإلكتروني على هذا النص، والذي يمكنك نسخه ولصقه:
Name: Jamal Hartnett Street address: 12345 Anywhere Road City: Any Town State or Country: Any State Postal code: 00000 Email address: jamhartnett@outlook.com Phone number: 000-000-0000 Position: Business Analyst 2 #423501 Technical skills: Dynamics CRM, MySQL, Microsoft SQL Server, JavaScript, Perl, Power BI, Tableau, Microsoft Office: Excel, Visio, Word, PowerPoint, SharePoint, and Outlook Professional skills: Data, process, workflow, statistics, risk analysis, modeling; technical writing, expert communicator and presenter, logical and analytical thinker, team builder, mediator, negotiator, self-starter, self-managing Certifications: Six Sigma Green Belt, Lean Project Management Language skills: English, Mandarin, Spanish Education: Master of Business Administration
تشغيل سير العمل الخاص بك. إذا نجحت، يرسل لك سير العمل رسالة بريد إلكتروني تشبه المثال التالي:
إذا لم تحصل على أي رسائل بريد إلكتروني، فتحقق من مجلد البريد الإلكتروني غير الهام. وإلا، إذا لم تكن متأكدا من تشغيل سير العمل بشكل صحيح، فراجع استكشاف أخطاء سير عمل تطبيق المنطق وإصلاحها.
تهانينا، لقد قمت بإنشاء وتشغيل سير عمل يقوم بأتمتة المهام عبر خدمات Azure المختلفة ويستدعي بعض التعليمات البرمجية المخصصة!
تنظيف الموارد
يستمر سير العمل في العمل حتى تقوم بتعطيل مورد تطبيق المنطق أو حذفه. عندما لا تعد بحاجة إلى هذه العينة، احذف مجموعة الموارد التي تحتوي على تطبيق المنطق والموارد المرتبطة به.
في مربع البحث في مدخل Microsoft Azure، أدخل مجموعات الموارد، وحدد Resource groups.
من قائمة مجموعات الموارد، حدد مجموعة الموارد لهذا البرنامج التعليمي.
في قائمة مجموعة الموارد، حدد Overview.
في شريط أدوات صفحة نظرة عامة ، حدد حذف مجموعة الموارد.
عند ظهور جزء التأكيد، أدخل اسم مجموعة الموارد، وحدد حذف.
الخطوات التالية
في هذا البرنامج التعليمي، قمت بإنشاء سير عمل تطبيق منطقي يعالج مرفقات البريد الإلكتروني ويخزنها من خلال دمج خدمات Azure، مثل Azure Storage وAzure Functions. الآن، تعرف على المزيد حول الموصلات الأخرى التي يمكنك استخدامها لإنشاء مهام سير عمل تطبيق المنطق.