REST Resource: providers.tasks

المورد: مهمة

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

ملاحظة: تستخدم واجهات برمجة التطبيقات gRPC وREST اصطلاحات تسمية حقول مختلفة. على سبيل المثال، يشير الحقل Task.journey_sharing_info في واجهة برمجة التطبيقات gRPC والحقل Task.journeySharingInfo في واجهة برمجة التطبيقات 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) "زولو" بدقة نانوثانية وما يصل إلى تسعة أرقام كسرية. أمثلة: "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 للمهام من النوع UNAVAILABLE وSCHEDULED_STOP. تخضع أرقام التعريف هذه للقيود التالية:

  • يجب أن تكون سلسلة Unicode صالحة.
  • لا يتجاوز عدد الأحرف 64 حرفًا كحد أقصى.
  • تمت التسوية وفقًا لنموذج تسوية Unicode C.
  • لا يجوز أن يحتوي على أي من أحرف ASCII التالية: '/' أو ':' أو '?' أو ',' أو nofollow.
deliveryVehicleId

string

النتائج فقط. رقم تعريف المركبة التي تنفّذ هذه المهمة. تخضع معرّفات مركبات التسليم للقيود التالية:

  • يجب أن تكون سلسلة Unicode صالحة.
  • لا يتجاوز عدد الأحرف 64 حرفًا كحد أقصى.
  • تمت التسوية وفقًا لنموذج تسوية Unicode C.
  • لا يجوز أن يحتوي على أي من أحرف ASCII التالية: '/' أو ':' أو '?' أو ',' أو nofollow.
plannedLocation

object (LocationInfo)

غير قابل للتغيير. الموقع الذي سيتم فيه إكمال المهمّة اختيارية في "مهام UNAVAILABLE"، ولكنها مطلوبة لجميع "مهام Google" الأخرى

taskDuration

string (Duration format)

مطلوب. غير قابل للتغيير. الوقت اللازم لتنفيذ "مهمة" في هذا الموقع

مدة بالثواني مكونة من تسعة أرقام كسور كحد أقصى وتنتهي بالأرقام "s" مثال: "3.5s"

targetTimeWindow

object (TimeWindow)

الفترة الزمنية التي يجب أن تكتمل خلالها المهمة.

journeySharingInfo

object (JourneySharingInfo)

النتائج فقط. الحقول الخاصة بمشاركة رحلات البحث لا تتم تعبئة هذا الحقل عندما تكون الولاية هي CLOSED.

taskTrackingViewConfig

object (TaskTrackingViewConfig)

تهيئة تتبع المهام التي تحدد عناصر البيانات التي تكون مرئية للمستخدمين النهائيين تحت أي ظروف.

attributes[]

object (TaskAttribute)

قائمة بسمات "Task" المخصّصة يجب أن يكون لكل سمة مفتاح فريد.

النوع

نوع المهمة.

عمليات التعداد
TYPE_UNSPECIFIED نوع المهمة غير معروف بشكل تلقائي.
PICKUP مهمة الاستلام هي الإجراء الذي يتم اتخاذه لاستلام شحنة من العميل. يجب أن تستخدم عمليات استلام المركبات من المستودعات أو المركبات نوع SCHEDULED_STOP.
DELIVERY مهمة التسليم هي الإجراء الذي يتم اتخاذه لتسليم شحنة إلى العميل النهائي. يجب أن يستخدم خيار تسليم المركبات من المستودع أو خدمة التغذية النوع SCHEDULED_STOP.
SCHEDULED_STOP تُستخدم مهمة الإيقاف المجدولة لأغراض التخطيط. على سبيل المثال، يمكن أن تمثل التقاط أو تسليم الشحنات من مركبات الإطعام أو المستودعات. ولا ينبغي استخدامها لأي شحنات يتم استلامها أو تسليمها من عميل نهائي.
UNAVAILABLE مهمّة تعني أنّ المركبة غير متاحة للصيانة على سبيل المثال، يمكن أن يحدث ذلك عندما يأخذ السائق استراحة أو عندما تتم إعادة إضافة الوقود.

TaskOutcomeLocationSource

تشير هذه السمة إلى هوية المصدر الذي ملأ taskOutcomeLocation.

عمليات التعداد
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

يكون عنصر البيانات هذا مرئيًا للمستخدمين إذا كان عدد مرات التوقف المتبقي <= leftStopCountThreshold.

durationUntilEstimatedArrivalTimeThreshold

string (Duration format)

يكون عنصر البيانات هذا مرئيًا للمستخدمين النهائيين إذا كان الوقت المقدّر للوصول إلى المحطة <= durationUntilestimateArrivalTimeThreshold.

مدة بالثواني مكونة من تسعة أرقام كسور كحد أقصى وتنتهي بالأرقام "s" مثال: "3.5s"

remainingDrivingDistanceMetersThreshold

integer

يكون عنصر البيانات هذا مرئيًا للمستخدمين النهائيين إذا كانت المسافة المتبقية في السيارة بالأمتار <= سماعة وحدات المسافة المتبقية في القيادة - Threshold.

always

boolean

في حال ضبط عنصر البيانات هذا على "صحيح"، سيظهر دائمًا للمستخدمين النهائيين بدون حدود. لا يمكن ضبط هذا الحقل على "خطأ".

never

boolean

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

الطُرق

batchCreate

إنشاء مجموعة من كائنات Task الجديدة وإرجاعها

create

تنشئ كائن Task جديدًا وتعرضه.

get

الحصول على معلومات عن Task

list

الحصول على جميع Task التي تستوفي معايير الفلترة المحدّدة.

patch

يتم تعديل بيانات "Task".