חישוב עמלות אגרה במסלול

כשמחשבים מסלול או מטריצת מסלול, מומלץ להביא בחשבון את עמלות האגרה במסלול. בערים נבחרות, ניתן לחשב את עמלת האגרה למסלול במטבע המתאים.

כדי לקבל כבישי אגרה עבור מטריצת מסלולים: חישוב עמלות האגרה במטריצת מסלולים.

אפשר לראות את רשימת מיקומי האגרות הנתמכים. TollPass.

איך אגרות מחושבות

ה-Routes API מחשב את עמלת האגרה המשוערת המערכת מביאה בחשבון הנחות או כרטיסים זמינים במחירי האגרה לנהג או לרכב, ואת אמצעי התשלום הנוחים ביותר. אם אין מחיר אגרה במסלול נתון, ה-Routs API מציין קיום של כבישי אגרה בתשלום לא ידוע.

כדי לקבל אומדנים מדויקים של כבישי אגרה, חשוב לכלול את הפרטים הבאים בבקשה שלך:

  • סוג הפליטה של הרכב שמשמש למסלול (VehicleEmissionType). אם לא תספקו את סוג הפליטה, האגרה של כלי רכב שמתדלקת בדלק היא הוחזרו.
  • כל כבישי האגרה מאפשרים נסיעה ברכב של הנהג או הנהג/ת באמצעות (TollPass). ה-API משתמש את אישורי האגרה כדי לקבוע את עמלות האגרה בצורה מדויקת, ולהציג מחירים במזומן. מתי אישורי האגרה בבקשה לא מקומיים במסלול.
  • אם צריך, מציינים הימנעות מכבישי אגרה. אם רוצים להימנע מכבישי אגרה ככל האפשר, צריך להוסיף את avoidTolls בתור RouteModifier.

חישוב כבישי אגרה באמצעות אישורי מעבר לכבישי אגרה

כדי לחשב את כבישי האגרה באמצעות אישורי מעבר, עליכם לציין את כל כבישי האגרה כחלק לבקשה. לאחר מכן ה-API מחזיר את מחירי הכרטיסים.

  • אם תציינו כרטיס אגרה לא תקף, המערכת תתעלם מהכרטיס.

  • אם מציינים כמה אישורי אגרה כמערך, ה-API ינסה לחשב את המחיר של המסלול לכל כרטיס.

אופן הפעולה של אישורי הנסיעה בכבישי אגרה עשוי להשתנות בהתאם לאזור.

  • המחירים עשויים להיות נמוכים יותר עם מינוי לכביש אגרה: באזורים מסוימים, נהג או רכב. משלמים כבישי אגרה שונים מאלה שאין להם אישור מעבר. לדוגמה, אם יש לך כל הכבוד! כבישי אגרה בסיאטל, וושינגטון, ארה"ב, התשלום שלך יהיה נמוך יותר מאשר אם אין לך עובר.

  • בכבישים מסוימים נדרש אישור מעבר לכבישי אגרה: באזורים מסוימים, כמו אינדונזיה, יש דרכים שמחייבים אישור מעבר לכבישי אגרה. אם לא תציינו מינוי לכביש אגרה מסלול שבו צריך כרטיס אגרה, ה-API לא מחזיר את מחיר האגרה.

חישוב עמלות האגרה למסלול

הדוגמה הבאה משתמשת computeRoutes שיטה להחזרת מידע על כבישי אגרה עם הערכה משוערת המחיר כשנעשה שימוש בכרטיס אגרה. בדוגמה הזו:

  • כדי להפעיל את החישוב, צריך להגדיר את השדה 'מערך' של extraComputations לערך TOLLS של כבישי אגרה.

  • מציינים את סוג הרכב ואת הסוג של מינוי האגרה באמצעות השדה routeModifiers בבקשה. מחיר האגרה שמוחזר מבוסס על במחיר שצוין לפי סוג הרכב וכרטיס המוצר. אם יותר מאישור אחד שמציין כרטיס, מוחזר המחיר הזול ביותר.

  • משתמשים במסכת שדות של תשובה כדי להגדיר את השיטה שיחזיר את פרטי האגרה בתשובה. בדוגמה הזאת, הבקשה כלל את המאפיינים הבאים במסכה של שדה התגובה:

    • השדה routes.travelAdvisory.tollInfo להחזרת מידע עבור את המסלול כולו.

    • routes.legs.travelAdvisory.tollInfo להחזרת מידע לכל רגל.

בקשה למידע על כבישי האגרה

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'

תשובה עם מידע על כבישי האגרה

התגובה מכילה מידע על כבישי אגרה TollInfo (REST) או אובייקט TollInfo (gRPC). כאן לדוגמה, אתה מחזיר מידע על כבישי אגרה עבור כל המסלול ועבור כל רגל את המסלול.

{
  "routes": [
    {
      "legs": [
        {
          "travelAdvisory": {
            "tollInfo": {
              "estimatedPrice": [
                {
                  "currencyCode": "USD",
                  "units": "4",
                  "nanos": 400000000
                }
              ]
            }
          }
        }
      ],
      "distanceMeters": 150338,
      "duration": "6650s",
      "travelAdvisory": {
        "tollInfo": {
          "estimatedPrice": [
            {
              "currencyCode": "USD",
              "units": "4",
              "nanos": 400000000
            }
          ]
        }
      }
    }
  ]
}