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

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

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

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

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

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

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

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

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

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

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

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

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

Powered by Google, ©YEAR Google

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

Powered by Google, ©2023 Google

रूट, लेग, और स्टेप के बारे में जानकारी

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

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

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

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

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

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

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

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

जवाब में शामिल जानकारी

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

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

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

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

जवाब का फ़ॉर्मैट यह होता है:

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

`routes` कलेक्शन को समझना

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

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

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

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

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"
      ],
     
    }
  ]
}

`legs` कलेक्शन को समझना

RouteLeglegs कलेक्शन में मौजूद हर लेग, रूट के साथ एक वेपॉइंट से अगले वेपॉइंट तक के पाथ को तय करता है. रूट में हमेशा कम से कम एक लेग शामिल होता है.

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 कलेक्शन शामिल होता है. इस कलेक्शन का हर steps एलिमेंट, RouteLegStep टाइप का होता है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, सड़क के समानार्थी शब्द हैं.

`geocodingResults` कलेक्शन को समझना

अनुरोध में मौजूद हर जगह (यात्रा शुरू करने की जगह, मंज़िल या बीच का वेपॉइंट) , जिसे पते की स्ट्रिंग या Plus Code के तौर पर तय किया गया है, के लिए एपीआई, सबसे काम की जगह ढूंढने की कोशिश करता है. इस जगह का कोई जगह का आईडी होना चाहिए. geocodingResults कलेक्शन के हर एलिमेंट में, placeID फ़ील्ड शामिल होता है. इसमें जगह का आईडी और type फ़ील्ड शामिल होता है. 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 Meile."

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

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

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

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