यह दस्तावेज़, पुराने लेख का अपडेट किया गया वर्शन है. इसमें GMP API के पिछले वर्शन का इस्तेमाल किया गया था. इस कॉन्टेंट को Places API के नए वर्शन के हिसाब से अपडेट किया गया है. इसे 2023-24 में लॉन्च किया गया था. साथ ही, इसे Routes API के हिसाब से भी अपडेट किया गया है, जिसे 2023 में लॉन्च किया गया था.
आम तौर पर, जब कोई उपयोगकर्ता किसी दिलचस्पी की जगह (पीओआई) पर गाड़ी चला रहा होता है, तो उसे आस-पास की किसी जगह पर नेविगेट करने की ज़रूरत होती है. जैसे, पार्किंग या ऐक्सेस पॉइंट. मान लें कि किसी ड्राइवर को एयरपोर्ट या शॉपिंग मॉल जाना है. हवाई अड्डे जाते समय, ड्राइवर हवाई अड्डे के बीच में न जाकर किसी टर्मिनल या ड्रॉप-ऑफ़ पॉइंट पर पहुंचने की कोशिश कर रहा हो. इसी तरह, शॉपिंग सेंटर के बगल में मौजूद पार्किंग की जगह, कार वाले व्यक्ति के लिए ज़्यादा बेहतर विकल्प हो सकती है. इस मामले में, ड्राइवर को रास्ता बताने के लिए कोई ऐप्लिकेशन या सेवा डेवलप करते समय, सबसे पहले उस जगह की जानकारी ढूंढें जहां ड्राइवर को जाना है. इसके बाद, ड्राइवर को उस जगह के आस-पास मौजूद अन्य जगहों के विकल्प दें. इस तरीके से, अपने खरीदारों को बेहतर सेवा दी जा सकती है. साथ ही, यह दिखाया जा सकता है कि आपको उनके समय की कद्र है. इसके लिए, आपको डेवलपमेंट पर थोड़ा समय और मेहनत करनी होगी. हालांकि, इससे Google Maps Platform से मिले जगह की जानकारी के डेटा का फ़ायदा मिलेगा.

हम आपको दिखाएंगे कि अपनी मंज़िल के पास पार्किंग की सही जगह का पता लगाने के लिए, Places API और Routes API का इस्तेमाल क्रम से या एक साथ कैसे किया जा सकता है. इस सुविधा का मकसद, ड्राइविंग करते समय मंज़िल के आस-पास पहुंचने पर पार्किंग की जगह ढूंढने में होने वाली मुश्किलों को कम करना है. इन मामलों को ज़्यादा जानकारी के साथ लागू करने के दो उदाहरण देखें.
उदाहरण 1 - ऐसी जगह जो पर्यटकों के आकर्षण का केंद्र है, लेकिन वहां पार्किंग की सुविधा नहीं है
ऐसी जगह चुनें जो सड़क के किनारे न हो, ताकि रास्ते की जानकारी अलग से मिल सके. मंज़िल के तौर पर पेरिस में नोट्रे डेम को चुनें. साथ ही, शुरुआती जगह के तौर पर गेर दे ल'एस्त रेलवे स्टेशन (48.87697775149635, 2.3592247806755564) को चुनें.

ड्राइवर, नौत्र देम से करीब 16 मिनट की दूरी पर उत्तर की ओर स्टेशन छोड़ता है. नोत्र देम, एक मशहूर टूरिस्ट अट्रैक्शन है. यह एक टापू पर है और यहां पुल से पहुंचा जा सकता है. यहां कुछ सड़कें वन-वे हैं और आस-पास कोई बड़ा पार्किंग लॉट उपलब्ध नहीं है. इसलिए, यह एक दिलचस्प चुनौती होनी चाहिए.
1. Places API का अनुरोध
Places API के इस उदाहरण में, Notre Dame को ढूंढने के लिए टेक्स्ट से खोजने की सुविधा का इस्तेमाल किया जा रहा है. ज़्यादा जानकारी के लिए, डेवलपर का दस्तावेज़ देखें. इन उदाहरणों में "$APIKEY" वह एपीआई पासकोड है जो आपने Google Cloud Console में Google Maps Platform Places और Routes API के लिए बनाया है. ज़्यादा जानकारी के लिए, Google Maps Platform का इस्तेमाल शुरू करने से जुड़ा दस्तावेज़ देखें.
Places API के नए अनुरोधों का फ़ॉर्मैट नया है. जवाब के फ़ील्ड अब तय नहीं किए गए हैं. इसलिए, डेवलपर के तौर पर आपको हेडर में फ़ील्डमास्क तय करना होगा. fieldmask का इस्तेमाल करने के बारे में दस्तावेज़ में बताया गया है.
curl -X POST --data @notre_dame.json \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: $APIKEY" \
-H 'X-Goog-FieldMask: places.id,places.displayName,places.formattedAddress,places.location' \
'https://places.googleapis.com/v1/places:searchText'
खोज के पैरामीटर के लिए, "notre_date.json" कॉन्टेंट के साथ:
{
"textQuery": "Notre Dame, Paris",
"languageCode": "en"
}
ऊपर दिए गए अनुरोध के जवाब में, अक्षांश और देशांतर के ये निर्देशांक दिए गए हैं:
{
"places": [
{
"id": "ChIJATr1n-Fx5kcRjQb6q6cdQDY",
"formattedAddress": "6 Parvis Notre-Dame - Pl. Jean-Paul II, 75004 Paris, France",
"location": {
"latitude": 48.852968200000007,
"longitude": 2.3499021
},
"displayName": {
"text": "Cathédrale Notre-Dame de Paris",
"languageCode": "en"
}
}
]
}
जैसा कि आपको दिख रहा है, निर्देशांकों से नोट्रा-डेम का पता चलता है.
|
|
डेवलपर या सेवा देने वाली कंपनी के तौर पर, ड्राइवर को अपने-आप यह प्रॉम्प्ट दिखाना एक अच्छा विचार है: "क्या आपको नोट्रे डेम के आस-पास पार्किंग की जगह चाहिए?" इसके अलावा, अगर ड्राइवर के पास इलेक्ट्रिक वाहन है, तो आपको चार्जिंग स्टेशन खोजना चाहिए. उपयोगकर्ता का अनुभव, डिवाइस और स्क्रीन के हिसाब से अलग-अलग होगा. हालांकि, इस मामले में कुछ समय बाद गायब होने वाले डायलॉग टेक्स्ट का इस्तेमाल किया जा सकता है. नोट्रे डेम के आस-पास पार्किंग ढूंढने के लिए, Places API की मदद से आस-पास की जगहें खोजें. इसके लिए, "parking" और "electric_vehicle_charging_station" टाइप का इस्तेमाल करें. साथ ही, 500 मीटर का दायरा तय करें. नीचे दिए गए उदाहरण में, नतीजों को नोट्रे डेम से 500 मीटर के दायरे में मौजूद पार्किंग की जगहों के हिसाब से व्यवस्थित किया जाएगा.
curl -X POST -d '{
"includedTypes": ["parking", "electric_vehicle_charging_station"],
"maxResultCount": 10,
"rankPreference": "DISTANCE",
"locationRestriction": {
"circle": {
"center": {
"latitude": 48.852968200000007,
"longitude": 2.3499021},
"radius": 500.0
}
}
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: $APIKEY" \
-H "X-Goog-FieldMask: places.displayName,places.location" \
https://places.googleapis.com/v1/places:searchNearby
पहला नतीजा, 48.854981, 2.350629 पर मौजूद चार्जिंग स्टेशन का है. हालांकि, इस उदाहरण को चलाने के समय, आपके नतीजे अलग-अलग हो सकते हैं. इस जगह का इस्तेमाल अगले हिस्से में करें, जहां हम Routes API से अनुरोध कर रहे हैं.
2. Routes API का अनुरोध
स्टेशन से नोट्र डैम के पास मौजूद चार्जिंग स्टेशन तक का रास्ता ढूंढने के लिए, आपको Routes API का अनुरोध करना होगा. बस ऑरिजिन और डेस्टिनेशन पैरामीटर सेट करें. ज़्यादा विकल्पों के लिए, डेवलपर दस्तावेज़ देखें.
curl -X POST -d '{
"origin":{
"location":{
"latLng":{
"latitude": 48.87697775149635,
"longitude": 2.3592247806755564
}
}
},
"destination":{
"location":{
"latLng":{
"latitude": 48.854981,
"longitude": 2.350629
}
}
},
"travelMode": "DRIVE",
"routingPreference": "TRAFFIC_AWARE",
"departureTime": "2024-05-16T15:01:23.045123456Z",
"computeAlternativeRoutes": false,
"routeModifiers": {
"avoidTolls": false,
"avoidHighways": false,
"avoidFerries": false
},
"languageCode": "en-US",
"units": "METRIC"
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: $APIKEY" \
-H 'X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.legs,routes.polyline.encodedPolyline' \
'https://routes.googleapis.com/directions/v2:computeRoutes'
Routes API से मिले जवाब में, आम तौर पर रास्ते के कई सुझाव होते हैं. जवाब में रास्ते का डेटा शामिल करने के लिए, फ़ील्डमास्क में "routes.legs" को तय करें. हर रास्ते में कई "लेग" होते हैं. इनमें कई "स्टेप" होते हैं, जिनमें यात्रा की दूरी और निर्देशांक दिखाए जाते हैं. कार से पहुंचने लायक आखिरी निर्देशांक ढूंढने के लिए, चुने गए रास्ते के आखिरी चरण के "endLocation" फ़ील्ड का इस्तेमाल करें. "latitude": 48.854937299999996, "longitude": 2.3505841999999997
यह जगह शायद आपकी पहली पसंद न हो, लेकिन मैप या Google Street View पर देखने से पता चलता है कि यह जगह नॉट्रेडम से बहुत कम दूरी पर है. यहां पैदल पहुंचने में करीब 6 से 7 मिनट लगते हैं.

