रास्ते के जवाब की समीक्षा करें

यूरोपियन इकनॉमिक एरिया (ईईए) के डेवलपर

Routes API, किसी रास्ते का हिसाब लगाते समय, आपके दिए गए वेपॉइंट और कॉन्फ़िगरेशन पैरामीटर को इनपुट के तौर पर इस्तेमाल करता है. इसके बाद, एपीआई एक जवाब देता है. इसमें डिफ़ॉल्ट रूट और एक या उससे ज़्यादा वैकल्पिक रूट शामिल होते हैं.

आपके अनुरोध किए गए फ़ील्ड के आधार पर, आपके जवाब में अलग-अलग तरह के रास्ते और अन्य डेटा शामिल हो सकता है:

इसे जवाब में शामिल करने के लिए यह दस्तावेज़ देखें
वाहन के इंजन टाइप के हिसाब से, ईंधन या ऊर्जा की सबसे कम खपत वाला रास्ता. ईको-फ़्रेंडली रास्तों को कॉन्फ़िगर करना
ज़्यादा से ज़्यादा तीन वैकल्पिक रास्ते रास्ते के अन्य विकल्प का अनुरोध करना
पूरे रास्ते, रास्ते के हर चरण, और चरण के हर हिस्से के लिए पॉलीलाइन. रास्ते की पॉलीलाइन का अनुरोध करना
अनुमानित टोल टैक्स. इसमें ड्राइवर या वाहन के लिए उपलब्ध टोल टैक्स में मिलने वाली छूट या पास को ध्यान में रखा जाता है. टोल शुल्क का हिसाब लगाना
भाषा कोड और मेज़रमेंट यूनिट (इंपीरियल या मीट्रिक) के हिसाब से स्थानीय भाषा में जवाब. स्थानीय भाषा में अनुवाद की गई वैल्यू का अनुरोध करना
नेविगेशन के निर्देशों को एचटीएमएल टेक्स्ट स्ट्रिंग के तौर पर फ़ॉर्मैट करने के लिए, HTML_FORMATTED_NAVIGATION_INSTRUCTIONS को extraComputations में जोड़ें. ज़्यादा कैलकुलेशन

इनपुट के सभी विकल्पों की पूरी सूची देखने के लिए, रास्ते के उपलब्ध विकल्प और अनुरोध का मुख्य हिस्सा देखें.

जवाब का इस्तेमाल करके, अपने ग्राहकों को वह जानकारी दी जा सकती है जो उनकी ज़रूरतों के हिसाब से सही रास्ता चुनने के लिए ज़रूरी है.

फ़ील्ड मास्क के बारे में जानकारी

किसी रास्ते का हिसाब लगाने के लिए, किसी तरीके को कॉल करते समय, आपको फ़ील्ड मास्क तय करना होगा. इससे यह तय होता है कि आपको जवाब में कौनसे फ़ील्ड चाहिए. जवाब में मिले फ़ील्ड की कोई डिफ़ॉल्ट सूची नहीं होती. इस सूची को शामिल न करने पर, तरीके एक गड़बड़ी दिखाते हैं.

इस दस्तावेज़ में दिए गए उदाहरणों में, फ़ील्ड मास्क को ध्यान में रखे बिना पूरे रिस्पॉन्स ऑब्जेक्ट को दिखाया गया है. प्रोडक्शन एनवायरमेंट में, आपके जवाब में सिर्फ़ वे फ़ील्ड शामिल होंगे जिन्हें आपने फ़ील्ड मास्क में साफ़ तौर पर बताया है.

ज़्यादा जानकारी के लिए, जवाब में कौनसी जानकारी शामिल करनी है, यह तय करना लेख पढ़ें.

कॉपीराइट दिखाने के बारे में जानकारी

अपने उपयोगकर्ताओं को नतीजे दिखाते समय, आपको कॉपीराइट से जुड़ा यह स्टेटमेंट शामिल करना होगा:

Powered by Google, ©YEAR Google

उदाहरण के लिए:

Powered by Google, ©2023 Google

रास्तों, लेग, और चरणों के बारे में जानकारी

Routes API से मिले जवाब को देखने से पहले, आपको यह पता होना चाहिए कि किसी रास्ते में कौन-कौनसे कॉम्पोनेंट शामिल होते हैं:

