إنشاء إجراءات لمساعد Google باستخدام أداة إنشاء المهام (المستوى 1)

1. نظرة عامة

يتيح لك النظام الأساسي لمطوّري برامج "مساعد Google" إنشاء برامج لتوسيع وظائف "مساعد Google"، وهو مساعد شخصي افتراضي، في أكثر من مليار جهاز، بما في ذلك مكبّرات الصوت الذكية والهواتف والسيارات وأجهزة التلفزيون وسماعات الرأس وغيرها. يتفاعل المستخدمون مع "مساعد Google" أثناء إجراء محادثات لإنجاز المهام، مثل شراء البقالة أو حجز رحلة. بصفتك مطوّر برامج، يمكنك استخدام منصة مطوّري البرامج الخاصة بخدمة "مساعد Google" لإنشاء تجارب محادثة ممتعة وفاعلة وإدارتها بين المستخدمين وخدمة توصيل الطلبات التابعة لجهات خارجية.

يتناول هذا الدرس التطبيقي حول الترميز مفاهيم للمبتدئين والتطوير باستخدام "مساعد Google"، ولا تحتاج إلى أي خبرة سابقة في المنصة لإكمال البرنامج. في هذا الدرس التطبيقي حول الترميز، أنشأت "مساعِد" بسيطًا لمساعد Google، بحيث يُطلِع المستخدمين على ثروتهم بمجرد بدء مغامرتهم في أرض "غريفينبرغ" الأسطورية. في الدرس التطبيقي حول الترميز من المستوى 2، يمكنك إنشاء هذا الإجراء بشكل أكبر لتخصيص ثروة المستخدم استنادًا إلى البيانات التي تم إدخالها.

العناصر التي سيتم إنشاؤها

في هذا الدرس التطبيقي حول الترميز، يمكنك إنشاء إجراء بسيط باستخدام الدوال التالية:

  • الردّ على المستخدمين باستخدام رسالة ترحيب
  • تطرح سؤالاً على المستخدمين. عندما يردّ المستخدمون، يستجيب الإجراء المناسب لهم لاختيار المستخدم
  • توفّر شرائح الاقتراحات التي يمكن للمستخدمين النقر عليها لإدخال البيانات
  • تعدِّل رسالة الترحيب إلى المستخدم استنادًا إلى ما إذا كان مستخدمًا متكررًا أم لا

عند الانتهاء من هذا الدرس التطبيقي حول الترميز، سيتّخذ الإجراء الذي أكملته خطوات المحادثة التالية:

1c1e79902bed7230.png

18ef55647b4cb52c.png

ما ستتعرَّف عليه

  • كيفية إنشاء مشروع في وحدة تحكم المهام
  • كيفية إرسال رسالة مطالبة إلى المستخدم بعد استدعاء الإجراء
  • كيفية معالجة إدخال المستخدم وعرضه
  • كيفية اختبار "الإجراء" في محاكي الإجراءات
  • كيفية تنفيذ التنفيذ باستخدام محرِّر "دوال Cloud"

الأشياء التي تحتاج إليها

يجب أن تكون الأدوات التالية في بيئتك:

2. إعداد

توضّح الأقسام التالية طريقة إعداد بيئة التطوير وإنشاء مشروع المهام.

التحقق من إعدادات أذونات Google

لاختبار الإجراء الذي أنشأته في هذا الدرس التطبيقي حول الترميز، يجب تفعيل الأذونات اللازمة حتى يتمكّن المحاكي من الوصول إلى المهمّة. لتفعيل الأذونات، يُرجى اتّباع الخطوات التالية:

  1. انتقِل إلى صفحة عناصر التحكُّم في النشاط.
  2. إذا لم تكن قد فعلت ذلك، سجِّل الدخول باستخدام حسابك على Google.
  3. فعِّل الأذونات التالية:
  • النشاط على الويب وفي التطبيقات
  • ضمن النشاط على الويب وفي التطبيقات، ضع علامة في مربّع الاختيار تضمين سجلّ Chrome والنشاط من المواقع والتطبيقات والأجهزة التي تستخدم خدمات Google.