चार्जिंग स्टेशन की पार्किंग से नौट्रे डैम तक का पैदल रास्ता
उदाहरण 1 के लिए खास जानकारी
जैसा कि आप देख सकते हैं, कार के लिए पार्किंग की जगह ढूंढने के लिए, सिर्फ़ कुछ एपीआई कॉल की ज़रूरत होती है. साथ ही, ड्राइवर को सुझाव दिखाया जाता है. इससे उपयोगकर्ताओं का समय बचता है, क्योंकि उन्हें एकतरफ़ा सड़कों पर ड्राइव नहीं करना पड़ता. साथ ही, उन्हें भीड़-भाड़ वाली जगहों पर कार पार्क करने के लिए जगह नहीं ढूंढनी पड़ती. खास जानकारी के तौर पर, हमने ये एपीआई अनुरोध किए हैं:
- नोट्रे डेम के निर्देशांक खोजने के लिए, Places API की मदद से टेक्स्ट से खोज करने का अनुरोध
- Places API की आस-पास की खोज सुविधा का इस्तेमाल करके, उन निर्देशांकों से 500 मीटर के दायरे में इलेक्ट्रिक कार चार्जिंग स्टेशन वाली पार्किंग की जगह ढूंढना
- चार्जिंग स्टेशन तक जाने का रास्ता खोजने के लिए, Routes API का अनुरोध
उदाहरण 2 - बड़े हवाई अड्डे में किसी टर्मिनल तक पहुंचने का रास्ता दिखाना

