Khi tính toán một tuyến đường hoặc ma trận tuyến đường, bạn nên cân nhắc mọi khoản phí cầu đường trên tuyến đường đó. Đối với một số thành phố, bạn có thể tính toán phí cầu đường ước tính cho một tuyến đường bằng đơn vị tiền tệ thích hợp.
Để lấy phí cầu đường cho ma trận tuyến đường, hãy xem bài viết Tính phí cầu đường cho ma trận tuyến đường.
Để biết danh sách các vị trí thu phí được hỗ trợ, hãy xem tài liệu tham khảo về TollPass.
Cách tính phí cầu đường
Routes API tính toán phí cầu đường ước tính, có tính đến mọi khoản chiết khấu hoặc thẻ đi qua trạm thu phí dành cho người lái xe hoặc phương tiện, cũng như các phương thức thanh toán thuận tiện nhất. Nếu không có giá đường thu phí cho một tuyến đường nhất định, thì Routes API sẽ cho biết có một trạm thu phí với mức phí không xác định.
Để nhận được thông tin ước tính chính xác về phí cầu đường, hãy nhớ cung cấp những thông tin sau trong yêu cầu của bạn:
- Loại khí thải của xe sử dụng trên tuyến đường
(
VehicleEmissionType
). Nếu không cung cấp loại khí thải, hệ thống sẽ trả về mức phí cầu đường của xe chạy bằng xăng. - Tất cả thẻ thu phí mà xe và người lái xe có sử dụng (
TollPass
). API sử dụng thẻ thu phí để xác định chính xác phí cầu đường và trả về giá bằng tiền mặt khi thẻ thu phí trong yêu cầu không phải là thẻ thu phí tại địa phương của tuyến đường. - Chỉ định tránh trạm thu phí (nếu cần). Nếu bạn muốn tránh đường thu phí khi có thể, hãy thêm
avoidTolls
dưới dạngRouteModifier
.
Tính phí cầu đường bằng phí cầu đường
Để tính phí cầu đường bằng thẻ thu phí, bạn chỉ định mọi thẻ thu phí trong yêu cầu. Sau đó, API sẽ trả về giá vé.
Nếu bạn chỉ định thẻ đường thu phí không hợp lệ, thẻ đó sẽ bị bỏ qua.
Nếu chỉ định nhiều lần thu phí cầu đường dưới dạng một mảng, API sẽ cố gắng tính toán giá cho tuyến đường của mỗi lần truyền.
Cách hoạt động của thẻ đường bộ có thể khác nhau tuỳ theo khu vực.
Mức giá có thể thấp hơn khi có thẻ thu phí: Ở một số khu vực, người lái xe hoặc xe có thẻ thu phí sẽ phải trả phí khác với những người không có thẻ. Ví dụ: nếu có thẻ thu phí Good To Go! ở Seattle, Washington, Hoa Kỳ, bạn sẽ phải trả phí thấp hơn so với khi không có thẻ.
Một số đường có thể yêu cầu thẻ thu phí: Một số khu vực, chẳng hạn như Indonesia, có các đường cần có thẻ thu phí. Nếu bạn không chỉ định thẻ đường thu phí cho một tuyến đường cần có thẻ đường thu phí, thì API sẽ không trả về giá đường thu phí.
Tính phí cầu đường cho một tuyến đường
Ví dụ sau đây sử dụng phương thức computeRoutes
để trả về thông tin về phí cầu đường kèm theo giá ước tính khi sử dụng thẻ cầu đường. Trong ví dụ này, bạn:
Đặt trường mảng
extraComputations
thànhTOLLS
để cho phép tính toán thông tin thu phí cầu đường.Chỉ định loại xe và loại thẻ thu phí bằng cách sử dụng trường
routeModifiers
của yêu cầu. Giá cầu đường được trả về dựa trên giá mà loại xe và thẻ được chỉ định sử dụng. Nếu có nhiều lượt truyền được chỉ định, thì giá thấp nhất sẽ được trả về.Sử dụng mặt nạ trường phản hồi để định cấu hình phương thức trả về thông tin tính phí trong phản hồi. Trong ví dụ này, yêu cầu bao gồm các thuộc tính sau trong mặt nạ trường phản hồi:
Trường
routes.travelAdvisory.tollInfo
để trả về thông tin cho toàn bộ tuyến.routes.legs.travelAdvisory.tollInfo
để trả về thông tin cho từng chặng.
Yêu cầu cung cấp thông tin về đường thu phí
curl -X POST -d '{ "origin":{ "location":{ "latLng":{ "latitude":42.340173523716736, "longitude":-71.05997968330408 } } }, "destination":{ "location":{ "latLng":{ "latitude":42.075698891472804, "longitude": -72.59806562080408 } } }, "travelMode": "DRIVE", "extraComputations": ["TOLLS"], "routeModifiers":{ "vehicleInfo":{ "emissionType": "GASOLINE" }, "tollPasses": [ "US_MA_EZPASSMA", "US_WA_GOOD_TO_GO" ] } }' \ -H 'Content-Type: application/json' \ -H 'X-Goog-Api-Key: YOUR_API_KEY' \ -H 'X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.travelAdvisory.tollInfo,routes.legs.travelAdvisory.tollInfo' \ 'https://routes.googleapis.com/directions/v2:computeRoutes'
Phản hồi chứa thông tin về phí cầu đường
Nội dung phản hồi chứa thông tin về phí cầu đường trong đối tượng TollInfo (REST) hoặc TollInfo (gRPC). Trong ví dụ này, bạn trả về thông tin về phí cầu đường cho toàn bộ tuyến đường và cho từng chặng của tuyến đường.
{ "routes": [ { "legs": [ { "travelAdvisory": { "tollInfo": { "estimatedPrice": [ { "currencyCode": "USD", "units": "4", "nanos": 400000000 } ] } } } ], "distanceMeters": 150338, "duration": "6650s", "travelAdvisory": { "tollInfo": { "estimatedPrice": [ { "currencyCode": "USD", "units": "4", "nanos": 400000000 } ] } } } ] }