إنشاء مشروع "مهام"

مشروع "الإجراءات" هو حاوية للإجراء. لإنشاء مشروع المهام لهذا الدرس التطبيقي، يُرجى اتّباع الخطوات التالية:

  1. افتح وحدة التحكّم في الإجراءات.
  2. انقر على مشروع جديد.
  3. اكتب اسم مشروع، مثل actions-codelab. (الاسم بمثابة مرجع داخلي. يمكنك بعد ذلك إعداد اسم خارجي لمشروعك.)

8cd05a84c1c0a32f.png

  1. انقر على إنشاء مشروع.
  2. في الشاشة نوع الإجراء الذي تريد إنشاؤه، اختَر البطاقة مخصّص.
  3. انقر على التالي.
  4. اختَر بطاقة مشروع فارغ.
  5. انقر على بدء المبنى.

ربط حساب فوترة

لنشر عملية التنفيذ لاحقًا في هذا الدرس التطبيقي باستخدام Cloud Functions، عليك ربط حساب فوترة بمشروعك على Google Cloud.

إذا لم يسبق لك ربط حساب فوترة بمشروعك، اتّبِع الخطوات التالية:

  1. انتقِل إلى صفحة فوترة Google Cloud Platform.
  2. انقر على إضافة حساب فوترة أو إنشاء حساب.
  3. أدخِل معلومات الدفع.
  4. انقر على بدء الفترة التجريبية المجانية أو إرسال الفوترة وتفعيلها.
  5. انتقِل إلى صفحة فوترة Google Cloud Platform.
  6. انقر على علامة التبويب مشاريعي.
  7. انقر على النقاط الثلاث ضمن Actions (الإجراءات) بجانب مشروع "المهام" للدرس التطبيقي حول الترميز.
  8. انقر على تغيير الفوترة.
  9. في القائمة المنسدلة، اختَر حساب الفوترة الذي ضبطته. انقر على ضبط الحساب.

لتجنّب دفع رسوم إضافية، اتّبِع الخطوات الواردة في قسم تنظيم مشروعك في نهاية هذا الدرس التطبيقي حول الترميز.

3- بدء محادثة

يبدأ المستخدمون المحادثة مع الإجراء من خلال الاستدعاء. على سبيل المثال، إذا كان لديك إجراء باسم MovieTime، يمكن للمستخدمين استدعاء الإجراء من خلال قول عبارة مثل "Ok Google، التحدث إلى MoviesTime"، حيث يكون MovieTime هو الاسم المعروض. يجب أن يكون للإجراء اسم معروض إذا كنت تريد نشره في مرحلة الإنتاج. ومع ذلك، لاختبار الإجراء، لا تحتاج إلى تحديد الاسم المعروض. بدلاً من ذلك، يمكنك استخدام العبارة "Talk to my test app" في المحاكي لاستدعاء الإجراء.

عليك تعديل الاستدعاء الأساسي لتحديد ما يحدث بعد استدعاء المستخدم للإجراء.

توفِّر "أداة إنشاء المهام" تلقائيًا رسالة مطالبة عامة عند تشغيل الاستدعاء ("بدء إنشاء الإجراء من خلال تحديد الاستدعاء الأساسي").

في القسم التالي، يمكنك تخصيص موجز الاستدعاء الرئيسي في "وحدة تحكُّم الإجراءات".

إعداد الاستدعاء الرئيسي

لتعديل رسالة المطالبة التي يرسلها الإجراء مرة أخرى إلى المستخدم عند استدعاء الإجراء، اتّبِع الخطوات التالية:

  1. انقر على الاستدعاء الرئيسي في شريط التنقل.

966d037e1d7914df.png

  1. في محرِّر الرموز، استبدل النص في الحقل speech (Start building your action...) برسالة الترحيب التالية: A wondrous greeting, adventurer! Welcome to the mythical land of Gryffinberg! Based on your clothes, you are not from around these lands. It looks like you're on your way to an epic journey.
  1. يُرجى النقر على حفظ.

اختبار الاستدعاء الرئيسي في المحاكي

