Fleet Engine में वाहनों के काम करने के तरीके के बारे में सामान्य जानकारी के लिए, Fleet Engine के ज़रूरी सेक्शन में मौजूद ये गाइड देखें:
इस सेक्शन में दिए गए दस्तावेज़ में, Fleet Engine में वाहनों को बनाने और मैनेज करने का तरीका बताया गया है. Fleet Engine के सर्वर एनवायरमेंट में वाहन बनाए जाते हैं, ताकि असल दुनिया में मौजूद वाहनों की जानकारी को दिखाया जा सके. आपके Fleet Engine वाहनों की जानकारी, आपके बैकएंड सिस्टम में इस्तेमाल किए गए वाहनों की जानकारी से मेल खानी चाहिए. इस सिस्टम का इस्तेमाल, वाहनों को असाइन करने और रूटिंग के लिए किया जाता है.
gRPC या REST का इस्तेमाल करके, वाहन का संसाधन बनाने के लिए create तरीके का इस्तेमाल किया जाता है. इस गाइड में फ़ील्ड के नामों को आसान बनाने के लिए, gRPC नोटेशन का इस्तेमाल किया गया है.
मांग के हिसाब से यात्राएं
CreateVehicleRequest(gRPC)providers.vehicle.create(REST)Vehicleसंसाधन (REST, gRPC)
शेड्यूल किए गए टास्क
CreateDeliveryVehicleRequest(gRPC)providers.deliveryVehicles.create(REST)DeliveryVehicle(REST, gRPC)
वाहन के अनुरोध
टास्क को शेड्यूल करने और ज़रूरत के हिसाब से टास्क करने की सुविधा के लिए, आपको वाहन बनाना और उसे अपडेट करना होगा. इसके लिए, फ़ील्ड के साथ अनुरोध मैसेज भेजें. इसकी खास जानकारी यहां दी गई है:
- पैरंट: यह आपके Google Cloud प्रोजेक्ट आईडी से जुड़ी एक स्ट्रिंग है. इसका इस्तेमाल, वाहन के इंस्टेंस के नाम फ़ील्ड में जानकारी भरने के लिए किया जाता है.
वाहन का आईडी: यह एक यूनीक स्ट्रिंग होती है. इसका इस्तेमाल, वाहन के
nameफ़ील्ड की वैल्यू भरने के लिए किया जाता है.ज़रूरी फ़ील्ड के साथ वाहन का इंस्टेंस. ये फ़ील्ड, इस्तेमाल की जा रही Fleet Engine की सुविधा पर निर्भर करते हैं.
अनुरोध के मुख्य हिस्से में मौजूद जानकारी, अनुरोध के हिसाब से अलग-अलग होती है. इनके बारे में ज़्यादा जानकारी के लिए, इनसे जुड़ी गाइड देखें.
पुष्टि करने और अनुमति देने वाले टोकन
Fleet Engine से किए जाने वाले अनुरोधों में, ऐक्सेस करने के सही क्रेडेंशियल भी दिए जाने चाहिए. इस गाइड में दिए गए उदाहरणों में, इन बातों को ध्यान में रखा गया है:
- gRPC के उदाहरणों में, Java के लिए Authorization library का इस्तेमाल किया जाता है.
- REST के उदाहरणों में, एचटीटीपी अनुरोध का हेडर दिखाया गया है. इसमें
Authorizationफ़ील्ड होना चाहिए. इसकी वैल्यूBearer <token>होनी चाहिए. यहां<token>, आपके जारी किए गए JSON वेब टोकन को दिखाता है.
ज़्यादा जानकारी के लिए, Fleet Engine सेट अप करना गाइड देखें.
वाहन के संसाधन फ़ील्ड
वाहन के संसाधन में, इस तरह के फ़ील्ड होते हैं:
- सिर्फ़ आउटपुट वाले फ़ील्ड. ऐसे फ़ील्ड जिन्हें सेवा, किसी अन्य तरीके के आउटपुट के तौर पर सेट करती है और सीधे तौर पर सेट नहीं किया जा सकता. इस टाइप का एक अहम फ़ील्ड,
nameफ़ील्ड है. Fleet Engine, Google AIP के दिशा-निर्देशों के मुताबिक, वाहन केnameफ़ील्ड के लिए दी गई किसी भी वैल्यू को अनदेखा करता है. ये दिशा-निर्देश, उपयोगकर्ता के तय किए गए आईडी के लिए हैं. अगर इन फ़ील्ड के लिए वैल्यू दी जाती हैं, तो Fleet Engine गड़बड़ी का मैसेज दिखाता है. - ज़रूरी फ़ील्ड. मांग पर यात्रा की सेवा में बनाए गए वाहनों के लिए, यह ज़रूरी है कि उन्हें बनाते समय कुछ फ़ील्ड सेट किए जाएं. शेड्यूल की गई टास्क सेवा में बनाए गए वाहनों में, वाहन के संसाधन के लिए ज़रूरी फ़ील्ड मौजूद नहीं हैं.
- ऐसे फ़ील्ड जो ज़रूरी नहीं हैं. दोनों सेवाओं में ऐसे फ़ील्ड होते हैं जिन्हें बनाते समय या बाद में सेट किया जा सकता है. ये आपको उस सेवा की रेफ़रंस गाइड में मिल सकते हैं जिसका इस्तेमाल किया जा रहा है.
वाहन का नाम (सिर्फ़ आउटपुट के लिए)
name फ़ील्ड, मांग पर की जाने वाली यात्राओं और शेड्यूल किए गए टास्क की सेवाओं के लिए एक जैसा होता है. वाहन बनाते समय, Fleet Engine इस फ़ील्ड को तय करता है. यह फ़ील्ड, वाहन बनाते समय सेट किए गए इन दो फ़ील्ड के आधार पर तय होता है:
माता-पिता: यह एक स्ट्रिंग है, जो आपके Google Cloud प्रोजेक्ट आईडी से जुड़ी होती है. इसका फ़ॉर्मैट
providers/{provider}होता है. इसमें{provider}आपके Cloud प्रोजेक्ट का आईडी होता है. किसी प्रोजेक्ट के लिए बनाए गए हर वाहन का पैरंट पाथ एक जैसा होगा.यहां जिस क्लाउड प्रोजेक्ट का रेफ़रंस दिया गया है उसमें Fleet Engine सेवा खाते की भूमिकाएं भी शामिल होनी चाहिए. ये भूमिकाएं, इस्तेमाल की जा रही सेवा के लिए होनी चाहिए. उन सेवा खातों की सूची देखने के लिए, सेवा खाते पर जाएं. Fleet Engine को एक से ज़्यादा Google Cloud प्रोजेक्ट से ऐक्सेस नहीं किया जा सकता.
वाहन का आईडी. यह आपके फ्लीट में मौजूद सभी वाहनों के लिए यूनीक होना चाहिए. साथ ही, यह एक मान्य यूनिकोड स्ट्रिंग होनी चाहिए. यह वाहन का संसाधन आईडी है. मांग पर की जाने वाली यात्राओं और शेड्यूल किए गए स्टॉप, दोनों में इसका इस्तेमाल किया जाता है. इससे किसी यात्रा या टास्क को उस वाहन से जोड़ा जाता है जो उसे पूरा करता है.
Google की क्लाउड-आधारित सेवाओं में, सभी एपीआई को संसाधनों को स्ट्रिंग के तौर पर दिखाना चाहिए. ज़्यादा जानकारी के लिए, Fleet Engine में संसाधन का नाम तय करना लेख पढ़ें.
इकाई के यूनीक आइडेंटिफ़ायर
संसाधन कॉल में इस्तेमाल किए गए यूनीक इकाई आइडेंटिफ़ायर का फ़ॉर्मैट और वैल्यू, Fleet Engine के लिए अपारदर्शी होती है. पक्का करें कि आइडेंटिफ़ायर में, व्यक्तिगत पहचान से जुड़ी कोई जानकारी (पीआईआई) शामिल न हो. जैसे, ड्राइवर का फ़ोन नंबर.
वाहन का फिर से इस्तेमाल करना
जब कोई वाहन किसी यात्रा की योजना के सभी स्टॉप पूरे कर लेता है, तो वह Fleet Engine में सात दिनों तक फिर से इस्तेमाल के लिए उपलब्ध रहता है. इसका मतलब है कि आने वाले कामकाजी दिनों में, किसी वाहन को फिर से इस्तेमाल किया जा सकता है. इसके लिए, आपको नया वाहन बनाने की ज़रूरत नहीं है. किसी वाहन का दोबारा इस्तेमाल करने पर, Fleet Engine उसकी उपलब्धता को रीसेट कर देता है. इसके बाद, सात दिनों का काउंटडाउन फिर से शुरू हो जाता है.
Fleet Engine में किसी वाहन की उपलब्धता बनाए रखने के लिए, यह सुझाव दिया जाता है कि समय-समय पर उसकी जगह की जानकारी अपडेट की जाए. Vehicle इकाई के ज़्यादातर अन्य फ़ील्ड में अपडेट करने से भी उसकी समयसीमा बढ़ जाएगी. हालांकि, इसके लिए ज़रूरी है कि फ़ील्ड की नई वैल्यू, मौजूदा वैल्यू से अलग हो.
ध्यान दें: Vehicle इकाई के कुछ फ़ील्ड, जैसे कि device_settings, सिर्फ़ डीबग करने से जुड़ी जानकारी होती है. इसे Fleet Engine सेव नहीं करता. इन्हें अपडेट करने से, Vehicle इकाई की लाइफ़टाइम नहीं बढ़ती.
सिस्टम के आंकड़ों को बेहतर बनाने के लिए, हर दिन एक ही ड्राइवर-वाहन आईडी पेयरिंग का फिर से इस्तेमाल करना सबसे अच्छा होता है. इसके लिए, उसी वाहन आईडी का इस्तेमाल करें जो ड्राइवर के लिए, पहले से शेड्यूल किए गए स्टॉप या मांग पर की जाने वाली यात्राओं से जुड़ा है.