REST Resource: providers.tasks

リソース: タスク

Delivery API の Task は、トラッキングする単一のアクションを表します。通常、配送関連のタスクと休憩タスクは区別されます。1 つの配送に複数のタスクを関連付けることができます。たとえば、集荷用に 1 つのタスク、配達または移行用に 1 つのタスクを作成できます。また、特定の配送の異なるタスクは、異なる車両で処理される場合があります。たとえば、1 台の車両が集荷を担当し、荷物をハブまで運び、別の車両が同じ荷物をハブから集荷場所まで運ぶことができます。

注: gRPC API と REST API では、フィールドの命名規則が異なります。たとえば、gRPC API の Task.journey_sharing_info フィールドと REST API の Task.journeySharingInfo フィールドは同じフィールドを参照します。

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 の結果が設定された日時を示すタイムスタンプ。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

taskOutcomeLocation

object (LocationInfo)

Task の結果が設定された場所。この値は tasks.patch の一部として更新されます。この値がプロバイダによって明示的に更新されていない場合、Fleet Engine はデフォルトで、最後に確認された車両位置(元の位置)をこの値に設定します。

taskOutcomeLocationSource

enum (TaskOutcomeLocationSource)

taskOutcomeLocation の値の取得元を示します。

trackingId

string

変更不可。このフィールドを使用すると、ID を簡単に保存できるため、複雑なマッピングを使用する必要がなくなります。UNAVAILABLE 型と SCHEDULED_STOP 型のタスクに trackingId を設定することはできません。これらの ID には次の制限が適用されます。

  • 有効な Unicode 文字列である必要があります。
  • 最大長は 64 文字です。
  • Unicode 正規化形式 C に従って正規化されます。
  • 次の ASCII 文字を含めることはできません: '/'、':'、'?'、','、'#'。
deliveryVehicleId

string

出力専用。このタスクを実行している車両の ID。配送車両 ID には次の制限があります。

  • 有効な Unicode 文字列である必要があります。
  • 最大長は 64 文字です。
  • Unicode 正規化形式 C に従って正規化されます。
  • 次の ASCII 文字を含めることはできません: '/'、':'、'?'、','、'#'。
plannedLocation

object (LocationInfo)

変更不可。タスクが完了する場所。UNAVAILABLE タスクの場合は省略可ですが、他のすべてのタスクでは必須です。

taskDuration

string (Duration format)

必須。変更不可。このロケーションでタスクを実行するために必要な時間。

s で終わる小数 9 桁までの秒単位の期間。例: "3.5s"

targetTimeWindow

object (TimeWindow)

タスクを完了する必要がある時間枠。

journeySharingInfo

object (JourneySharingInfo)

出力専用。ジャーニー共有に固有のフィールド。ステータスが CLOSED の場合、入力されません。

taskTrackingViewConfig

object (TaskTrackingViewConfig)

タスク トラッキング用の構成。どのような状況でエンドユーザーに表示されるデータ要素を指定します。

attributes[]

object (TaskAttribute)

カスタム タスク属性のリスト。各属性には一意のキーが必要です。

タイプ

タスクのタイプ。

列挙型
TYPE_UNSPECIFIED デフォルトでは、タスクの種類は不明です。
PICKUP 集荷タスクは、お客様から荷物を集荷するために行うアクションです。デポまたはフィーダー車両の集荷には、SCHEDULED_STOP タイプを使用する必要があります。
DELIVERY 配送タスクは、エンド カスタマーに荷物を配送するために実行されるアクションです。デポまたはフィーダー車両のドロップオフには、SCHEDULED_STOP タイプを使用する必要があります。
SCHEDULED_STOP スケジュール設定された停止タスクは、計画目的で使用されます。たとえば、フィーダー車両やデポからの荷物の集荷や配達を表すことができます。エンド カスタマーから集荷または配送される荷物には使用しないでください。
UNAVAILABLE 車両を修理できないことを示すタスク。たとえば、ドライバーが休憩を取っているときや、車両が給油されているときに発生することがあります。

TaskOutcomeLocationSource

taskOutcomeLocation に入力されたソースの ID。

列挙型
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

車両の lastLocation を currentRouteSegment にスナップできるかどうかを示します。lastLocation または currentRouteSegment のいずれかが存在しない場合、この値は False になります。この値は 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

このデータ要素は、残りの停留所数が remainingStopCountThreshold 以下の場合、エンドユーザーに表示されます。

durationUntilEstimatedArrivalTimeThreshold

string (Duration format)

このデータ要素は、停留所までの所要時間が durationUntilEstimatedArrivalTimeThreshold 以下の場合、エンドユーザーに表示されます。

s で終わる小数 9 桁までの秒単位の期間。例: "3.5s"

remainingDrivingDistanceMetersThreshold

integer

このデータ要素は、残りの走行距離(メートル単位)が remainingDrivingDistanceMetersThreshold 以下の場合、エンドユーザーに表示されます。

always

boolean

true に設定すると、このデータ要素はしきい値なしでエンドユーザーに常に表示されます。このフィールドを false に設定することはできません。

never

boolean

true に設定すると、このデータ要素は常にしきい値なしでエンドユーザーに非表示になります。このフィールドを false に設定することはできません。

メソッド

batchCreate

新しい Task オブジェクトのバッチを作成して返します。

create

新しい Task オブジェクトを作成して返します。

delete

1 つのタスクを削除します。

get

Task に関する情報を取得します。

list

指定されたフィルタ条件を満たすすべての Task を取得します。

patch

Task データを更新します。