توفر وحدة تحكم المهام أداة على الويب لاختبار الإجراء الذي يحمل اسم المحاكي. وتحاكي الواجهة الأجهزة والأجهزة وإعداداتها، حتى تتمكّن من التحدث مع الإجراء كما لو كان يعمل على شاشة ذكية أو هاتف أو مكبّر صوت أو KaiOS.

عند استدعاء الإجراء، من المفترض أن يستجيب الآن باستخدام رسالة المطالبة المخصّصة التي أضفتها ("A wondrous greeting, adventurer!...")

لاختبار الاستدعاء الرئيسي للإجراءات في المحاكي، اتبع الخطوات التالية:

  1. في شريط التنقل العلوي، انقر على اختبار للانتقال إلى المحاكي.
  2. لاستدعاء الإجراء في "المحاكي"، اكتب Talk to my test app في الحقل الإدخال واضغط على Enter.

656f5736af6a5a07.png

عند تشغيل الاستدعاء الرئيسي للإجراءات، سيستجيب "مساعد Google" عن رسالة الترحيب المخصصة. وحينئذٍ تنتهي المحادثة بعد أن يردّ "مساعد Google" بتحية. في القسم التالي، يمكنك تعديل الإجراء كي تستمر المحادثة.

عرض سجلات الأحداث

عند الانتقال إلى علامة التبويب الاختبار، تعرض اللوحة على اليسار سجلات الأحداث التي تعرض سجلّ المحادثات كسجلات أحداث. يعرض كل سجل أحداث الأحداث التي تحدث أثناء نهاية المحادثة.

