פעולות ממושכות

חלק מהשיטות של Dialogflow API מחזירות פעולה ממושכת. השיטות האלה הן אסינכרוניות, והפעולה עשויה שלא להסתיים כשהשיטה מחזירה תשובה. אתם יכולים לבדוק את הסטטוס או לבטל פעולות.

קבלת סטטוס של פעולה

בדוגמה הבאה אפשר לראות איך שולחים שאילתה כדי לבדוק את הסטטוס של פעולה. אם יש לכם הרבה פעולות לבדיקה, כדאי להגביל את קצב הקריאות או להשתמש בשיטה list.

REST

מבצעים קריאה ל-get עבור הסוג Operations.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • PROJECT_ID: מזהה הפרויקט ב-GCP
  • OPERATION_ID: מזהה הפעולה
  • API_VERSION: v2 או v2beta1

ה-method של ה-HTTP וכתובת ה-URL:

GET https://dialogflow.googleapis.com/API_VERSION/projects/my-gcp-project/operations/OPERATION_ID

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

אתם אמורים לקבל תגובת JSON שדומה לזו:

{
  "name": "projects/PROJECT_ID/operations/some-operation-name-OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.dialogflow.API_VERSION.SomeOperationType",
    "state": "DONE"
  },
  "done": true,
  ...
}

כשהפעולה מסתיימת, הפונקציה מחזירה את הערך state של SUCCESSFUL.

הצגת רשימה של פעולות וביטול שלהן

בנוסף לקבלת פעולה ספציפית, אפשר גם להציג רשימה של פעולות ולבטל פעולות. אפשר לעיין בשיטות list ו-cancel של הסוג Operations.

יכול להיות שהתוצאות list יכללו פעולות שלא קשורות למשימה הנוכחית, לכן חשוב לסנן את התוצאות.