Roads API, किसी सड़क के लिए तय की गई रफ़्तार की सीमा दिखाता है सेगमेंट. गति सीमाओं में परिवर्तन होने वाले सड़क खंडों के मामले में, डिफ़ॉल्ट सेगमेंट के लिए रफ़्तार की सीमा का डेटा दिखाया जाता है.
रफ़्तार की सीमा के बारे में, Roads API से मिला डेटा कितना सटीक है इसकी गारंटी नहीं दी जा सकती. रफ़्तार की सीमा से जुड़ा डेटा रीयल-टाइम में नहीं दिया गया है. ऐसा हो सकता है कि अनुमानित, गलत, अधूरा, और/या पुराना. कवरेज की जानकारी देखें ताकि उन इलाकों के बारे में जानकारी मिल सके जहां रफ़्तार की सीमा से जुड़ा डेटा उपलब्ध है.
अनुरोध
रफ़्तार की सीमाओं के लिए अनुरोध, एचटीटीपीएस से भेजा जाना चाहिए. इसके लिए, यह इस तरह का फ़ॉर्म भरना होता है:
https://roads.googleapis.com/v1/speedLimits?parameters&key=YOUR_API_KEY
पैरामीटर का इस्तेमाल
ज़रूरी पैरामीटर
path
याplaceId
पैरामीटर.path
— ज़्यादा से ज़्यादा 100 अक्षांश/देशांतर जोड़े की सूची एक पाथ. अक्षांश और देशांतर की वैल्यू को कॉमा लगाकर अलग किया जाना चाहिए. अक्षांश/देशांतर जोड़े को पाइप वर्ण से अलग किया जाना चाहिए: "|". जबpath
पैरामीटर उपलब्ध कराया जाता है, तो एपीआई सबसे पहले सबसे अधिक संभावना है कि सड़क वाहन से यात्रा की जाए (जैसा किsnapToRoads
अनुरोध) है, इसके बाद यह तय करता है कि से जानकारी मिल सके. अगर आपको नहीं चाहिए कि एपीआई, पाथ को स्नैप करे, तो कोplaceId
पैरामीटर पास करना होगा, जैसा कि नीचे बताया गया है. यह उदाहरणpath
पैरामीटर को तीन अक्षांश/देशांतर जोड़े के साथ दिखाता है:path=60.170880,24.942795|60.170879,24.942796|60.170877,24.942796
.placeId
— जगह के आईडी, जो एक या उससे ज़्यादा सड़क के हिस्सों को दिखाते हैं. पक्का करें कि जगह का हर आईडी किसी सड़क के सेगमेंट को दिखाता हो, न कि किसी अलग तरह के सेगमेंट से जगह. हर आईडी के साथ, ज़्यादा से ज़्यादा 100 प्लेस आईडी पास किए जा सकते हैं अनुरोध. एपीआई, दिए गए जगह के आईडी पर रोड-स्नैपिंग नहीं करता. अनुरोध में, जगह के हर आईडी के लिए रफ़्तार की सीमा तय की जाती है.snapToRoads
याnearestRoads
के लिए, अनुरोध भेजा जा सकता है खोजें और फिर उन्हेंspeedLimits
अनुरोध. नीचे दिए गए उदाहरण में, दो जगह के आईडी वालाplaceId
पैरामीटर:placeId=ChIJX12duJAwGQ0Ra0d4Oi4jOGE&placeId=ChIJLQcticc0GQ0RoiNZJVa5GxU
key
— आपके ऐप्लिकेशन की API कुंजी. आपका ऐप्लिकेशन को हर बार अपनी पहचान की पुष्टि करनी होगी, ताकि वह हर बार हर अनुरोध के साथ एपीआई पासकोड शामिल करके, Roads API. कुंजी पाने का तरीका जानें.
वैकल्पिक पैरामीटर
units
— रफ़्तार की सीमा किलोमीटर में दिखाना है या मील प्रति भेजना है घंटे. इसेKPH
याMPH
पर सेट किया जा सकता है. डिफ़ॉल्ट तौर पर, यहKPH
पर सेट होती है.
जवाब
speedLimits
रिस्पॉन्स में ये एलिमेंट मौजूद हो सकते हैं:
speedLimits
— सड़क के मेटाडेटा का कलेक्शन. हर एलिमेंट में ये फ़ील्ड शामिल होते हैं:placeId
— किसी जगह के लिए एक यूनीक आइडेंटिफ़ायर. सभी जगह के आईडी लौटाए गए Roads API, सड़क के सेगमेंट से मेल खाएगा.speedLimit
— सड़क के उस हिस्से के लिए रफ़्तार की सीमा.units
—KPH
याMPH
दिखाता है.
snappedPoints
— स्नैप किए गए पॉइंट का कलेक्शन. यह कलेक्शन मौजूद है सिर्फ़ तब, जब अनुरोध मेंpath
पैरामीटर मौजूद हो. हर बिंदु में शामिल है ये फ़ील्ड शामिल होंगे:location
— मेंlatitude
औरlongitude
वैल्यू होती है.originalIndex
— एक पूर्णांक जो उससे जुड़ी वैल्यू दिखाता है शामिल नहीं करते हैं. अनुरोध में शामिल हर वैल्यू इसका मान निकाला जा सकता है. ये वैल्यू,0
से इंडेक्स की जाती हैं. इसलिए,4
केoriginalIndex
वाले पॉइंट की वैल्यू, पांचवें नंबर की स्नैप की गई वैल्यू होगीpath
पैरामीटर के लिए पास किया गया अक्षांश/देशांतर.placeId
— किसी जगह के लिए एक यूनीक आइडेंटिफ़ायर. सभी जगह के आईडी लौटाए गए Roads API, सड़क के सेगमेंट से मेल खाएगा. रफ़्तार की सीमा के अनुरोध मेंplaceId
को पास किया जा सकता है, ताकि उस सेगमेंट पर गति सीमा.
warning_message
— ऐसी स्ट्रिंग जिसमें उपयोगकर्ता को दिखने वाली चेतावनी होती है.
पाथ का इस्तेमाल करने वाले अनुरोध का उदाहरण
इस अनुरोध को वास्को ड गामा को पार करने वाले रास्ते में खास अक्षांश/देशांतर जोड़े एक पुल है.
अनुरोध करें
https://roads.googleapis.com/v1/speedLimits?path=38.75807927603043,-9.03741754643809|38.6896537,-9.1770515|41.1399289,-8.6094075&key=YOUR_API_KEY
जवाब
{ speedLimits: [ { placeId: "ChIJX12duJAwGQ0Ra0d4Oi4jOGE", speedLimit: 105, units: "KPH" }, { placeId: "ChIJLQcticc0GQ0RoiNZJVa5GxU", speedLimit: 70, units: "KPH" }, { placeId: "ChIJJ4vQRudkJA0RpednU70A-5M", speedLimit: 55, units: "KPH" } ], snappedPoints: [ { location: { latitude: 38.75807927603043, longitude: -9.037417546438084 }, originalIndex: 0, placeId: "ChIJX12duJAwGQ0Ra0d4Oi4jOGE" }, { location: { latitude: 38.689653701836896, longitude: -9.177051486847693 }, originalIndex: 1, placeId: "ChIJLQcticc0GQ0RoiNZJVa5GxU" }, { location: { latitude: 41.13993011767777, longitude: -8.609400794783655 }, originalIndex: 2, placeId: "ChIJJ4vQRudkJA0RpednU70A-5M" } ], warningMessage: "Input path is too sparse. You should provide a path where consecutive points are closer to each other. Refer to the 'path' parameter in Google Roads API documentation." }
ऊपर दिए गए जवाब में, पॉइंट की कमी के बारे में चेतावनी वाला मैसेज देखें. अगर आपको
नज़दीकी सड़क खंडों के लिए गति सीमा का अनुरोध मनचाहे स्थानों पर कर रहे हैं,
आपको speedLimits
को कॉल करना होगा. साथ ही,
इसके बजाय, nearestRoads
एंडपॉइंट का इस्तेमाल करें.
जगह के आईडी का इस्तेमाल करने वाले अनुरोध का उदाहरण
अक्षांश/देशांतर जोड़े का इस्तेमाल करने के बजाय, आप यहां दिखाई गई जगहों के आईडी पास कर सकते हैं
सड़क के सेगमेंट. हमारा सुझाव है कि आप यहां से सड़क के सेगमेंट के लिए, जगह के आईडी पाएं
snapToRoads
या nearestRoads
अनुरोध. जगह के आईडी पास करने पर, एपीआई
हर जगह के आईडी से दिखाए जाने वाले सड़क के सेगमेंट के लिए, रफ़्तार की सीमा दिखाता है. कॉन्टेंट बनाने
एपीआई, दिए गए जगह के आईडी पर, रोड-स्नैपिंग को लागू नहीं करता.
नीचे दिए गए उदाहरण में, सड़क के कुछ सेगमेंट की रफ़्तार की सीमाओं के लिए अनुरोध किया गया है जो पुर्तगाल के लिस्बन में वास्को ड गामा के पुल को पार करती हैं.
अनुरोध करें
https://roads.googleapis.com/v1/speedLimits?placeId=ChIJX12duJAwGQ0Ra0d4Oi4jOGE&placeId=ChIJLQcticc0GQ0RoiNZJVa5GxU&placeId=ChIJJ4vQRudkJA0RpednU70A-5M&key=YOUR_API_KEY
जवाब
{ "speedLimits": [ { placeId: "ChIJX12duJAwGQ0Ra0d4Oi4jOGE", speedLimit: 105, units: "KPH" }, { placeId: "ChIJLQcticc0GQ0RoiNZJVa5GxU", speedLimit: 70, units: "KPH" }, { placeId: "ChIJJ4vQRudkJA0RpednU70A-5M", speedLimit: 55, units: "KPH" } ] }
इस्तेमाल करने के सुझाव
हमारा सुझाव है कि स्पीड लिमिट सेवा के लिए कॉल की संख्या कम करें अपनी ऐसेट की लोकेशन के सैंपल 5 से 15 मिनट के अंतराल में लें (सटीक वैल्यू, ऐसेट की यात्रा की रफ़्तार पर निर्भर करती है). अगर कोई ऐसेट स्टेशनरी है, एक ही जगह का नमूना काफ़ी है (ऐसी जगह बनाने की ज़रूरत नहीं है एक से ज़्यादा कॉल शामिल हैं).
हमारा सुझाव है कि इंतज़ार का समय कम करने के लिए, स्पीड लिमिट सेवा को कॉल करें एक बार कुछ डेटा इकट्ठा कर लेने के बाद, एपीआई को हर बार मोबाइल ऐसेट की जगह की जानकारी मिल गई है.
कुछ/सभी स्पीड सीमाएं क्यों नहीं हैं?
speedLimits
के मौजूद न होने की सबसे आम वजह, रफ़्तार सीमा का अनुरोध करना है
जो सड़क वाला हिस्सा नहीं है.
ऊपर दिए गए उदाहरण में, वास्को ड गामा ब्रिज का इस्तेमाल सिद्धांतों को समझाने के लिए किया गया है;
यह पुल रियो तेजो पर बनी सड़क E90 की मदद से बनाया गया है. पुल
इसमें ChIJUzt97ZEwGQ0RM1JzQfqoDtU का स्थान आईडी शामिल है. सड़क का पहला हिस्सा
ऊपर दिए गए जवाब में, E90 सड़क का हिस्सा है और इसका स्थान आईडी है
ChIJX12duJAWGQ0Ra0d4Oi4jOGE. उदाहरण के तौर पर दिए गए अनुरोध में, अगर आपने सड़क को बदलकर
पुल के स्थान आईडी के साथ स्थान आईडी, फिर प्रतिक्रिया में केवल
पुल के स्थान आईडी की वजह से speedLimits
कलेक्शन में रफ़्तार की दो सीमाएं
किसी सड़क के सेगमेंट से नहीं जुड़ा है. इसके अलावा, अगर कोई भी
जगह के आईडी सड़क के सेगमेंट के लिए हैं, तो जवाब में
गति सीमाएं.
जगह के आईडी का इस्तेमाल करके रफ़्तार की सीमा का अनुरोध करते समय, पक्का करें कि हर जगह का आईडी
का मतलब सड़क के हिस्से से है, न कि किसी अलग तरह की जगह के. इनके लिए जगह के आईडी
snapToRoads
का इस्तेमाल करके, अलग-अलग सड़क के सेगमेंट की जानकारी सबसे अच्छी मिलती है
या nearestRoads
अनुरोध, जिनमें से कोई भी एक से ज़्यादा जगह के आईडी दिखा सकता है
एक कॉल.