يحتوي الإجراء على سجلّ أحداث واحد حاليًا، ويعرض كلاً من إدخال المستخدم ("Talk to my test app") واستجابة الإجراء ('s). تعرض لقطة الشاشة التالية سجل أحداث Action&#39:

443129bdcbecc593.png

إذا نقرت على السهم المتجه للأسفل في سجلّ الأحداث، يمكنك الاطّلاع على الأحداث مرتبة ترتيبًا زمنيًا، والتي حدثت في ذلك الدور:

  • userInput: يتطابق مع إدخال المستخدم ("Talk to my test app").
  • interactionMatch: يتوافق مع استجابة الاستدعاء الرئيسية للإجراءات، والتي تم تشغيلها من قِبل إدخال المستخدم. في حال توسيع هذا الصف من خلال النقر على السهم، يمكنك الاطّلاع على رسالة المطالبة التي أضفتها للاستدعاء الرئيسي (A wondrous greeting, adventurer!...).
  • endConversation: يتطابق مع النقل المحدد في الهدف من Main invocation، والذي ينهي المحادثة حاليًا. (يمكنك الاطّلاع على مزيد من المعلومات حول عمليات النقل في القسم التالي من هذا الدرس التطبيقي حول الترميز).

توفّر سجلّات الأحداث إمكانية الاطّلاع على آلية عمل "الإجراء" وهي أدوات مفيدة لتصحيح الأخطاء في "الإجراء" إذا واجهت أي مشاكل. لعرض تفاصيل الحدث، انقر على السهم بجوار اسم الحدث، كما هو موضح في لقطة الشاشة التالية:

fcc389b59af5bef1.png

4. إنشاء محادثة في الحركة

الآن وبعد أن تعرّفت على ما يحدث بعد استدعاء المستخدم للإجراء، يمكنك إنشاء بقية محادثتك. قبل مواصلة هذا الدرس التطبيقي حول الترميز، اطّلِع على المصطلحات التالية للتعرّف على آلية عمل محادثتك:

يمكن أن يتضمّن الإجراء مشهدًا واحدًا أو أكثر، ويجب تفعيل كل مشهد قبل أن تتمكّن من تشغيله. (الإجراء الذي تُنشئه في هذا الدرس التطبيقي حول الترميز يتضمّن مشهدًا واحدًا بعنوان Start.) وأكثر الطرق شيوعًا لتفعيل المشهد هو ضبط "الإجراء" الذي تستخدمه، بحيث عندما يتطابق مستخدم مع هدف مستخدم ضمن مشهد، يؤدي ذلك إلى تشغيل الانتقال إلى مشهد آخر وتفعيله.

على سبيل المثال، تخيّل إجراءً افتراضيًا يزوّد المستخدم بحقائق عن الحيوانات. عندما يستدعي المستخدم هذا الإجراء، تتم مطابقة intent في Main invocation وتؤدي إلى الانتقال إلى مشهد باسم Facts. يؤدي هذا الانتقال إلى تفعيل المشهد Facts، الذي يرسل رسالة المطالبة التالية إلى المستخدم: Would you like to hear a fact about cats or dogs? ضمن المشهد Facts هو نية المستخدم تُسمى Cat، وتحتوي على عبارات التدريب التي قد يقولها المستخدم لسماع حقائق حول القطط، مثل "أريد سماع حقيقة عن القطط. أو "cat". عندما يطلب المستخدم الاستماع إلى معلومة حول قطة، تتم مطابقة نية الشراء من Cat وتبدأ عملية انتقال إلى مشهد يُسمَّى Cat fact. ينشط المشهد Cat fact ويُرسل رسالة مطالبة إلى المستخدم تتضمن حقيقة القطط.

a78f549c90c3bff6.png

الشكل 1. سير عمل دورى عادي في المحادثات حول الإجراءات التي يتم إنشاؤها باستخدام أداة إنشاء المهام

تشكّل المشاهد والأغراض والعمليات الانتقالية معًا منطق محادثاتك وتحدّد المسارات المختلفة التي يمكن للمستخدم اتّباعها من خلال محادثتك. في القسم التالي، يمكنك إنشاء مشهد وتحديد كيفية تفعيل هذا المشهد بعد استدعاء المستخدم للإجراء.

الانتقال من الاستدعاء الرئيسي إلى المشهد

وفي هذا القسم، يمكنك إنشاء مشهد جديد اسمه Start ويُرسل إشعارًا إلى المستخدم يسأله عما إذا كان يريد الحصول على ثروته. ويمكنك أيضًا إضافة انتقال من الاستدعاء الرئيسي إلى مشهد Start الجديد.

لإنشاء هذا المشهد وإضافة انتقال إليه، اتبع الخطوات التالية:

  1. انقر على تطوير في شريط التنقل.
  2. انقر على الاستدعاء الرئيسي في شريط التنقل الجانبي.
  3. في قسم النقل، انقر على القائمة المنسدلة واكتب Start في حقل النص.

29e12dff950a3bce.png

  1. انقر على إضافة. يؤدي هذا الإجراء إلى إنشاء مشهد باسم Start، ويطلب من الإجراء الانتقال إلى مشهد Start بعد أن يؤدي الإجراء إلى تسليم رسالة الترحيب إلى المستخدم.
  2. انقر على مشاهد في شريط التنقل الجانبي لعرض قائمة المشاهد.
  3. ضمن المشاهد، انقر على بدء لمشاهدة مشهد Start.
  4. انقر على + في القسم Enter في مشهد Start.
  5. انقر على إرسال رسائل المطالبة.
  6. استبدل الجملة في الحقل speech (Enter the response that users will see or hear...) بسؤال لطرحه على المستخدم: Before you continue on your quest, would you like your fortune told?

3fc95466efd476f.png

  1. انقر على حفظ.

يوفّر "مساعد Google" رسالة المطالبة هذه (Before you continue on your quest...) للمستخدم عند الدخول إلى مشهد Start.

إضافة شرائح اقتراحات

تقدِّم شرائح الاقتراحات اقتراحات قابلة للنقر عليها يعالجها الإجراء الذي تُجريه كإدخال من المستخدم. وفي هذا القسم، يمكنك إضافة شرائح اقتراحات لدعم المستخدمين على الأجهزة ذات الشاشات.

لإضافة شرائح اقتراحات إلى رسالة مطالبة Start، يُرجى اتّباع الخطوات التالية:

  1. في المشهد Start، انقر على الاقتراحات. يضيف هذا الإجراء شريحة اقتراح واحدة.
  2. في الحقل title، استبدل Suggested Response بـ 'Yes'.
  3. أضِف شريحة اقتراحات بعنوان 'No' يدويًا باستخدام التنسيق نفسه. ومن المفترض أن يظهر الرمز في المقتطف التالي:
    suggestions:
      - title: 'Yes'
      - title: 'No'
  1. يُرجى النقر على حفظ.

2d13c2ada791ec26.png

اختبار الإجراء في المحاكي

في هذه المرحلة، يجب أن ينتقل الإجراء من الاستدعاء الرئيسي إلى مشهد Start ويسأل المستخدم إذا كان يريد حظه. ويجب أن تظهر شرائح الاقتراحات أيضًا في محاكاة العرض.

لاختبار "الإجراء" في المحاكي، اتّبِع الخطوات التالية:

  1. في شريط التنقل، انقر على اختبار للانتقال إلى المحاكي.
  2. لاختبار الإجراء في المحاكي، اكتب Talk to my test app في الحقل الإدخال واضغط على Enter. من المفترض أن يستجيب الإجراء منك مع رسالة المطالبة من Main invocation ورسالة المطالبة Start التي تمت إضافتها، "Before you continue on your quest, would you like your fortune told?".

تعرض لقطة الشاشة التالية هذا التفاعل:

ما مِن قيود

  1. انقر على شريحة الاقتراح Yes أو No للردّ على رسالة المطالبة. (يمكنك أيضًا قول "Yes" أو "No" أو إدخال Yes أو No في حقل الإدخال.)

عند الرد على السؤال، يستجيب الإجراء برسالة تشير إلى أنه غير قادر على فهم الإدخال الذي أدخلته: "عذرًا، لم أفهم ذلك. هل يمكن المحاولة من جديد・quot; بما أنّه لم يتم ضبط الإجراء بعد لاتّخاذ إجراء لفهم "Yes" أو "No" الإدخال، يتطابق الإجراء مع البيانات مع الغرض من NO_MATCH.

بشكل تلقائي، يوفِّر القصد من نظام NO_MATCH ردودًا عامة، ولكن يمكنك تخصيص هذه الاستجابات لإعلام المستخدم بأنك لم تفهم فهمها. ينهي "مساعد Google" محادثة المستخدم بالإجراء الذي تنفِّذه بعد تعذر مطابقة إدخال المستخدم ثلاث مرات.

إضافة yes الأهداف وno

الآن، وبعد أن يتمكن المستخدمون من الإجابة عن السؤال الذي يطرحه الإجراء، يمكنك ضبط الإجراء لفهم المستخدمين' والاستجابات ("Yes" أو "No"). في الأقسام التالية، عليك إنشاء أهداف المستخدم المطابقة عندما يقول المستخدم "Yes" أو "No" وتضيف هذه الأغراض إلى المشهد Start.

إنشاء هدف yes

لإنشاء هدف yes، يُرجى اتّباع الخطوات التالية:

  1. انقر على تطوير في شريط التنقل.
  2. انقر على عناصر intent المخصّصة في شريط التنقل لفتح قائمة عناصر intent.
  3. انقر على + علامة الجمع في نهاية قائمة الأهداف.
  4. أدخِل اسمًا للهدف الجديد yes ثم اضغط على Enter.
  5. انقر على هدف yes لفتح صفحة intent في yes.
  6. في قسم إضافة عبارات التدريب، انقر على مربع النص إدخال عبارة وأدخِل العبارات التالية:
  • Yes
  • Y
  • I would
  • Tell me

98440276cb9e7de8.png

  1. يُرجى النقر على حفظ.

إضافة هدف yes إلى مشهد Start

يمكن الآن أن يتعرّف الإجراء على الوقت الذي يعبّر فيه مستخدم عن هدف "yes";. يمكنك إضافة هدف المستخدم yes إلى المشهد Start لأن المستخدم يستجيب لرسالة المطالبة Start (&&;;;;;قبل المتابعة مع المهمة، هل تريد إخبار الحظ الذي تريده؟).

لإضافة قصد المستخدم هذا إلى مشهد Start، يُرجى اتّباع الخطوات التالية:

  1. انقر على المشهد ابدأ في شريط التنقل.
  2. انقر على علامة + (علامة الجمع) في المشهد Start بجانب التعامل مع هدف المستخدم.
  3. اختَر yes (نعم) في القائمة المنسدلة intent.

681928e3d71abdbf.png

  1. انقر على إرسال رسائل المطالبة وعدِّل الحقل speech باستخدام النص التالي: Your future depends on the aid you choose to use for your quest. Choose wisely! Farewell, stranger.

ويجب أن يظهر الرمز في المحرر مثل المقتطف التالي:

candidates:
  - first_simple:
      variants:
        - speech: >-
            Your future depends on the aid you choose to use for your quest. Choose
            wisely! Farewell, stranger.
  1. في قسم النقل، انقر على القائمة المنسدلة واختر إنهاء المحادثة.
  2. يُرجى النقر على حفظ.

اختبار القصد من yes في المحاكي

في هذه المرحلة، يفهم الإجراء الذي تريد اتخاذه أن المستخدم يريد سماع ثروته ويعرض الرد المناسب.

لاختبار هذا الهدف في المحاكي، اتّبع الخطوات التالية:

  1. في شريط التنقل، انقر على اختبار.
  2. لاختبار الإجراء في المحاكي، اكتب Talk to my test app في الحقل الإدخال واضغط على Enter.
  3. اكتب Yes في حقل الإدخال واضغط على Enter. بدلاً من ذلك، انقر على شريحة اقتراح نعم.

f131998710d8ffd8.png

يستجيب الإجراء الخاص بك للمستخدم ويخبره بأن ثروته تعتمد على المساعدة التي يختارها. بعد ذلك، يؤدي الإجراء إلى إنهاء الجلسة لأنك اخترت النقل إلى End conversation لهدف yes.

إنشاء هدف no

عليك الآن إنشاء هدف في no لفهم المستخدم والرد عليه عندما لا يريد سماع ثروته. لإنشاء هذا الهدف، اتّبع الخطوات التالية:

  1. انقر على تطوير في شريط التنقل.
  2. انقر على عناصر intent المخصّصة في شريط التنقل لفتح قائمة عناصر intent.
  3. انقر على + علامة الجمع في نهاية قائمة الأهداف.
  4. أدخِل اسمًا للهدف الجديد no ثم اضغط على Enter.
  5. انقر على no (لا) لفتح صفحة **no**Intent.
  6. في القسم إضافة عبارات تدريب، انقر على مربّع النص إدخال عبارة وأدخِل العبارات التالية:
  • No
  • N
  • I don't want
  • nope

2e7b8fd57eac94c5.png

  1. يُرجى النقر على حفظ.

إضافة هدف no إلى مشهد Start

الآن، يمكن للإجراء معرفة الوقت الذي يعبّر فيه مستخدم عن "no" أو شيء مشابه لـ "no" مثل "nope". عليك إضافة القصد من المستخدم no إلى المشهد Start لأن المستخدم يستجيب لـ Start رسالة المطالبة ("قبل المتابعة في المهمة، هل تريد معرفة الثروة التي تم إخبارها؟{6}).

لإضافة هذا القصد لمشهد Start، يُرجى اتّباع الخطوات التالية:

  1. انقر على المشهد ابدأ في شريط التنقل.
  2. انقر على علامة + (علامة الجمع) في المشهد Start بجانب التعامل مع هدف المستخدم.
  3. في القسم الهدف، اختر لا في القائمة المنسدلة.

4aa558abdecb3121.png

  1. انقر على إرسال رسائل المطالبة.
  2. تعديل الحقل speech باستخدام النص التالي: I understand, stranger. Best of luck on your quest! Farewell.

ويجب أن يظهر الرمز في المحرر مثل المقتطف التالي:

 candidates:
  - first_simple:
      variants:
        - speech: >-
             I understand, stranger. Best of luck on your quest! Farewell.
  1. في قسم النقل، اختر إنهاء المحادثة من القائمة المنسدلة.
  2. يُرجى النقر على حفظ.

اختبار القصد من no في المحاكي

في هذه المرحلة، سيفهم الإجراء الإجراء الذي يريد فيه المستخدم عدم سماع ثروته وعرض الرد المناسب.

لاختبار هذا الهدف في المحاكي، اتّبع الخطوات التالية:

  1. في شريط التنقل، انقر على اختبار.
  2. اكتب Talk to my test app في حقل الإدخال واضغط على Enter.
  3. اكتب No في حقل الإدخال واضغط على Enter. ويمكنك بدلاً من ذلك النقر على شريحة الاقتراح لا.

C0c8b04066577eb2.png

بدلاً من إعطاء المستخدم ثروته، يتمنّى "الإجراء" لديك بالتوفيق في رحلته. بعد ذلك، يؤدي الإجراء إلى إنهاء الجلسة لأنك اخترت النقل إلى End conversation لهدف no.

5. تنفيذ توصيل الطلب

في الوقت الحالي، ردودك في الحركة ثابتة، وعند تفعيل مشهد يتضمّن رسالة مطالبة، يرسل الإجراء الإجراء نفسه في كل مرة. في هذا القسم، يمكنك تنفيذ تنفيذ يحتوي على منطق لإنشاء استجابة محادثة ديناميكية.

ويحدّد توصيل الطلب ما إذا كان المستخدم هو مستخدم مكرّر الزيارة أم مستخدم جديد، ويعدّل رسالة الترحيب في الإجراء للمستخدمين المكرّري الزيارة. يتم تقصير رسالة الترحيب للمستخدمين مكرري الزيارة، كما تقر بما يلي: مرحبًا بك مرة أخرى في أرض غريفينبرغ الأسطورية!

في هذا الدرس التطبيقي حول الترميز، استخدِم أداة تعديل وظائف السحابة الإلكترونية في "وحدة التحكّم في المهام" لتعديل رمز التنفيذ ونشره.

يمكن أن يؤدي الإجراء الذي أجريته إلى تشغيل الردّ التلقائي على الويب الذي يُنبِّهك بأنّ الحدث قد وقع أثناء الاستدعاء أو أجزاء معيّنة من تنفيذ مشهد. عند تفعيل الردّ التلقائي على الويب، يرسل الإجراء الذي تقدّمه طلبًا يحتوي على بيانات أساسية بتنسيق JSON إلى عملية التنفيذ مع اسم المعالج لاستخدامه في معالجة الحدث. ينفذ هذا المعالج بعض المنطق ويعرض استجابة JSON المقابلة.

بناء توصيل المهام

يمكنك الآن تعديل استيفاء الإعلانات في المحرِّر المضمّن لإنشاء رسائل مطالبة مختلفة للمستخدمين المكرّري الزيارة والمستخدمين الجدد عند استدعاء الإجراء.

لإضافة هذا المنطق إلى حالة الطلبات، يُرجى اتّباع الخطوات التالية:

  1. انقر على تطوير في شريط التنقل.
  2. انقر على علامة التبويب الردّ التلقائي على الويب في شريط التنقل.
  3. ضع علامة في مربّع الاختيار الوظائف السحابية المضمّنة.
  4. انقر على تأكيد. تتم إضافة الرمز النموذجي تلقائيًا لملفات index.js وpackage.json.

d4702f1de6404285.png

  1. استبدل محتوى index.js بالرمز التالي:

ملف index.js

const { conversation } = require('@assistant/conversation');
const functions = require('firebase-functions');

const app = conversation({debug: true});

app.handle('greeting', conv => {
 let message = 'A wondrous greeting, adventurer! Welcome back to the mythical land of Gryffinberg!';
 if (!conv.user.lastSeenTime) {
   message = 'Welcome to the mythical land of  Gryffinberg! Based on your clothes, you are not from around these lands. It looks like you\'re on your way to an epic journey.';
 }
 conv.add(message);
});


exports.ActionsOnGoogleFulfillment = functions.https.onRequest(app);
  1. انقر على حفظ اكتمال الطلب.
  2. انقر على نشر الطلب.

انتظِر بضع دقائق حتى تتمكّن Cloud Functions من إدارة طلباتك ونشرها. من المفترض أن تظهر لك رسالة نشر وظائف السحابة الإلكترونية قيد التقدم... أعلى محرّر الرموز. عند نشر الرمز بنجاح، يتم تعديل الرسالة إلى نشر وظيفة السحابة الإلكترونية مُحدَّث.

فهم الرمز

الاستجابة، التي تستخدم مكتبة"المهام مع مساعد Google"لمعالجة Node.js، تستجيب لطلبات HTTP من"مساعد Google".

في مقتطف الرمز السابق، يمكنك تحديد معالج greeting الذي يتحقّق مما إذا كان المستخدم قد زار الإجراء في السابق من خلال التحقّق من السمة lastSeenTime. في حال عدم تحديد lastSeenTime، يكون المستخدم جديدًا، ويقدِّم المعالج greeting رسالة ترحيب جديدة للمستخدم.

تعديل الاستدعاء الرئيسي لتفعيل الرد التلقائي على الويب

الآن وبعد أن حدّدت دالة greeting، يمكنك ضبط معالج أحداث greeting في غرض الاستدعاء الرئيسي حتى يعرف الإجراء استدعاء هذه الدالة عندما يستدعي المستخدم الإجراء.

لضبط الإجراء لاستدعاء معالج greeting الجديد، اتّبِع الخطوات التالية:

  1. انقر على الاستدعاء الرئيسي في شريط التنقل.
  2. محو إرسال رسالة المطالبة
  3. ضَع علامة في مربّع الاختيار الاتصال بالرد التلقائي على الويب.
  4. أضف greeting في مربع النص.

a803afe4f7375a97.png

  1. يُرجى النقر على حفظ.

اختبار الاستدعاء الرئيسي المُحدَّث في المحاكي

لاختبار "الإجراء" في المحاكي، اتّبِع الخطوات التالية:

  1. في شريط التنقل، انقر على اختبار للانتقال إلى المحاكي.
  2. اكتب Talk to my test app في حقل الإدخال واضغط على Enter.

نظرًا لأنك اختبرت الإجراء في وقت سابق في هذا الدرس التطبيقي حول الترميز، لست مستخدمًا جديدًا، لذلك ستتلقى رسالة الترحيب المختصرة التالية: "ترحيب رائع، مغامرة! مرحبًا بك مرة أخرى في أرض غريفينبرغ الأسطورية!..."

نظِّم مشروعك [مستحسن]

لتجنّب دفع رسوم محتملة، ننصحك بإزالة المشاريع التي لا تنوي استخدامها. لحذف المشاريع التي أنشأتها في هذا الدرس التطبيقي حول الترميز، اتّبِع الخطوات التالية:

  1. لحذف مشروع وموارد Cloud، أكمِل الخطوات المذكورة في قسم إيقاف المشاريع (حذفها).
  1. اختياري: لإزالة مشروعك على الفور من "وحدة تحكُّم الإجراءات"، أكمِل الخطوات الواردة في قسم حذف مشروع. إذا لم تُكمل هذه الخطوة، ستتم إزالة مشروعك تلقائيًا بعد 30 يومًا تقريبًا.

6- تهانينا.

أنت على دراية بأساسيات إنشاء المهام مع "مساعد Google".

المجالات التي تناولتها

  • كيفية إعداد مشروع إجراءات باستخدام وحدة تحكّم المهام
  • كيفية إضافة رسالة مطالبة إلى الاستدعاء الرئيسي حتى يتمكن المستخدمون من بدء محادثة مع الإجراء
  • كيفية إنشاء واجهة محادثة تتضمّن المشاهد والأهداف وعمليات الانتقال وشرائح الاقتراحات والتوصيل
  • كيفية اختبار "الإجراء" باستخدام محاكي "الإجراءات"

مزيد من المعلومات

يمكنك الاطّلاع على المراجع التالية لمعرفة المزيد من المعلومات حول إنشاء المهام في خدمة "مساعد Google":

استطلاع الملاحظات

قبل المغادرة، يُرجى ملء استبيان مختصر حول تجربتك.