運行にリアルタイムで変更を加えることができます。
ルートを停止するGTFS のルート更新情報
TripUpdate において、中止された既存のルートをユーザーに表示したくない場合は、trip.schedule_relationship=CANCELED
を使用します。それ以外の場合は、手順 2 で説明した GTFS の運行情報を使用します。GTFS の車両位置情報フィードを使ってルートを中止する方法はありません。
関連記事:
GTFS の運行情報
影響を受けるルートを対象に、effect=NO_SERVICE
か severity_level=SEVERE
を使って運行情報を追加します。対象となるルートは経路検索の結果に含まれますが、Google マップ アプリの運行中断セクションに表示されます。
関連記事:
手動による運行情報
GTFS の運行情報と同様の手順で、運行情報を手動で追加します。
関連記事:
GTFS のルート更新情報
駅や停留所はルート単位でスキップできます。駅や停留所ごとに運行を廃止するには、TripUpdate で scheduleRelationship = SKIPPED
を指定します。TripUpdate は個々のルートだけに適用されるため、すべてのルートについて同じことを繰り返す必要があります。なお、対象の駅や停留所が始点や終点の場合は、その経路検索全体に影響が及び、その駅や停留所を使うルートとは表示されなくなります。
この方法は、将来のルートではなく現在の個々のルートを対象にできるため、現在の短期間な中断を反映する場合に最適です。
関連記事:
GTFS の運行情報
effect=NO_SERVICE
を使った運行情報の対象は、TripDescriptor を使用していて影響を受けるルートです。この方法は、特定のルートで駅や停留所の使用を停止する際に利用できます。影響を受けるルートは、Google マップ アプリの運行停止セクションに表示されます。
この方法は、将来的に生じる計画的ダイヤ乱れを反映する場合に最適です。
関連記事:
手動による運行情報
GTFS の運行情報と同様の手順で、運行情報を手動で追加します。
関連記事:
GTFS のルート更新情報と車両位置情報
ルートを追加する方法は、ルート更新情報(TripUpdates)と車両位置情報(VehiclePositions)のどちらを使う場合でも同じです。TripUpdates か VehiclePositions の新しいメッセージで、同じ trip_id
と trip.schedule_relationship=ADDED
を使って(trip.schedule_relationship=SCHEDULED
は使いません)ルートを複製します。
ルートの全期間で、リアルタイム バンドルのエンティティが欠落しないようにしてください。
関連記事:
GTFS のルート更新情報
TripUpdates では、新しい駅(停留所)やプラットフォームに「Stop/platform」(stop_type=0
の駅エンティティ)を割り当てることができます。それには、対象となる新しい駅(停留所)やプラットフォームが同じ駅の一部である必要があります。そうでない場合は、元の駅(停留所)やプラットフォームとして location_type=1
の駅エンティティを使います。
例
GTFS のスケジュールでは正しいプラットフォーム情報を提供できません。なぜなら、このプラットホームは毎日変わる可能性があり、それは電車が入ってくるか駅に近づいてくるまでわからないからです。この場合、正しいプラットフォームがわかり次第すぐに割り当てるために、GTFS は駅そのものか、その駅の中で使われる可能性が最も高いプラットフォームを使用します。
関連記事: