برای تعریف Actions در Dialogflow، Intent ها را در عامل Dialogflow خود ایجاد می کنید و آنها را به عنوان نقاط ورودی به Action خود اختصاص می دهید. شما می توانید انواع زیر را ایجاد کنید:
- اقدام پیشفرض : هر عامل Dialogflow باید یک و تنها یک Action داشته باشد که وقتی کاربران از نام اقدام شما را درخواست میکنند (به عنوان مثال، "Ok Google. Talk to Facts about Google" یا "Ok, Google. اجازه دهید با Facts about Google صحبت کنم. " ).
- اهداف اضافی برای پیوند عمیق به مکالمه شما : این کنشها زمانی فعال میشوند که کاربران اقدام شما را با نام آن فراخوانی میکنند و یک عبارت فراخوانی را مشخص میکنند (بهعنوان مثال، «با حقایق درباره Google برای حقایق تاریخ صحبت کنید» ).
برای اطلاعات بیشتر در مورد نحوه عملکرد این مدلهای فراخوانی ، Intent و Invocation را ببینید.
یک اکشن پیش فرض را تعریف کنید
هر عامل Dialogflow باید یک و تنها یک هدف داشته باشد که رویداد GOOGLE_ASSISTANT_WELCOME را مدیریت کند. این هدف زمانی فعال میشود که کاربران اقدام شما را با نام آن فراخوانی کنند (به عنوان مثال، "Ok Google, talk to Facts about Google" ).
میتوانید رویداد GOOGLE_ASSISTANT_WELCOME را به روشهای زیر تعریف کنید:
از ویرایشگر قصد در کنسول Dialogflow:
- روی Intents در منوی پیمایش کلیک کنید.
- هدفی را که میخواهید به عنوان رویداد خوشآمدگویی تنظیم کنید، انتخاب کنید.
- در بخش رویدادهای intent،
GOOGLE_ASSISTANT_WELCOME
وارد کنید. روی ذخیره کلیک کنید.
شکل 1 . تصویری از بخش رویدادهای یک هدف Dialogflow.
از پنجره مدال ادغام دستیار Google:
- روی Integrations در منوی پیمایش کلیک کنید و روی Google Assistant کلیک کنید.
- روی X کلیک کنید تا مورد فعلی در قسمت فراخوان صریح حذف شود.
در کادر خوشآمدگویی ، هدفی را که میخواهید بهعنوان رویداد خوشآمدگویی تنظیم کنید، انتخاب کنید.
شکل 2 . تصویری از پنجره مدال ادغام دستیار Google در کنسول Dialogflow.
وقتی بخش رویدادهای intent را مشاهده میکنید، باید ببینید که intent اکنون دارای مجموعه رویداد GOOGLE_ASSISTANT_WELCOME است ( شکل 1 را ببینید).
اجرا را فعال کنید
به طور پیشفرض، یک هدف Dialogflow یک پاسخ ثابت را برمیگرداند که در بخش Response از intent مشخص شده است. این تنظیم ممکن است برای کنشهای سادهای که فقط باید در هنگام فراخوانی با همان پیام پاسخ دهند کافی باشد. با این حال، اگر میخواهید هدف یک پاسخ پویا را برگرداند، باید تحققی ارائه کنید که بتواند منطق پیچیده را پردازش کند و پاسخی را در زمان واقعی برای هدف ایجاد کند.
برای فعال کردن تحقق یک intent، موارد زیر را انجام دهید:
- به پایین ویرایشگر قصد یک intent بروید.
روی Fulfillment کلیک کنید و Enable webhook call for this intent را انتخاب کنید.
شکل 3 . تصویری از بخش Fulfillment یک هدف Dialogflow.
برای اطلاعات در مورد نحوه رسیدگی به این هدف در هنگام راهاندازی، به تکمیل ساخت مراجعه کنید.
اقدامات اضافی را تعریف کنید
می توانید اقدامات اضافی را ارائه دهید که به عنوان نقطه ورود به مکالمه شما عمل می کند. این تنظیم به کاربران امکان میدهد جزئیات بیشتری را درباره کاری که میخواهند انجام دهند مشخص کنند (به عنوان مثال، «با حقایق درباره Google صحبت کنید تا حقایق تاریخچه من را پیدا کنید» ).
برای تعریف اقدامات اضافی در Dialogflow، مراحل زیر را دنبال کنید:
- یک هدف برای یک Action خاص که می خواهید بسازید ایجاد کنید.
در قسمت عبارات آموزشی intent، الگوهایی را که این Action را فعال می کنند، مشخص کنید. برای مثال، اگر میخواهید Action با عبارت «Talk to Facts about Google to find me history facts» فراخوانی شود، عبارتهای آموزشی زیر را ارائه کنید:
- "حقایق تاریخ را برای من پیدا کن"
- "حقایق تاریخ را جستجو کنید"
- "حقایقی در مورد تاریخچه شرکت به من بدهید"
- "چند حقایق دفتر مرکزی را برای من بخوانید"
- "چند واقعیت در مورد دفتر مرکزی آن به من بگویید"
ما حداقل 10 عبارت آموزشی را برای هر هدف توصیه می کنیم.
برای فعال کردن تحقق هدف، به پایین صفحه بروید، روی Fulfillment کلیک کنید و Enable webhook call for this intent را انتخاب کنید. (برای جزئیات بیشتر در مورد تکمیل به ساخت تکمیل مراجعه کنید.)
روی ذخیره کلیک کنید.
روی Integrations در منوی پیمایش کلیک کنید و روی Google Assistant کلیک کنید. (پنجره مدال دستیار Google ظاهر می شود.)
در بخش Invocation ضمنی ، intent را اضافه کنید.
شکل 4 . تصویری از بخش فراخوان ضمنی در پنجره مدال ادغام دستیار Google.
هنگام تعریف Actions، محدودیت ها و دستورالعمل های زیر اعمال می شود:
- کلمات رزرو شده را در عبارات فراخوانی وارد نکنید.
- به عنوان مثال، عبارات فراخوانی خود را با «صحبت کن» یا «بگذار صحبت کنم» شروع نکنید.
- عبارات آموزشی که فقط حاوی یک موجودیت
@sys.any
هستند را مشخص نکنید.- خیلی دقیق تر باشید؛ به عنوان مثال،
find recipes for @sys.any
.
- خیلی دقیق تر باشید؛ به عنوان مثال،
رسیدگی به یک اقدام ناشناخته
وقتی کاربران سعی میکنند یک Action را فراخوانی کنند که Actions شما آن را تشخیص نمیدهد، Dialogflow میتواند قصدی برای رسیدگی به این موارد ایجاد کند.
برای فعال کردن این رفتار، یک intent جدید با زمینه ورودی google_assistant_welcome
ایجاد کنید و پاسخ های مناسب را به کاربران مشخص کنید:
- در منوی پیمایش، روی Intents کلیک کنید.
- روی Create Intent کلیک کنید و هدف خود را نام ببرید.
- در بخش Contexts ،
google_assistant_welcome
به عنوان زمینه ورودی مشخص کنید و کلید enter را فشار دهید. (پس از وارد کردن زمینه ورودی،google_assistant_welcome
به عنوان یک زمینه خروجی ظاهر می شود). برای حذف آن زمینه خروجی ، x را کلیک کنید.
در عبارات آموزشی ،
banana
(یا هر اسم دیگری) را به عنوان عبارت کاربر اضافه کنید.روی banana دوبار کلیک کنید و
@sys.any
را انتخاب کنید. (ما از موجودیت@sys.any
استفاده می کنیم تا به Dialogflow بگوییم که عبارت را به هر گرامر تعمیم دهد، نه فقط banana .)در بخش Response ، یک پاسخ را با استفاده از
$any
مشخص کنید. برای مثال از پاسخ زیر استفاده کنید:-
I'm sorry, I don't know how to help with $any.
-
روی ذخیره کلیک کنید.