गति की सीमाएं

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 — सड़क के उस हिस्से के लिए रफ़्तार की सीमा.
    • unitsKPH या 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 अनुरोध, जिनमें से कोई भी एक से ज़्यादा जगह के आईडी दिखा सकता है एक कॉल.