रास्ता, लेग, और चरण.

आपके जवाब में, रास्ते के हर कॉम्पोनेंट के बारे में यह जानकारी शामिल हो सकती है:

  • रूट: यात्रा शुरू करने की जगह से लेकर, बीच में पड़ने वाले किसी भी वेपॉइंट से होते हुए, मंज़िल तक पहुंचने का पूरा रूट. किसी रास्ते में एक या उससे ज़्यादा लेग होते हैं.

  • लेग: किसी रास्ते में एक वेपॉइंट से दूसरे वेपॉइंट तक का पाथ. हर लेग में एक या उससे ज़्यादा अलग-अलग चरण होते हैं.

    किसी रास्ते में, हर वेपॉइंट से अगले वेपॉइंट तक के रास्ते के लिए एक अलग लेग होता है. उदाहरण के लिए, अगर रास्ते में एक ऑरिजिन वेपॉइंट और एक डेस्टिनेशन वेपॉइंट है, तो रास्ते में एक लेग होगा. शुरुआत और मंज़िल के बाद, रास्ते में जोड़े गए हर अतिरिक्त वेपॉइंट के लिए, एपीआई एक अलग लेग जोड़ता है. इसे इंटरमीडिएट वेपॉइंट कहा जाता है.

    एपीआई, पास-थ्रू इंटरमीडिएट वेपॉइंट के लिए लेग नहीं जोड़ता है. उदाहरण के लिए, अगर किसी रास्ते में यात्रा शुरू करने की जगह का वेपॉइंट, बीच में पड़ने वाला वेपॉइंट, और मंज़िल का वेपॉइंट शामिल है, तो यात्रा शुरू करने की जगह से मंज़िल तक पहुंचने के लिए सिर्फ़ एक लेग होगा. हालांकि, इस दौरान वेपॉइंट से होकर गुज़रना होगा. पास-थ्रू वेपॉइंट के बारे में ज़्यादा जानने के लिए, पास-थ्रू वेपॉइंट तय करना लेख पढ़ें.

  • चरण: किसी रास्ते के एक हिस्से के लिए दिया गया निर्देश. रास्ते का सबसे छोटा हिस्सा एक चरण होता है. उदाहरण के लिए, किसी चरण में "मुख्य सड़क पर बाईं ओर मुड़ें'' लिखा हो सकता है.

जवाब में क्या-क्या शामिल है

एपीआई से मिले रिस्पॉन्स को दिखाने वाले JSON ऑब्जेक्ट में, टॉप लेवल की ये प्रॉपर्टी शामिल होती हैं:

  • routes, Route टाइप के एलिमेंट का कलेक्शन. routes कलेक्शन में, एपीआई से मिले हर रास्ते के लिए एक एलिमेंट होता है. ऐरे में ज़्यादा से ज़्यादा पांच एलिमेंट हो सकते हैं: डिफ़ॉल्ट रूट, पर्यावरण के लिए बेहतर रूट, और ज़्यादा से ज़्यादा तीन वैकल्पिक रूट.

  • geocodingResults, GeocodingResults टाइप के एलिमेंट का एक कलेक्शन है. अनुरोध में मौजूद हर जगह (शुरुआत की जगह, डेस्टिनेशन या बीच का वेपॉइंट) के लिए, एपीआई जगह के आईडी की जानकारी ढूंढता है. आपने इन जगहों की जानकारी पते के स्ट्रिंग या प्लस कोड के तौर पर दी है. इस कलेक्शन के हर एलिमेंट में, किसी जगह से जुड़ा प्लेस आईडी होता है. अनुरोध में दी गई जगहों को जगह के आईडी या अक्षांश/देशांतर के निर्देशांक के तौर पर शामिल नहीं किया गया है. अगर आपने जगह की सभी जानकारी, जगह के आईडी या अक्षांश और देशांतर के निर्देशांकों का इस्तेमाल करके दी है, तो यह कलेक्शन नहीं दिया जाता.

  • fallbackInfo, जो FallbackInfo टाइप का है. अगर एपीआई, इनपुट की गई सभी प्रॉपर्टी के आधार पर कोई रास्ता नहीं ढूंढ पाता है, तो वह रास्ते का हिसाब लगाने के लिए किसी दूसरे तरीके का इस्तेमाल कर सकता है. फ़ॉलबैक मोड का इस्तेमाल किए जाने पर, इस फ़ील्ड में फ़ॉलबैक रिस्पॉन्स के बारे में ज़्यादा जानकारी होती है. ऐसा न होने पर, इस फ़ील्ड को सेट नहीं किया जाता.

