REST Resource: providers.tasks

משאב: משימה

משימה ב-Delivery API מייצגת פעולה יחידה למעקב. באופן כללי, יש הבחנה בין Tasks שקשורות למשלוחים לבין משימות 'הפסקות'. לכל משלוח אפשר לשייך אליו כמה משימות. לדוגמה, יכולה להיות משימה אחת לאיסוף ומשימה אחת לאיסוף או להעברה. בנוסף, כלי רכב שונים יכולים לטפל במשימות שונות לכל משלוח. לדוגמה, רכב אחד יכול לטפל באיסוף עצמי ולהביא את המשלוח למרכז, ורכב אחר מנהל את אותו משלוח מהמרכז אל נקודת ההורדה.

הערה: ממשקי API ל-gRPC ול-REST משתמשים במוסכמות שונות של מתן שמות לשדות. לדוגמה, השדה Task.journey_sharing_info ב-API ל-gRPC והשדה Task.journeySharingInfo ב-API ל-REST מפנים לאותו שדה.

ייצוג JSON
{
  "name": string,
  "type": enum (Type),
  "state": enum (State),
  "taskOutcome": enum (TaskOutcome),
  "taskOutcomeTime": string,
  "taskOutcomeLocation": {
    object (LocationInfo)
  },
  "taskOutcomeLocationSource": enum (TaskOutcomeLocationSource),
  "trackingId": string,
  "deliveryVehicleId": string,
  "plannedLocation": {
    object (LocationInfo)
  },
  "taskDuration": string,
  "targetTimeWindow": {
    object (TimeWindow)
  },
  "journeySharingInfo": {
    object (JourneySharingInfo)
  },
  "taskTrackingViewConfig": {
    object (TaskTrackingViewConfig)
  },
  "attributes": [
    {
      object (TaskAttribute)
    }
  ]
}
שדות
name

string

חייב להיות בפורמט providers/{provider}/tasks/{task}.

type

enum (Type)

חובה. בלתי ניתן לשינוי. משמש להגדרת סוג המשימה. לדוגמה, הפסקה או משלוח.

state

enum (State)

חובה. מצב הביצוע הנוכחי של המשימה.

taskOutcome

enum (TaskOutcome)

התוצאה של המשימה.

taskOutcomeTime

string (Timestamp format)

חותמת הזמן שמציינת מתי הספק הגדיר את התוצאה של Task.

חותמת זמן ב-RFC3339 UTC 'Zulu' בפורמט של רזולוציה של ננו-שנייה ועד תשע ספרות עשרוניות. דוגמאות: "2014-10-02T15:01:23Z" ו-"2014-10-02T15:01:23.045123456Z".

taskOutcomeLocation

object (LocationInfo)

המיקום שבו נקבעה התוצאה של הTask. הערך הזה מעודכן כחלק מ-tasks.patch. אם הספק לא מעדכן באופן מפורש את הערך הזה, Fleet Engine יאכלס אותו כברירת מחדל במיקום הרכב הידוע האחרון (המיקום הגולמי).

taskOutcomeLocationSource

enum (TaskOutcomeLocationSource)

שדה זה מציין מאיפה הגיע הערך של taskOutcomeLocation.

trackingId

string

בלתי ניתן לשינוי. השדה הזה מאפשר לשמור את המזהה וכך להימנע משימוש במיפוי מורכב. לא ניתן להגדיר את trackingId ל-Tasks מסוג UNAVAILABLE ו-SCHEDULED_STOP. על המזהים האלה חלות ההגבלות הבאות:

  • חייבת להיות מחרוזת Unicode חוקית.
  • מוגבלת לאורך של 64 תווים לכל היותר.
  • מנורמלים בהתאם לטופס הנירמול של Unicode C.
  • לא יכול להכיל אף אחד מתווי ASCII הבאים: '/', ':', '?', ' או '#'.
deliveryVehicleId

string

פלט בלבד. המזהה של הרכב שמבצע את המשימה הזו. מזהי רכבים להעברה כפופים להגבלות הבאות:

  • חייבת להיות מחרוזת Unicode חוקית.
  • מוגבלת לאורך של 64 תווים לכל היותר.
  • מנורמלים בהתאם לטופס הנירמול של Unicode C.
  • לא יכול להכיל אף אחד מתווי ASCII הבאים: '/', ':', '?', ' או '#'.
