Tentukan bagaimana dan apakah menyertakan data lalu lintas

Preferensi traffic yang Anda pilih menyeimbangkan akurasi detail rute dengan performa permintaan. Saat membuat permintaan, Anda perlu mempertimbangkan apakah lebih baik menampilkan hasil yang paling akurat, atau menampilkan hasil secepat mungkin. Routes API menyediakan opsi yang memungkinkan Anda mengontrol kualitas data respons vs latensi respons.

Menetapkan tingkat data traffic

Routes API menyediakan RoutingPreference (REST) dan RoutingPreference (gRPC) yang memungkinkan Anda menentukan preferensi pemilihan rute untuk menghitung rute. Preferensi ini berbeda dalam hal sejauh mana kondisi lalu lintas diperhitungkan dalam penghitungan rute. Setiap preferensi pemilihan rute menghasilkan hasil yang berbeda-beda terkait kualitas rute, estimasi ETA, dan latensi respons.

Kondisi lalu lintas mencirikan kecepatan aliran lalu lintas. Contoh:

  • Jika tidak ada kemacetan, kondisi lalu lintas dianggap normal, dan arus lalu lintas mengalir dengan kecepatan normal tanpa hambatan.
  • Menjelang jam sibuk, kepadatan lalu lintas meningkat, yang menyebabkan traffic melambat, sehingga menghasilkan kondisi lalu lintas ringan hingga sedang.
  • Dalam kemacetan total, laju aliran berhenti, sehingga menghasilkan kondisi lalu lintas yang padat.

Tidak mengetahui traffic

Saat Anda menetapkan preferensi pemilihan rute TRAFFIC_UNAWARE, rute dihitung tanpa mempertimbangkan kondisi lalu lintas saat ini. Preferensi pemilihan rute ini memberikan latensi respons terendah (respons ditampilkan dengan cepat).

TRAFFIC_UNAWARE adalah setelan default.

Dalam respons:

  • Perkiraan waktu tiba (ETA) terdapat dalam properti respons duration.

  • Properti respons duration dan staticDuration berisi nilai yang sama.

Gunakan preferensi pemilihan rute ini jika Anda ingin respons ditampilkan dengan cepat, dan detail pemilihan rute perkiraan sudah cukup baik.

Memahami traffic

Saat Anda menetapkan preferensi pemilihan rute TRAFFIC_AWARE, rute akan dihitung dengan mempertimbangkan kondisi lalu lintas saat ini. Akibatnya, rute dan detail rute lebih akurat mencerminkan kondisi dunia nyata. Karena peningkatan kualitas data ini diperoleh dengan mengorbankan latensi respons, pengoptimalan performa diterapkan untuk mengurangi sebagian besar latensi.

Dalam respons:

  • Perkiraan waktu tiba (ETA) yang mempertimbangkan traffic real-time terdapat dalam properti respons duration.

  • Properti respons staticDuration berisi durasi perjalanan melalui rute tanpa mempertimbangkan kondisi lalu lintas.

Gunakan preferensi pemilihan rute ini jika Anda menginginkan detail pemilihan rute yang lebih akurat daripada TRAFFIC_UNAWARE, tetapi Anda tidak keberatan jika respons ditampilkan dengan peningkatan latensi yang moderat.

Optimal sesuai lalu lintas

Saat Anda menetapkan preferensi pemilihan rute TRAFFIC_AWARE_OPTIMAL, rute dihitung dengan mempertimbangkan kondisi traffic saat ini, tetapi tidak ada pengoptimalan performa yang diterapkan. Dalam mode ini, server melakukan penelusuran jaringan jalan yang lebih lengkap untuk menemukan rute yang optimal.

Preferensi pemilihan rute TRAFFIC_AWARE_OPTIMAL setara dengan mode yang digunakan oleh maps.google.com dan oleh aplikasi seluler Google Maps.

Saat menggunakan opsi ini dengan Compute Route Matrix, jumlah elemen dalam permintaan (jumlah asal × jumlah tujuan) tidak boleh melebihi 100. Untuk mengetahui informasi selengkapnya tentang batas Compute Route Matrix, lihat Menghitung matriks rute.

Dalam respons:

  • Perkiraan waktu tiba (ETA) yang mempertimbangkan traffic real-time terdapat dalam properti respons duration.

  • Properti respons staticDuration berisi durasi perjalanan melalui rute tanpa mempertimbangkan kondisi lalu lintas.

Preferensi pemilihan rute ini memberikan latensi respons tertinggi (yaitu, respons ditampilkan dengan penundaan terpanjang). Gunakan preferensi pemilihan rute ini jika Anda ingin hasil dengan kualitas tertinggi, tanpa mempertimbangkan waktu yang diperlukan untuk respons.

Pengaruh setelan waktu keberangkatan

Anda dapat menggunakan properti departureTime secara opsional untuk menetapkan waktu keberangkatan perjalanan. Jika Anda tidak menetapkan properti departureTime, properti tersebut akan ditetapkan secara default ke waktu Anda membuat permintaan.

  • Untuk TRAFFIC_UNAWARE, Anda tidak dapat menetapkan departureTime karena pilihan rute dan durasi didasarkan pada jaringan jalan dan kondisi lalu lintas rata-rata tanpa memperhitungkan waktu.

  • Untuk TRAFFIC_AWARE dan TRAFFIC_AWARE_OPTIMAL, yang mempertimbangkan kondisi lalu lintas saat ini, lalu lintas saat ini menjadi lebih penting jika departureTime semakin dekat ke waktu sekarang. Makin jauh Anda menetapkan waktu keberangkatan di masa mendatang, makin banyak pertimbangan yang diberikan pada kondisi traffic historis.

Contoh setelan preferensi pemilihan rute

Kode JSON berikut menunjukkan cara menetapkan preferensi pemilihan rute dalam isi entitas pesan permintaan.

{
  "origin":{
    "location":{
      "latLng":{
        "latitude":37.419734,
        "longitude":-122.0827784
      }
    }
  },
  "destination":{
    "location":{
      "latLng":{
        "latitude":37.417670,
        "longitude":-122.079595
      }
    }
  },
  "travelMode":"DRIVE",
  "routingPreference":"TRAFFIC_AWARE_OPTIMAL"
}

Mengonfigurasi traffic pada polyline

Routes API memungkinkan Anda meminta informasi tentang kondisi lalu lintas sepanjang polyline yang mempertimbangkan lalu lintas. Lihat Meminta polyline untuk informasi selengkapnya.