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 )

ঐচ্ছিক। এই স্লটের জন্য একটি ডিফল্ট মান পূরণ করতে কনফিগারেশন।

প্রম্পটসেটিংস

একটি একক স্থান যেখানে স্লট প্রম্পট সংজ্ঞায়িত করা হয়।

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 )

ব্যবহারকারী যখন শেষবারের মতো একটি ইনপুট প্রদান না করে তখন দেওয়ার জন্য অনুরোধ করুন। উদাহরণ: "দুঃখিত, আমি বুঝতে পারিনি।"

কমিট আচরণ

বার্তাটি সফলভাবে পূরণ হওয়ার পরে স্লটের সাথে যুক্ত প্রতিশ্রুতিবদ্ধ আচরণের বর্ণনা দেয়।

YAML প্রতিনিধিত্ব
writeSessionParam: string
ক্ষেত্র
writeSessionParam

string

সেশন প্যারামিটারটি পূরণ করার পরে স্লটের মান লিখতে হবে। মনে রাখবেন নেস্টেড পাথগুলি বর্তমানে সমর্থিত নয়। "$$" স্লটের মতো একই নামের একটি সেশন প্যারামিটারে স্লট মান লিখতে ব্যবহৃত হয়। যেমন: writeSessionParam = "ফল" "$session.params.fruit" এর সাথে মিলে যায়। writeSessionParam = "টিকিট" "$session.params.ticket" এর সাথে মিলে যায়।

ডিফল্ট মান

এই স্লটের জন্য একটি ডিফল্ট মান পূরণ করতে কনফিগারেশন।

YAML প্রতিনিধিত্ব
sessionParam: string
constant: value
ক্ষেত্র
sessionParam

string

ঐচ্ছিক। সেশন প্যারামিটারটি স্লট মান শুরু করার জন্য ব্যবহার করা হবে, যদি এটির একটি অ-খালি মান থাকে। মানের প্রকার অবশ্যই স্লটের প্রকারের সাথে মিলবে। মনে রাখবেন নেস্টেড পাথগুলি বর্তমানে সমর্থিত নয়। যেমন: sessionParam = "fruit" $session.params.fruit এর সাথে মিলে যায়। sessionParam = "ticket" $session.params.ticket এর সাথে মিলে যায়।

constant

value ( Value format)

ঐচ্ছিক। স্লটের জন্য ধ্রুবক ডিফল্ট মান। এটি শুধুমাত্র তখনই ব্যবহার করা হবে যদি এই স্লটের জন্য একটি মান sessionParam মাধ্যমে পপুলেট করা না হয়। এই মানটির ধরন অবশ্যই স্লটের প্রকারের সাথে মিলবে।