Scene

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

تمثيل YAML
onEnter: 
  object (EventHandler)
intentEvents: 
  - object (IntentEvent)
conditionalEvents: 
  - object (ConditionalEvent)
slots: 
  - object (Slot)
onSlotUpdated: 
  object (EventHandler)
الحقول
onEnter

object (EventHandler)

المعالِج الذي يجب استدعاءه عند الانتقال إلى هذا المشهد.

intentEvents[]

object (IntentEvent)

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

conditionalEvents[]

object (ConditionalEvent)

قائمة الأحداث المطلوب بدؤها استنادًا إلى العبارات الشرطية. يتم تقييمها بعد ملء النموذج أو مباشرةً بعد on_load إذا لم يتوفّر نموذج لهذا المشهد (يتم إجراء التقييم مرة واحدة فقط). ولن يبدأ سوى أول حدث مطابق.

slots[]

object (Slot)

قائمة مرتبة من الخانات. تحدِّد كل خانة نوع البيانات التي سيتم حلّها وإعدادها لتخصيص تجربة استخدام درجة الدقة هذه (مثل الطلبات).

onSlotUpdated

object (EventHandler)

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

الحيز

إعدادات لأحد الخانات. الشرائح عبارة عن وحدات فردية من البيانات يمكن ملؤها باللغة الطبيعية (أي معلّمات الأهداف) ومعلّمات الجلسات ومصادر أخرى.

تمثيل YAML
name: string
type: 
  object (ClassReference)
required: boolean
promptSettings: 
  object (PromptSettings)
commitBehavior: 
  object (CommitBehavior)
config: value
defaultValue: 
  object (DefaultValue)
الحقول
name

string

مطلوبة. اسم الخانة.

type

object (ClassReference)

مطلوبة. لتحديد نوع بيانات هذه الخانة.

required

boolean

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

promptSettings

object (PromptSettings)

اختياريّ. لتسجيل المطالبات للمراحل المختلفة من ملء الخانات.

commitBehavior

object (CommitBehavior)

اختياريّ. السلوك المرتبط بالخانة

config

value (Value format)

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

مثال: بالنسبة إلى خانة من النوع actions.type.CompletePurchaseValue، تقترح الإعدادات التالية طلب شراء سلعة رقمية مع إشارة إلى مَعلمة جلسة من تحديد العميل userSelectedSkuId:

{ "@type": "type.googleapis.com/ google.actions.transactions.v3.CompletePurchaseValueSpec", "skuId": { "skuType": "SKU_TYPE_IN_APP", "id": "$session.params.userSelectedSkuId", "packageName": "com.example.company" } }

defaultValue

object (DefaultValue)

اختياريّ. إعدادات لتعبئة قيمة تلقائية لهذه الخانة

PromptSettings

مكان واحد يتم فيه تحديد طلبات الخانة

تمثيل YAML
initialPrompt: 
  object (EventHandler)
noMatchPrompt1: 
  object (EventHandler)
noMatchPrompt2: 
  object (EventHandler)
noMatchFinalPrompt: 
  object (EventHandler)
noInputPrompt1: 
  object (EventHandler)
noInputPrompt2: 
  object (EventHandler)
noInputFinalPrompt: 
  object (EventHandler)
الحقول
initialPrompt

object (EventHandler)

مطالبة بقيمة الخانة نفسها مثال: "ما المقاس الذي تريده؟"

noMatchPrompt1

object (EventHandler)

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

noMatchPrompt2

object (EventHandler)

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

noMatchFinalPrompt

object (EventHandler)

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

noInputPrompt1

object (EventHandler)

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

noInputPrompt2

object (EventHandler)

مطالبة بإعطائه عندما لا يقدِّم المستخدم إدخالاً للمرة الثانية. مثال: "عذرًا، لم أفهم ذلك".

noInputFinalPrompt

object (EventHandler)

مطالبة بإعطائه عندما لا يقدِّم المستخدم إدخالاً لآخر مرة. مثال: "عذرًا، لم أفهم ذلك".

CommitBehavior

رسالة تصف سلوك الإتمام المرتبط بالخانة بعد ملئها بنجاح.

تمثيل YAML
writeSessionParam: string
الحقول
writeSessionParam

string

معلمة الجلسة لكتابة قيمة الخانة بعد ملئها. يُرجى العلم أنّ المسارات المتداخلة غير متاحة حاليًا. يتم استخدام "$$" لكتابة قيمة الخانة إلى معلَمة جلسة لها اسم الخانة نفسه. على سبيل المثال: يتطابق writeSessionParam = "fruit" مع "$session.params.fruit". writeSessionParam = "ticket" يتجاوب مع "$session.params.ticket".

DefaultValue

إعدادات لتعبئة قيمة تلقائية لهذه الخانة

تمثيل YAML
sessionParam: string
constant: value
الحقول
sessionParam

string

اختياريّ. معلمة الجلسة المراد استخدامها لإعداد قيمة الخانة، إذا كانت تتضمن قيمة غير فارغة. يجب أن يتطابق نوع القيمة مع نوع الخانة. يُرجى العلم أنّ المسارات المتداخلة غير متاحة حاليًا. على سبيل المثال: يتجاوب sessionParam = "fruit" مع $session.params.fruit. يتجاوب sessionParam = "ticket" مع $session.params.ticket.

constant

value (Value format)

اختياريّ. القيمة التلقائية الثابتة للخانة ولن يتم استخدام هذه السمة إلا إذا لم تتم تعبئة قيمة هذه الخانة من خلال sessionParam. يجب أن يتطابق نوع هذه القيمة مع نوع الخانة.