एक और उदाहरण पर विचार करें, जहां ड्राइवर को एक बड़े इलाके में जाना है. इस इलाके में कई जगहें, पीओआई या संभावित ड्रॉप-ऑफ़ पॉइंट हैं. ड्राइवर, यूके के वेम्बली स्टेडियम (51.557263604707224, -0.2794575145680608) से निकल रहा है और उसे लंदन हीथ्रो एयरपोर्ट के टर्मिनल 5 पर जाना है.
Places API की ऑटोकंप्लीट सुविधा की सबसे अच्छी बात यह है कि इसमें प्राइमरी टाइप को खोज के मानदंड के तौर पर तय किया जा सकता है. साथ ही, एपीआई संभावित खोज नतीजों के तौर पर सब-प्रीमाइसेस का अनुमान लगाता है. इस मामले में इसका मतलब है कि हवाई अड्डे और पार्किंग की जगहें खोजने पर, टर्मिनल या कार पार्क भी दिखेंगे. दस्तावेज़ में शामिल या बाहर रखे जाने वाले टाइप की पूरी सूची देखी जा सकती है.
curl -X POST -d '{
"input": "Heathrow",
"includedPrimaryTypes": ["airport", "parking"]
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: $APIKEY" \
https://places.googleapis.com/v1/places:autocomplete
ऊपर दी गई क्वेरी से हमें उन टर्मिनल और उन टर्मिनल पर मौजूद ड्रॉप-ऑफ़ पॉइंट की सूची मिलती है. नतीजों की सूची में, हमें "लंदन हीथ्रो एयरपोर्ट टर्मिनल 5" और उसका प्लेस आईडी मिल सकता है:
"place_id" : "ChIJo21hnPxxdkgRksRL0KQRWII",
"placeId" पैरामीटर का इस्तेमाल करके, हम Routes API को यह बता सकते हैं कि हमें किसी जगह पर पहुंचना है, न कि किसी मनमाने निर्देशांक पर.
curl -X POST -d '{
"origin":{
"location":{
"latLng":{
"latitude": 51.557263604707224,
"longitude": -0.2794575145680608
}
}
},
"destination":{
"placeId": "ChIJo21hnPxxdkgRksRL0KQRWII"
},
"travelMode": "DRIVE",
"routingPreference": "TRAFFIC_AWARE",
"departureTime": "2024-05-16T15:01:23.045123456Z",
"computeAlternativeRoutes": false,
"languageCode": "en-US",
"units": "METRIC"
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key: $APIKEY" \
-H 'X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.legs,routes.polyline.encodedPolyline' \
'https://routes.googleapis.com/directions/v2:computeRoutes'
पिछले उदाहरण की तरह ही, JSON रिस्पॉन्स में दिए गए सभी चरणों को पढ़कर, आपको यात्रा का आखिरी हिस्सा और मंज़िल की अक्षांश और देशांतर की जानकारी (51.4714348, "longitude": -0.48967890000000003) मिलेगी.

उदाहरण 2 के लिए खास जानकारी
पिछले उदाहरण की तरह, ड्राइवर को बेहतर दिशा-निर्देश देने के लिए, डेवलपमेंट में बहुत कम मेहनत लगती है. साथ ही, ड्राइवर के समय की बचत के फ़ायदों का आकलन किया जा सकता है. हमने ये अनुरोध किए हैं:
- हीथ्रो एयरपोर्ट के टर्मिनल 5 को खोजने के लिए, Places API की अपने-आप पूरी होने वाली सुविधा (नई) का इस्तेमाल करके किया गया अनुरोध
- वेम्बली से टर्मिनल 5 तक का रास्ता पाने के लिए Routes API का अनुरोध
इस उदाहरण में, Places API की नई सुविधाओं के बारे में सिर्फ़ बुनियादी जानकारी दी गई है. जगह के कुछ नए टाइप देखें. जैसे, हवाई पट्टी और अंतरराष्ट्रीय हवाई अड्डा.
नतीजा
जैसा कि आप देख सकते हैं, कार से यात्रा करने वाले अपने ग्राहकों को प्रीमियम सेवा देने के लिए, आपको ज़्यादा मेहनत करने की ज़रूरत नहीं है. साथ ही, यह भी दिखाया जा सकता है कि आप अपने ग्राहकों की ज़रूरतों के बारे में सोच रहे हैं.
डेवलपमेंट के लिए, कई लाइब्रेरी और टूल उपलब्ध हैं. इनका इस्तेमाल करके, अपने ग्राहकों के लिए सेवाएं बनाई जा सकती हैं. Google Maps Platform के लिए, GitHub पर मौजूद हमारी सार्वजनिक रिपॉज़िटरी देखें.
अगली कार्रवाइयां
GMP का इस्तेमाल शुरू करना : https://developers.google.com/maps/get-started
इस बारे में और पढ़ें
Places API ऑटोकंप्लीट (नया) का दस्तावेज़ : https://developers.google.com/maps/documentation/places/web-service/place-autocomplete
Routes API का दस्तावेज़ : https://developers.google.com/maps/documentation/routes
योगदानकर्ता
मुख्य लेखक: मिको तोइवानन | Google Maps Platform Solutions Engineer