Anda dapat menghitung jarak dan durasi rute untuk beberapa asal dan tujuan menggunakan metode ComputeRouteMatrix dari Routes Preferred API. ComputeRouteMatrix mendukung panggilan gRPC streaming dan panggilan HTTP REST.
Dengan daftar pasangan asal dan tujuan, ComputeRouteMatrix menghitung jarak dan durasi rute yang dimulai dari setiap asal dan berakhir di setiap tujuan. Setiap elemen streaming sesuai dengan informasi untuk satu rute.
Metode ComputeRouteMatrix memiliki beberapa keunggulan dibandingkan dengan Distance Matrix Service:
- Streaming memungkinkan elemen ditampilkan sebelum seluruh matriks dihitung, sehingga mengurangi latensi.
ComputeRouteMatrixmemiliki opsi mendetail untuk penghitungan traffic, sehingga Anda dapat membuat keputusan kompromi kualitas-latensi.- Permintaan dijalankan dengan prioritas yang lebih tinggi dalam infrastruktur Google, yang menghasilkan ketersediaan yang lebih tinggi.
- Anda dapat menentukan informasi arah (arah perjalanan) dan sisi jalan untuk titik jalan.
- Anda dapat meminta informasi tarif tol ditampilkan, bersama dengan jarak rute dan ETA.
Mengaktifkan metode ComputeRouteMatrix
Sebelum dapat menggunakan metode ComputeRouteMatrix dalam kode, Anda harus mengaktifkannya. Untuk mengetahui informasi selengkapnya tentang cara mengaktifkan metode Routes Preferred API, lihat Memulai.
Menggunakan metode ComputeRouteMatrix
Metode ComputeRouteMatrix tersedia melalui endpoint v1 Routes Preferred.
Lihat dokumentasi berikut untuk mengetahui informasi yang lebih mendetail:
Langkah-langkah umum berikut menjelaskan cara menggunakan gRPC untuk memanggil metode ComputeRouteMatrix:
Lihat protobuffer yang diperlukan dari repositori googleapis:
https://github.com/googleapis/googleapis/tree/master/google/maps/routes
Perhatikan bahwa beberapa sistem build, seperti Go, dapat melakukannya secara otomatis untuk Anda.
Menggunakan bahasa dan kumpulan alat build pilihan Anda, buat kode protobuffer yang relevan.
Buat permintaan Anda. Dua metadata yang diperlukan harus dikirim bersama permintaan:
- X-Goog-Api-Key harus ditetapkan ke kunci API Anda.
X-Goog-Fieldmask harus ditetapkan ke daftar kolom yang dipisahkan koma yang Anda perlukan dari respons. Misalnya, X-Goog-FieldMask: originIndex,destinationIndex,duration,distanceMeters,status. Anda dapat menggunakan karakter pengganti (*) untuk menunjukkan semua kolom, tetapi hal tersebut tidak disarankan. Gunakan karakter pengganti untuk menguji dan memahami respons API, tetapi cantumkan secara eksplisit kolom yang Anda inginkan dalam mask kolom di kode produksi.
Untuk mengetahui informasi selengkapnya tentang cara membuat string mask kolom, lihat https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/field_mask.proto. Perhatikan bahwa menonaktifkan kolom yang tidak Anda perlukan dapat mengurangi latensi karena kolom tersebut mungkin memerlukan komputasi lebih lanjut. Latensi Anda akan tetap stabil jika Anda menentukan kolom yang diperlukan dan kolom baru yang memerlukan lebih banyak komputasi ditambahkan nanti.
Kirim permintaan Anda ke
routespreferred.googleapis.com:443.Anda harus menggunakan protokol TLS.
Untuk mengetahui contoh penggunaan metode ComputeRouteMatrix, lihat
Contoh Menghitung Matriks Rute (Beta).
Salah satu fitur yang membedakan metode ComputeRouteMatrix adalah kode error dapat ditampilkan untuk seluruh streaming atau untuk setiap elemen. Misalnya, koneksi streaming menampilkan error jika permintaan salah format (misalnya, tidak memiliki asal). Namun, jika error hanya berlaku untuk beberapa elemen streaming (misalnya, menetapkan ID Tempat yang tidak valid untuk asal), hanya elemen yang terpengaruh oleh error yang berisi kode error.
Elemen yang ditampilkan oleh streaming tidak dijamin akan ditampilkan dalam urutan apa pun. Oleh karena itu, setiap elemen berisi origin_index dan destination_index. Untuk asal dan tujuan yang ditentukan oleh permintaan, asal rute setara dengan origins[origin_index] untuk elemen tertentu dan tujuan rute setara dengan destinations[destination_index]. Array ini diindeks nol. Penting untuk menyimpan urutan daftar asal dan tujuan.
Menghitung tarif tol
Untuk mengetahui informasi tentang cara menghitung tarif tol, lihat Menghitung tarif tol.
Untuk mengetahui contoh cara menghitung tarif tol, lihat Contoh Menghitung Matriks Rute.