जवाब इस फ़ॉर्म में होता है:

{
  // The routes array.
  "routes": [
    {
      object (Route)
    }
  ],
  // The place ID lookup results.
  "geocodingResults": [
    {
      object (GeocodedWaypoint)
    }
  ],
  // The fallback property.
  "fallbackInfo": {
    object (FallbackInfo)
  }
}

रास्तों के कलेक्शन को समझना

जवाब में routes कलेक्शन शामिल होता है. इसमें हर कलेक्शन एलिमेंट, Route टाइप का होता है. ऐरे का हर एलिमेंट, यात्रा शुरू करने की जगह से मंज़िल तक के पूरे रास्ते को दिखाता है. एपीआई हमेशा कम से कम एक रास्ता दिखाता है. इसे डिफ़ॉल्ट रास्ता कहा जाता है.

आपके पास अन्य रास्तों का अनुरोध करने का विकल्प होता है. अगर आपने ईको-फ़्रेंडली रास्ते का अनुरोध किया है, तो ऐरे में दो एलिमेंट हो सकते हैं: डिफ़ॉल्ट रास्ता और ईको-फ़्रेंडली रास्ता. इसके अलावा, जवाब में ज़्यादा से ज़्यादा तीन वैकल्पिक रास्ते जोड़ने के लिए, अनुरोध में computeAlternativeRoutes को true पर सेट करें.

कलेक्शन में मौजूद हर रूट की पहचान, routeLabels कलेक्शन प्रॉपर्टी से की जाती है:

वैल्यू ब्यौरा
DEFAULT_ROUTE यह कुकी डिफ़ॉल्ट रूट की पहचान करती है.
FUEL_EFFICIENT यह कुकी, ईको-फ़्रेंडली रास्ते की पहचान करती है.
DEFAULT_ROUTE_ALTERNATE I का मतलब है कि यह एक वैकल्पिक रास्ता है.

legs कलेक्शन में, रास्ते के हर लेग की परिभाषा शामिल होती है. बची हुई प्रॉपर्टी, जैसे कि distanceMeters, duration, और polyline, में पूरे रास्ते की जानकारी होती है:

{
  "routeLabels": [
    enum (RouteLabel)
  ],
  "legs": [
    {
      object (RouteLeg)
    }
  ],
  "distanceMeters": integer,
  "duration": string,
  "routeLabels": [string],
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "description": string,
  "warnings": [
    string
  ],
  "viewport": {
    object (Viewport)
  },
  "travelAdvisory": {
    object (RouteTravelAdvisory)
  }
  "routeToken": string
}

ड्राइविंग की मौजूदा स्थितियों और अन्य वजहों से, डिफ़ॉल्ट रूट और पर्यावरण के अनुकूल रूट एक ही हो सकता है. इस मामले में, routeLabels ऐरे में दोनों लेबल शामिल हैं: DEFAULT_ROUTE और FUEL_EFFICIENT.

{
  "routes": [
    {
      "routeLabels": [
        "DEFAULT_ROUTE",
        "FUEL_EFFICIENT"
      ],
     …
    }
  ]
}

लेग ऐरे को समझना

जवाब में मौजूद हर route में एक legs कलेक्शन होता है. इस legs कलेक्शन का हर एलिमेंट, RouteLeg टाइप का होता है. कलेक्शन में मौजूद हर लेग, रास्ते में एक वेपॉइंट से दूसरे वेपॉइंट तक के पाथ के बारे में बताता है. किसी रूट में हमेशा कम से कम एक लेग होता है.

legs प्रॉपर्टी में, steps ऐरे में मौजूद हर चरण की परिभाषा शामिल होती है. distanceMeters, duration, और polyline जैसी बाकी प्रॉपर्टी में लेग के बारे में जानकारी होती है.