plannedLocation

object (LocationInfo)

בלתי ניתן לשינוי. המיקום שבו המשימה תושלם. אופציונלי ל-UNAVAILABLE Tasks, אבל חובה לכל שאר המשימות.

taskDuration

string (Duration format)

חובה. בלתי ניתן לשינוי. הזמן הדרוש לביצוע משימה במיקום הזה.

משך זמן בשניות עם עד תשע ספרות עשרוניות, שמסתיים ב-'s'. לדוגמה: "3.5s".

targetTimeWindow

object (TimeWindow)

חלון הזמן שבמהלכו צריך להשלים את המשימה.

journeySharingInfo

object (JourneySharingInfo)

פלט בלבד. שדות ספציפיים לשיתוף תהליכים. לא מאוכלס כשהמדינה היא CLOSED.

taskTrackingViewConfig

object (TaskTrackingViewConfig)

התצורה של מעקב אחר משימות שמציינת אילו רכיבי נתונים יהיו גלויים למשתמשי הקצה ובאילו נסיבות.

attributes[]

object (TaskAttribute)

רשימה של מאפיינים מותאמים אישית למשימה. לכל מאפיין צריך להיות מפתח ייחודי.

סוג

סוג המשימה.

טיפוסים בני מנייה (enum)
TYPE_UNSPECIFIED כברירת מחדל, סוג המשימה לא ידוע.
PICKUP 'משימה לאיסוף' היא הפעולה שננקטה לאיסוף משלוח מהלקוח. באיסוף עצמי או במתקן לאיסוף רכבים, צריך להשתמש בסוג SCHEDULED_STOP.
DELIVERY משימת מסירה היא הפעולה שננקטת בקשר למסירת משלוח ללקוח קצה. הכלי להנחיתות של רכבים בתחנה או בפיד צריך להיות מסוג SCHEDULED_STOP.
SCHEDULED_STOP משימה עם עצירה מתוזמנת משמשת למטרות תכנון. לדוגמה, הוא יכול לייצג איסוף או מסירה של משלוחים מכלי רכב או מתחנות הזנה. אסור להשתמש בו למשלוחים שנאספים או מוסרים מלקוח קצה.
UNAVAILABLE משימה שמציינת שהרכב לא זמין לקבלת שירות. לדוגמה: מצב כזה יכול לקרות כשהנהג יוצא להפסקה או כשיש דלק לרכב.

TaskOutcomeLocationSource

זהות המקור שאיכלס את taskOutcomeLocation.

טיפוסים בני מנייה (enum)
TASK_OUTCOME_LOCATION_SOURCE_UNSPECIFIED תוצאת המשימה לפני הגדרתה.
PROVIDER הספק ציין את taskOutcomeLocation.
LAST_VEHICLE_LOCATION הספק לא ציין taskOutcomeLocation, ולכן Fleet Engine השתמש במיקום הרכב הידוע האחרון.

JourneySharingInfo

שיתוף שדות ספציפיים בתהליך.

ייצוג JSON
{
  "remainingVehicleJourneySegments": [
    {
      object (VehicleJourneySegment)
    }
  ],
  "lastLocation": {
    object (DeliveryVehicleLocation)
  },
  "lastLocationSnappable": boolean
}
שדות
remainingVehicleJourneySegments[]

object (VehicleJourneySegment)

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

המקטע הראשון, Task.journey_sharing_info.remaining_vehicle_journey_segments[0] (gRPC) או Task.journeySharingInfo.remainingVehicleJourneySegments[0] (REST), מכיל פרטי מסלול מהמיקום האחרון הידוע של הנהג אל VehicleStop הקרוב. המידע על המסלול הנוכחי בדרך כלל מגיע מאפליקציית הנהג, מלבד מקרים מסוימים שצוינו בתיעוד של DeliveryVehicle.current_route_segment. הפלחים האחרים ב-Task.journey_sharing_info.remaining_vehicle_journey_segments (gRPC) או ב-Task.journeySharingInfo.remainingVehicleJourneySegments (REST) מאוכלסים על-ידי Fleet Engine. הם מספקים פרטי מסלול בין שאר VehicleStops.

