यह दस्तावेज़, पुराने लेख को रीफ़्रेश करने के लिए है. इस लेख में, GMP API के पुराने वर्शन का इस्तेमाल किया गया था. इस कॉन्टेंट को 2023-24 में लॉन्च किए गए Places API और 2023 में लॉन्च किए गए Routes API के नए वर्शन के हिसाब से अपडेट किया गया है.
आम तौर पर, जब कोई उपयोगकर्ता किसी लोकप्रिय जगह (पीओआई) पर ड्राइव कर रहा होता है, तो उसे आस-पास की किसी जगह, जैसे कि पार्किंग या ऐक्सेस पॉइंट पर नेविगेट करने की ज़रूरत होती है. किसी ऐसे ड्राइवर की कल्पना करें जिसे एयरपोर्ट या शॉपिंग मॉल जाना है. हवाई अड्डे पर जाते समय, ड्राइवर हवाई अड्डे के बीचोंबीच के बजाय, टर्मिनल या छोड़ने की जगह पर पहुंचने की कोशिश कर रहा हो. इसी तरह, कार से आने वाले उपयोगकर्ता के लिए, शॉपिंग सेंटर के बगल में मौजूद पार्किंग का विकल्प बेहतर हो सकता है. इस मामले में, ड्राइवर को गाइड करने के लिए कोई ऐप्लिकेशन या सेवा बनाते समय, पहले यह पता लगाएं कि वह कहां जा रहा है. इसके बाद, उस जगह के आस-पास मौजूद अन्य जगहों के विकल्प ड्राइवर को दिखाएं. इस तरीके से, अपने ग्राहकों को बेहतर सेवा दी जा सकती है. साथ ही, यह भी दिखाया जा सकता है कि आप उनके समय की अहमियत समझते हैं. इसके लिए, आपको Google Maps Platform से मिले जगह की जानकारी के डेटा का इस्तेमाल करना होगा.
हम आपको बताएंगे कि अपने डेस्टिनेशन के पास कार पार्क करने के लिए सही जगह की पहचान करने के लिए, नए Places API और Routes API का क्रम या कॉम्बिनेशन में इस्तेमाल कैसे किया जा सकता है. इस समाधान का मकसद, मंज़िल के करीब पहुंचने पर पार्किंग की जगह ढूंढने के लिए, कई इंटरैक्शन और अनिश्चितता को खत्म करना है. इन मामलों को लागू करने के बारे में ज़्यादा जानकारी के लिए, दो उदाहरण देखें.
पहला उदाहरण - पर्यटकों की पसंदीदा ऐसी जगह जहां पार्किंग की सुविधा नहीं है
ऐसी जगह चुनें जो सीधे सड़क से नहीं जुड़ी हो, ताकि रास्ता अलग से खोजा जा सके. डेस्टिनेशन पेरिस में नोट्रे डेम है और स्टार्टिंग पॉइंट के तौर पर, हम गेर दे ल'एस्ट रेलवे स्टेशन (48.87697775149635, 2.3592247806755564) का इस्तेमाल करेंगे.
ड्राइवर, नॉट्रे डेम से 16 मिनट उत्तर में स्टेशन छोड़ता है. नोट्रे डेम, एक टापू पर बना पर्यटकों का एक लोकप्रिय आकर्षण है. यहां पहुंचने के लिए, एक पुल का इस्तेमाल किया जाता है. इसके आस-पास कुछ एकतरफ़ा सड़कें हैं और कोई बड़ी पार्किंग नहीं है. इसलिए, यह एक दिलचस्प चैलेंज हो सकता है.
- Places API का अनुरोध
इस उदाहरण में, Places API के अनुरोध में टेक्स्ट से खोजने की सुविधा का इस्तेमाल करके, नोट्रे डेम को ढूंढा जा रहा है. ज़्यादा जानकारी के लिए, डेवलपर दस्तावेज़ देखें. इन उदाहरणों में "$APIKEY", Google Cloud Console में चालू किए गए Google Maps Platform Places और Routes API के लिए आपके पास मौजूद एपीआई पासकोड है. ज़्यादा जानकारी के लिए, Google Maps Platform का इस्तेमाल शुरू करने से जुड़ा दस्तावेज़ देखें.
Places API के नए अनुरोधों का फ़ॉर्मैट बदल गया है. रिस्पॉन्स फ़ील्ड अब तय नहीं होते और डेवलपर के तौर पर आपको हेडर में फ़ील्डमास्क तय करना होगा. फ़ील्डमास्क के इस्तेमाल के बारे में दस्तावेज़ में बताया गया है.
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 का अनुरोध कर रहे हैं.
- **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 मिनट लगते हैं.
चार्जिंग स्टेशन के पार्किंग स्पॉट से नॉट्रे डेम तक पैदल जाने का रास्ता
पहले उदाहरण की खास जानकारी
जैसा कि आप देख सकते हैं, कार के लिए पार्किंग की जगह ढूंढने के लिए, सिर्फ़ कुछ एपीआई कॉल की ज़रूरत होती है और ड्राइवर को सुझाव दिखाना होता है. इससे आपके उपयोगकर्ताओं का समय बचता है, क्योंकि वे एकतरफ़ा सड़कों पर ड्राइव नहीं कर रहे हैं या पर्यटकों की भीड़-भाड़ वाली जगहों पर कार पार्क करने की जगह ढूंढने की कोशिश नहीं कर रहे हैं. खास जानकारी के तौर पर, हमने ये एपीआई अनुरोध किए हैं:
- नोट्रे-डेम के निर्देशांक ढूंढने के लिए, Places API के टेक्स्ट से खोजने का अनुरोध
- Places API की आस-पास की जगहों की खोज की सुविधा, ताकि उन निर्देशांकों के 500 मीटर के दायरे में, इलेक्ट्रिक कार के चार्जिंग स्टेशन वाली पार्किंग की जगह ढूंढी जा सके
- चार्जिंग स्टेशन तक का रास्ता खोजने के लिए, Routes API का अनुरोध
दूसरा उदाहरण - किसी बड़े हवाई अड्डे के टर्मिनल तक ले जाने वाली गाइड
एक और उदाहरण देखें, जिसमें ड्राइवर किसी बड़े इलाके में जाना चाहता है. इस इलाके में कई जगहें, लोकप्रिय जगहें या संभावित ड्रॉप-ऑफ़ पॉइंट हैं. ड्राइवर, यूनाइटेड किंगडम के वेम्बली स्टेडियम (51.557263604707224, -0.2794575145680608) से लंदन हीथ्रो एयरपोर्ट टर्मिनल 5 के लिए निकला है.
Places API के नए ऑटोकंप्लीट की सुविधा में, खोज के लिए प्राइमरी टाइप तय करने की सुविधा है. साथ ही, एपीआई की मदद से, खोज के संभावित नतीजों के तौर पर सब-प्राइमिस का अनुमान लगाया जाता है. इस मामले में इसका मतलब है कि किसी एयरपोर्ट को खोजने पर, आपको टर्मिनल भी दिखेंगे. दस्तावेज़ में शामिल करने या बाहर रखने के लिए, अलग-अलग तरह के एट्रिब्यूट की पूरी सूची देखी जा सकती है.
curl -X POST -d '{
"input": "Heathrow",
"includedPrimaryTypes": ["airport"]
}' \
-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) मिलेंगे.
दूसरे उदाहरण की खास जानकारी
पिछले उदाहरण की तरह, ड्राइवर को बेहतर दिशा-निर्देश देने के लिए, डेवलपमेंट में बहुत कम मेहनत लगती है. साथ ही, ड्राइवर के समय की बचत के फ़ायदों को मेज़र किया जा सकता है. हमने ये अनुरोध किए हैं:
- हीथ्रो एयरपोर्ट टर्मिनल 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 के सलूशन इंजीनियर