{
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "steps": [
    {
      object (RouteLegStep)
    }
  ],
  "travelAdvisory": {
    object (RouteLegTravelAdvisory)
  }
}

चरणों की ऐरे को समझना

जवाब में मौजूद हर लेग में एक steps कलेक्शन होता है. इसमें मौजूद हर steps कलेक्शन एलिमेंट, RouteLegStep टाइप का होता है. एक चरण, पैर के साथ-साथ एक निर्देश से मेल खाता है. लेग में हमेशा कम से कम एक चरण होता है.

steps कलेक्शन में मौजूद हर एलिमेंट में, navigationInstruction प्रॉपर्टी शामिल होती है. यह NavigationInstruction टाइप की होती है. इसमें चरण के बारे में निर्देश शामिल होते हैं. उदाहरण के लिए:

"navigationInstruction": {
  "maneuver": "TURN_LEFT",
  "instructions": "Turn left toward Frontage Rd"
}

instructions में चरण के बारे में ज़्यादा जानकारी हो सकती है. उदाहरण के लिए:

"navigationInstruction": {
  "maneuver": "TURN_SLIGHT_LEFT",
  "instructions": "Slight left (signs for I-90 W/Worcester)nParts of this road may be closed at certain times or days"
}

चरण में मौजूद बाकी प्रॉपर्टी, चरण के बारे में जानकारी देती हैं. जैसे, distanceMeters, duration, और polyline:

{
  "distanceMeters": integer,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "navigationInstruction": {
    object (NavigationInstruction)
  }
}

चरण के निर्देशों की भाषा तय करना

यह एपीआई, रास्ते की जानकारी को स्थानीय भाषा में दिखाता है. अगर ज़रूरी हो, तो इसे उपयोगकर्ता की पसंदीदा भाषा में ट्रांसलिटरेट (लिपि बदलना) भी करता है. पते के सभी कॉम्पोनेंट, एक ही भाषा में दिखाए जाते हैं.

  • जिन भाषाओं में सुविधा उपलब्ध है उनकी सूची में से, रूट की भाषा को साफ़ तौर पर सेट करने के लिए, अनुरोध के languageCode पैरामीटर का इस्तेमाल करें. Google, अक्सर उन भाषाओं को अपडेट करता है जिनमें यह सुविधा काम करती है. इसलिए, हो सकता है कि इस सूची में पूरी जानकारी शामिल न हो.

  • अगर कोई नाम चुनी गई भाषा में उपलब्ध नहीं है, तो एपीआई सबसे मिलते-जुलते नाम का इस्तेमाल करता है.

  • बताई गई भाषा से, एपीआई के चुने गए नतीजों के सेट और उनके क्रम पर असर पड़ सकता है. जियोकोडर, भाषा के हिसाब से शॉर्ट फ़ॉर्म वाले शब्दों का अलग-अलग मतलब निकालता है. जैसे, सड़क के टाइप के लिए शॉर्ट फ़ॉर्म या ऐसे समानार्थी शब्द जो एक भाषा में मान्य हो सकते हैं, लेकिन दूसरी भाषा में नहीं. उदाहरण के लिए, हंगेरियन भाषा में utca और tér, street के समानार्थी शब्द हैं.

geocodingResults ऐरे को समझना

अनुरोध में दी गई हर जगह (शुरुआत, मंज़िल या बीच का वेपॉइंट) के लिए, एपीआई सबसे सही जगह ढूंढने की कोशिश करता है. यह जगह, पते के स्ट्रिंग या प्लस कोड के तौर पर दी गई हो. साथ ही, इसका प्लेस आईडी भी मौजूद हो. geocodingResults कलेक्शन के हर एलिमेंट में, placeID फ़ील्ड होता है. इसमें जगह की जानकारी, जगह के आईडी के तौर पर होती है. साथ ही, इसमें type फ़ील्ड होता है. इसमें जगह के टाइप की जानकारी होती है, जैसे कि street_address, premise या airport.