lastLocation

object (DeliveryVehicleLocation)

מציין את המיקום המדווח האחרון של הרכב שהוקצה.

lastLocationSnappable

boolean

מציינת אם ניתן להצמיד את המיקום האחרון של הרכב אל currentRouteSegment. הערך הזה מוגדר כ-False אם lastLocation או currentRouteSegment לא קיימים. הערך הזה מחושב על ידי Fleet Engine. המערכת מתעלמת מעדכונים מלקוחות.

TaskTrackingViewConfig

הודעת ההגדרה שקובעת מתי רכיב נתונים של משימה יהיה גלוי למשתמשי הקצה.

ייצוג JSON
{
  "routePolylinePointsVisibility": {
    object (VisibilityOption)
  },
  "estimatedArrivalTimeVisibility": {
    object (VisibilityOption)
  },
  "estimatedTaskCompletionTimeVisibility": {
    object (VisibilityOption)
  },
  "remainingDrivingDistanceVisibility": {
    object (VisibilityOption)
  },
  "remainingStopCountVisibility": {
    object (VisibilityOption)
  },
  "vehicleLocationVisibility": {
    object (VisibilityOption)
  }
}
שדות
routePolylinePointsVisibility

object (VisibilityOption)

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

estimatedArrivalTimeVisibility

object (VisibilityOption)

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

estimatedTaskCompletionTimeVisibility

object (VisibilityOption)

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

remainingDrivingDistanceVisibility

object (VisibilityOption)

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

remainingStopCountVisibility

object (VisibilityOption)

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

vehicleLocationVisibility

object (VisibilityOption)

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

VisibilityOption

הודעת האפשרות שקובעת מתי רכיב נתונים צריך להיות גלוי למשתמשי הקצה.

ייצוג JSON
{

  // Union field visibility_option can be only one of the following:
  "remainingStopCountThreshold": integer,
  "durationUntilEstimatedArrivalTimeThreshold": string,
  "remainingDrivingDistanceMetersThreshold": integer,
  "always": boolean,
  "never": boolean
  // End of list of possible types for union field visibility_option.
}
שדות
שדה איחוד visibility_option. אפשרות החשיפה הספציפית שנבחרה. visibility_option יכול להיות רק אחת מהאפשרויות הבאות:
remainingStopCountThreshold

integer

רכיב הנתונים הזה גלוי למשתמשי הקצה אם מספר העצירה שנותר <={/3}StopCountThreshold.

durationUntilEstimatedArrivalTimeThreshold

string (Duration format)

רכיב הנתונים הזה גלוי למשתמשי הקצה אם זמן ההגעה המשוער עד העצירה <= durationDurationArrivalTimeThreshold.

משך זמן בשניות עם עד תשע ספרות עשרוניות, שמסתיים ב-'s'. לדוגמה: "3.5s".

remainingDrivingDistanceMetersThreshold

integer

רכיב הנתונים הזה גלוי למשתמשי הקצה אם מרחק הנסיעה שנותר במטרים <=GmailDistanceMetersThreshold.

always

boolean

אם המדיניות מוגדרת כ-True, רכיב הנתונים הזה תמיד גלוי למשתמשי קצה ללא ערכי סף. לא ניתן להגדיר את השדה הזה כ-False.

never

boolean

אם המדיניות מוגדרת כ-True, רכיב הנתונים הזה תמיד מוסתר ממשתמשי הקצה ללא ערכי סף. לא ניתן להגדיר את השדה הזה כ-False.

שיטות

batchCreate

יוצרת ומחזירה קבוצה של אובייקטים חדשים מסוג Task.

create

יצירה ומחזירה של אובייקט Task חדש.

get

קבלת מידע על Task.

list

הפונקציה מקבלת את כל הפריטים מסוג 'Task' שעומדים בקריטריונים לסינון שצוינו.

patch

עדכון הנתונים של Task.