geocodingResults अरे में तीन फ़ील्ड होते हैं:

  • origin: अगर इसे पते की स्ट्रिंग या Plus code के तौर पर तय किया गया था, तो यह जगह की शुरुआत की जगह का आईडी होता है. ऐसा न होने पर, इस फ़ील्ड को जवाब में शामिल नहीं किया जाता.

  • destination: अगर इसे पते की स्ट्रिंग या Plus Code के तौर पर तय किया गया था, तो मंज़िल का प्लेस आईडी. ऐसा न होने पर, इस फ़ील्ड को जवाब में शामिल नहीं किया जाता.

  • intermediates: यह एक कलेक्शन है. इसमें किसी भी इंटरमीडिएट वेपॉइंट का प्लेस आईडी होता है. इसे पते की स्ट्रिंग या Plus code के तौर पर तय किया जाता है. अगर आपने किसी जगह के आईडी या अक्षांश और देशांतर के निर्देशांकों का इस्तेमाल करके, बीच के किसी वेपॉइंट की जानकारी दी है, तो उसे जवाब में शामिल नहीं किया जाता. जवाब में intermediateWaypointRequestIndex प्रॉपर्टी का इस्तेमाल करके यह पता लगाएं कि अनुरोध में मौजूद कौनसे इंटरमीडिएट वेपॉइंट, जवाब में मौजूद जगह के आईडी से मेल खाते हैं.

"geocodingResults": {
    "origin": {
        "geocoderStatus": {},
        "type": [
             enum (Type)
        ],
        "placeId": string
    },
    "destination": {
        "geocoderStatus": {},
        "type": [
            enum (Type)
        ],
        "placeId": string
    },
    "intermediates": [
        {
            "geocoderStatus": {},
            "intermediateWaypointRequestIndex": integer,
            "type": [
                enum (Type)
            ],
            "placeId": string
        },
        {
           "geocoderStatus": {},
           "intermediateWaypointRequestIndex": integer,
            "type": [
                enum (Type)
            ],
            "placeId": string
        }
    ]
}

स्थानीय भाषा में जवाब देने की सुविधा के बारे में जानकारी

स्थानीय भाषा में जवाब की वैल्यू, जवाब का एक अतिरिक्त फ़ील्ड होता है. यह पैरामीटर की रिटर्न वैल्यू के लिए, स्थानीय भाषा में टेक्स्ट उपलब्ध कराता है. यात्रा की अवधि, दूरी, और यूनिट सिस्टम (मेट्रिक या इंपीरियल) के लिए, स्थानीय भाषा में टेक्स्ट उपलब्ध कराया जाता है. फ़ील्ड मास्क का इस्तेमाल करके, स्थानीय भाषा में वैल्यू का अनुरोध किया जा सकता है. साथ ही, भाषा और यूनिट सिस्टम तय किया जा सकता है या एपीआई से मिली वैल्यू का इस्तेमाल किया जा सकता है. ज़्यादा जानकारी के लिए, LocalizedValues देखें.

उदाहरण के लिए, अगर आपने जर्मन (de) और इंपीरियल इकाइयों के लिए भाषा कोड तय किया है, तो आपको distanceMeters की वैल्यू 49889.7 मिलेगी. हालांकि, आपको स्थानीय भाषा में टेक्स्ट भी मिलेगा, जिसमें दूरी को जर्मन और इंपीरियल इकाइयों में बताया गया होगा. जैसे, "31 मील."

स्थानीय वैल्यू के लिए, आपको इस तरह की जानकारी दिखेगी:

{ "localized_values":
  {
    "distance": { "text": "31,0 Meile/n" },
    "duration": { "text": 38 Minuten}.
    "static_duration": { "text": 36 Minuten}.
  }
}

अगर भाषा या यूनिट सिस्टम की जानकारी नहीं दी जाती है, तो एपीआई भाषा और यूनिट का अनुमान इस तरह लगाता है:

  • ComputeRoutes तरीका, शुरुआती वेपॉइंट से जगह और दूरी की इकाइयों का अनुमान लगाता है. इसलिए, अमेरिका में राउटिंग के अनुरोध के लिए, एपीआई en-US भाषा और IMPERIAL इकाइयों का अनुमान लगाता है.
  • ComputeRouteMatrix तरीका डिफ़ॉल्ट रूप से 'en-US' भाषा और मीट्रिक इकाइयों के लिए सेट होता है.