- JSON काेड में दिखाना
- शिपमेंट
- VisitRequest
- LatLng
- Waypoint
- जगह की जानकारी
- TimeWindow
- वाहन
- TravelMode
- RouteModifiers
- VehicleInfo
- TrailerInfo
- HazardousGoodsType
- UnloadingPolicy
- LoadLimit
- इंटरवल
- DurationLimit
- DistanceLimit
- BreakRule
- BreakRequest
- FrequencyConstraint
- DurationDistanceMatrix
- पंक्ति
- TransitionAttributes
- ShipmentTypeIncompatibility
- IncompatibilityMode
- ShipmentTypeRequirement
- RequirementMode
- PrecedenceRule
किसी शिपमेंट मॉडल में, शिपमेंट का एक सेट होता है. इसे वाहनों के एक सेट को पूरा करना होता है. हालांकि, कुल लागत को कम से कम किया जाता है, जो कि कुल कीमत होती है:
- वाहनों को रूट करने का खर्च (कुल समय का कुल योग, हर यात्रा में लगने वाला समय, और सभी वाहनों के लिए तय शुल्क).
- शिपिंग पर लगी पाबंदियां लागू नहीं होंगी.
- शिपमेंट की पूरी अवधि के लिए खरीदार से लिया जाने वाला शुल्क
| JSON के काेड में दिखाना |
|---|
{ "shipments": [ { object ( |
| फ़ील्ड | |
|---|---|
shipments[] |
शिपमेंट का वह सेट जिसे मॉडल में किया जाना चाहिए. |
vehicles[] |
वाहनों का सेट, जिसका इस्तेमाल विज़िट के लिए किया जा सकता है. |
globalStartTime |
मॉडल के ग्लोबल शुरू और खत्म होने का समय: इस रेंज से बाहर के किसी भी समय को मान्य नहीं माना जा सकता. मॉडल की समयावधि एक साल से कम होनी चाहिए. इसका मतलब है कि
आरएफ़सी3339 यूटीसी के "Zulu" फ़ॉर्मैट में एक टाइमस्टैंप, नैनोसेकंड रिज़ॉल्यूशन और नौ दशमलव अंकों के साथ. उदाहरण के लिए: |
globalEndTime |
अगर इसकी वैल्यू सेट नहीं की जाती है, तो डिफ़ॉल्ट रूप से 1 जनवरी, 1971 को 00:00:00 यूटीसी (यानी सेकंड: 31,536,000, नैनो सेकंड: 0) का इस्तेमाल किया जाता है. आरएफ़सी3339 यूटीसी के "Zulu" फ़ॉर्मैट में एक टाइमस्टैंप, नैनोसेकंड रिज़ॉल्यूशन और नौ दशमलव अंकों के साथ. उदाहरण के लिए: |
globalDurationCostPerHour |
पूरे प्लान की "दुनिया भर में लगने वाला समय", सभी वाहनों के शुरू होने के समय और खत्म होने के नए समय के बीच का अंतर होता है. उदाहरण के लिए, उपयोगकर्ता उस संख्या को हर घंटे के हिसाब से शुल्क दे सकते हैं. इससे, वह काम जल्दी पूरा करने के लिए, उसे ऑप्टिमाइज़ कर सकेगा. यह लागत |
durationDistanceMatrices[] |
मॉडल में इस्तेमाल की गई अवधि और दूरी की मैट्रिक के बारे में बताता है. अगर यह फ़ील्ड खाली है, तो इस्तेमाल के उदाहरण:
|
durationDistanceMatrixSrcTags[] |
अवधि और दूरी के आव्यूहों के स्रोतों को तय करने वाले टैग; टैग, |
durationDistanceMatrixDstTags[] |
अवधि और दूरी के आव्यूहों की मंज़िल तय करने वाले टैग; टैग |
transitionAttributes[] |
मॉडल में ट्रांज़िशन एट्रिब्यूट जोड़े गए. |
shipmentTypeIncompatibilities[] |
ऐसे शिपमेंट_types के सेट जो काम नहीं करते हैं ( |
shipmentTypeRequirements[] |
|
precedenceRules[] |
प्राथमिकता वाले नियमों का सेट, जिसे मॉडल में लागू करना ज़रूरी है. |
maxActiveVehicles |
इससे, ज़्यादा से ज़्यादा चालू वाहनों की संख्या को कंट्रोल किया जाता है. किसी वाहन को तब चालू माना जाता है, जब उसके रास्ते पर कम से कम एक शिपमेंट किया गया हो. इसका इस्तेमाल, उन मामलों में रास्तों की संख्या को सीमित करने के लिए किया जा सकता है जहां वाहनों की तुलना में ड्राइवर कम हों और वाहनों का फ़्लीट अलग-अलग तरह का हो. इसके बाद, ऑप्टिमाइज़ेशन की मदद से वाहनों का वह सबसेट चुना जा सकेगा जिसे इस्तेमाल करना है. पूरी तरह सकारात्मक होना चाहिए. |
शिपमेंट
किसी एक आइटम को पिकअप करने से लेकर डिलीवरी करने तक की प्रोसेस. शिपमेंट को पूरा होने के तौर पर तब ही माना जाएगा, जब कोई यूनीक वाहन पिकअप करने की जगहों में से किसी एक पर जाए (और उसी हिसाब से अपनी स्पेयर कैपेसिटी कम करे) और बाद में डिलीवरी करने की जगहों में से किसी एक पर जाए (और उसी हिसाब से अपनी स्पेयर कैपेसिटी फिर से बढ़ाए).
| JSON के काेड में दिखाना |
|---|
{ "displayName": string, "pickups": [ { object ( |
| फ़ील्ड | |
|---|---|
displayName |
शिपमेंट का वह नाम जो उपयोगकर्ता ने तय किया है. इसमें ज़्यादा से ज़्यादा 63 वर्ण हो सकते हैं और इसमें UTF-8 वर्णों का इस्तेमाल किया जा सकता है. |
pickups[] |
शिपमेंट से जुड़े पिकअप के विकल्पों का सेट. अगर यह जानकारी नहीं दी गई है, तो वाहन को सिर्फ़ डिलीवरी वाली जगह पर जाना होगा. |
deliveries[] |
शिपमेंट से जुड़ी डिलीवरी के विकल्पों का सेट. अगर यह जानकारी नहीं दी गई है, तो वाहन को सिर्फ़ पिकअप की जगह पर जाना होगा. |
loadDemands |
शिपमेंट की लोड की मांग (उदाहरण के लिए, वज़न, वॉल्यूम, पैलेट की संख्या वगैरह). मैप में मौजूद कुंजियां, आइडेंटिफ़ायर होनी चाहिए. इनसे, उससे जुड़े लोड के टाइप के बारे में पता चलता है. साथ ही, इनमें यूनिट भी शामिल होनी चाहिए. उदाहरण के लिए: "weight_kg", "volume_gallons", "pallet_count" वगैरह. अगर कोई दिया गया कुंजी मैप में नहीं दिखता है, तो उससे जुड़े लोड को शून्य माना जाता है. ऐसा ऑब्जेक्ट जिसमें |
allowedVehicleIndices[] |
वाहनों का वह सेट जो इस शिपमेंट की डिलीवरी कर सकता है. अगर यह फ़ील्ड खाली है, तो सभी वाहन यह कार्रवाई कर सकते हैं. |
costsPerVehicle[] |
इससे पता चलता है कि हर वाहन से इस शिपमेंट की डिलीवरी करने पर, कितनी लागत आएगी. अगर बताया गया है, तो इसमें कोई भी ऐसा होना चाहिए:
ये लागतें |
costsPerVehicleIndices[] |
उन वाहनों के इंडेक्स जिन पर |
pickupToDeliveryAbsoluteDetourLimit |
यह पिकअप से डिलीवरी तक के सबसे छोटे रास्ते की तुलना में, सबसे लंबे रास्ते पर लगने वाले समय की जानकारी देता है. अगर यह जानकारी दी गई है, तो यह संख्या 0 से बड़ी होनी चाहिए. साथ ही, शिपमेंट में कम से कम एक पिकअप और एक डिलीवरी शामिल होनी चाहिए. उदाहरण के लिए, मान लें कि t, पिकअप के चुने गए विकल्प से सीधे डिलीवरी के चुने गए विकल्प पर जाने में लगने वाला कम से कम समय है. जब अगर एक ही शिपमेंट के लिए, रिलेटिव और एब्सोल्यूट, दोनों तरह की सीमाएं तय की गई हैं, तो पिकअप/डिलीवरी के हर संभावित पेयर के लिए, ज़्यादा पाबंदी वाली सीमा का इस्तेमाल किया जाता है. अक्टूबर 2017 से, यात्रा में लगने वाला समय वाहनों पर निर्भर न होने पर ही, रास्ते में आने वाली रुकावटों की जानकारी दी जा सकती है. सेकंड में एक अवधि, जिसमें ज़्यादा से ज़्यादा नौ दशमलव अंक होते हैं और जो ' |
pickupToDeliveryTimeLimit |
इससे किसी शिपमेंट की डिलीवरी शुरू होने से लेकर, उसकी डिलीवरी शुरू होने तक की ज़्यादा से ज़्यादा अवधि की जानकारी मिलती है. अगर यह जानकारी दी गई है, तो यह संख्या 0 से बड़ी होनी चाहिए. साथ ही, शिपमेंट में कम से कम एक पिकअप और एक डिलीवरी शामिल होनी चाहिए. यह इस बात पर निर्भर नहीं करता कि पिकअप और डिलीवरी के लिए कौनसे विकल्प चुने गए हैं. यह वाहन की स्पीड पर भी निर्भर नहीं करता. इसे ज़्यादा से ज़्यादा डेटूर कंस्ट्रेंट के साथ तय किया जा सकता है: समाधान दोनों स्पेसिफ़िकेशन के हिसाब से काम करेगा. सेकंड में कुल अवधि, जिसमें दशमलव के बाद नौ अंक हो सकते हैं. यह अवधि ' |
shipmentType |
इस शिपमेंट के लिए "टाइप" बताने वाली स्ट्रिंग खाली नहीं है. इस सुविधा का इस्तेमाल, यह |
label |
इस शिपमेंट के लिए लेबल तय करता है. यह लेबल, इससे जुड़े |
ignore |
अगर यह सही है, तो इस शिपमेंट को छोड़ दें, लेकिन अगर मॉडल में कोई
|
penaltyCost |
अगर शिपमेंट पूरा नहीं होता है, तो यह जुर्माना, रूट की कुल कीमत में जोड़ दिया जाता है. अगर शिपमेंट के पिकअप और डिलीवरी के किसी एक विकल्प को चुना जाता है, तो शिपमेंट को पूरा माना जाता है. लागत को उसी यूनिट में दिखाया जा सकता है जिसका इस्तेमाल मॉडल में लागत से जुड़े अन्य सभी फ़ील्ड के लिए किया जाता है. साथ ही, यह यूनिट सकारात्मक होनी चाहिए. अहम जानकारी: अगर इस जुर्माने की जानकारी नहीं दी गई है, तो इसे अनलिमिटेड माना जाता है. इसका मतलब है कि शिपमेंट पूरा करना ज़रूरी है. |
pickupToDeliveryRelativeDetourLimit |
इससे यह जानकारी मिलती है कि पिकअप से डिलीवरी तक के सबसे छोटे पाथ की तुलना में, ज़्यादा से ज़्यादा कितना समय घूमता है. अगर यह जानकारी दी गई है, तो यह संख्या 0 से बड़ी होनी चाहिए. साथ ही, शिपमेंट में कम से कम एक पिकअप और एक डिलीवरी शामिल होनी चाहिए. उदाहरण के लिए, मान लें कि पिक अप के चुने गए विकल्प से, डिलीवरी के चुने गए विकल्प तक, सीधे पहुंचने में कम से कम समय लगता है. इसके बाद, अगर एक ही शिपमेंट के लिए, रिलेटिव और एब्सोल्यूट, दोनों तरह की सीमाएं तय की गई हैं, तो पिकअप/डिलीवरी के हर संभावित पेयर के लिए, ज़्यादा पाबंदी वाली सीमा का इस्तेमाल किया जाता है. 2017/10 से, चक्कर लगाने की सुविधा सिर्फ़ तब काम करती है, जब यात्रा का समय वाहनों पर निर्भर न हो. |
VisitRequest
वाहन से की जाने वाली विज़िट का अनुरोध: इसमें एक या दो जगह की जानकारी (नीचे देखें), खुलने और बंद होने का समय, और सेवा की अवधि (सामान लेने या छोड़ने के लिए वाहन के पहुंचने के बाद लगने वाला समय) शामिल है.
| JSON के काेड में दिखाना |
|---|
{ "arrivalLocation": { object ( |
| फ़ील्ड | |
|---|---|
arrivalLocation |
यह |
arrivalWaypoint |
वह वेपॉइंट जहां यह |
departureLocation |
वह जगह जहां |
departureWaypoint |
वह पॉइंट जहां से |
tags[] |
विज़िट के अनुरोध से जुड़े टैग की जानकारी देता है. खाली या डुप्लीकेट स्ट्रिंग की अनुमति नहीं है. |
timeWindows[] |
टाइम विंडो, जो किसी विज़िट पर पहुंचने के समय को रोकती हैं. ध्यान दें कि वाहन, पहुंचने के समय की विंडो के बाहर भी जा सकता है. इसका मतलब है कि यात्रा के समय और पहुंचने का समय, समय विंडो के अंदर होना ज़रूरी नहीं है. अगर वाहन
टाइम विंडो अलग-अलग होनी चाहिए. इसका मतलब है कि कोई भी टाइम विंडो, किसी दूसरी टाइम विंडो के साथ ओवरलैप नहीं होनी चाहिए या एक-दूसरे के बगल में नहीं होनी चाहिए. साथ ही, वे बढ़ते क्रम में होनी चाहिए.
|
duration |
विज़िट की अवधि, यानी वाहन के आने और जाने के बीच का समय. इसे इंतज़ार के संभावित समय में जोड़ना होगा. सेकंड में कुल अवधि, जिसमें दशमलव के बाद नौ अंक हो सकते हैं. यह अवधि ' |
cost |
वाहन के रास्ते पर, इस विज़िट के अनुरोध को पूरा करने की लागत. इसका इस्तेमाल करके, किसी भी प्रॉडक्ट के पिकअप या डिलीवरी के अलग-अलग शुल्क चुकाए जा सकते हैं. यह लागत |
loadDemands |
इस विज़िट के अनुरोध की मांगें लोड करें. यह ऐसा ऑब्जेक्ट जिसमें |
visitTypes[] |
विज़िट के टाइप की जानकारी देता है. इसका इस्तेमाल, किसी वाहन को इस विज़िट को पूरा करने के लिए ज़रूरी अतिरिक्त समय देने के लिए किया जा सकता है ( एक टाइप सिर्फ़ एक बार दिख सकता है. |
label |
इस |
LatLng
अक्षांश/देशांतर के पेयर को दिखाने वाला ऑब्जेक्ट. अक्षांश और देशांतर की डिग्री दिखाने के लिए, इसे दो डबल वैल्यू के तौर पर दिखाया जाता है. जब तक अलग से न बताया गया हो, यह ऑब्जेक्ट WGS84 मानक के मुताबिक होना चाहिए. वैल्यू, नॉर्मलाइज़ की जा सकने वाली रेंज के अंदर होनी चाहिए.
| JSON के काेड में दिखाना |
|---|
{ "latitude": number, "longitude": number } |
| फ़ील्ड | |
|---|---|
latitude |
डिग्री में अक्षांश. यह [-90.0, +90.0] की रेंज में होना चाहिए. |
longitude |
डिग्री में देशांतर. यह [-180.0, +180.0] की रेंज में होना चाहिए. |
वेपॉइंट
वेपॉइंट को एनकैप्सुलेट करता है. वेपॉइंट, visitRequests के आने और जाने की जगहों को मार्क करते हैं. साथ ही, वाहनों के शुरू और खत्म होने की जगह की जानकारी भी देते हैं.
| JSON के काेड में दिखाना |
|---|
{ "sideOfRoad": boolean, // Union field |
| फ़ील्ड | |
|---|---|
sideOfRoad |
ज़रूरी नहीं. यह बताता है कि इस वेपॉइंट की जगह को प्राथमिकता दी गई है, ताकि वाहन को सड़क के किसी खास तरफ़ रोका जा सके. जब आप यह मान सेट करते हैं, तो मार्ग उस स्थान से गुजरेगा ताकि वाहन सड़क के उस किनारे पर रूक सके जहां स्थान का झुकाव सड़क के केंद्र से है. यह विकल्प 'पैदल चलना' यात्रा मोड के लिए काम नहीं करता. |
यूनियन फ़ील्ड location_type. किसी जगह की जानकारी दिखाने के अलग-अलग तरीके. location_type इनमें से सिर्फ़ एक हो सकता है: |
|
location |
भौगोलिक निर्देशांक का इस्तेमाल करके तय किया गया पॉइंट, जिसमें एक वैकल्पिक शीर्षक भी शामिल होता है. |
placeId |
वेपॉइंट से जुड़ा लोकप्रिय जगह का आईडी. |
जगह
किसी जगह (भौगोलिक पॉइंट और वैकल्पिक हेडिंग) को एन्कैप्सुलेट करता है.
| JSON के काेड में दिखाना |
|---|
{
"latLng": {
object ( |
| फ़ील्ड | |
|---|---|
latLng |
वेपॉइंट के भौगोलिक निर्देशांक. |
heading |
ट्रैफ़िक के फ़्लो की दिशा से जुड़ा कंपास हेडिंग. इस मान का उपयोग सड़क के उस किनारे को बताने के लिए किया जाता है, जिसका उपयोग पिकअप और ड्रॉप-ऑफ़ के लिए किया जाता है. शीर्षक का मान 0 से 360 तक हो सकता है, जहां 0 उत्तर की ओर देय शीर्षक को तय करता है, 90 पूर्व दिशा के शीर्षक को तय करता है, वगैरह. |
TimeWindow
टाइम विंडो, किसी इवेंट के समय को सीमित कर देती हैं, जैसे कि विज़िट के समय पहुंचने का समय या वाहन के शुरू और खत्म होने का समय.
हार्ड टाइम विंडो की सीमाएं, startTime और endTime, इवेंट का सबसे पुराना और सबसे नया समय लागू करती हैं, जैसे कि startTime <= event_time <=
endTime. सॉफ्ट टाइम विंडो की निचली सीमा, softStartTime, यह बताती है कि इवेंट softStartTime पर या उसके बाद होना चाहिए. इसके लिए, इवेंट के शुरू होने से सॉफ्टStartTime के बीच के समय के हिसाब से लागत लगाई जाती है. सॉफ़्ट टाइम विंडो की ऊपरी सीमा, softEndTime, इवेंट को softEndTime को या उससे पहले होने देने को प्राथमिकता देती है. इसके लिए, इस बात पर ध्यान दिया जाता है कि इवेंट softEndTime के बाद कितने समय बाद होगा. startTime, endTime, softStartTime, और softEndTime, ग्लोबल टाइम सीमाओं के अंदर होने चाहिए (ShipmentModel.global_start_time और ShipmentModel.global_end_time देखें) और इनके मुताबिक होना चाहिए:
0 <= `startTime` <= `softStartTime` <= `endTime` and
0 <= `startTime` <= `softEndTime` <= `endTime`.
| JSON के काेड में दिखाना |
|---|
{ "startTime": string, "endTime": string, "softStartTime": string, "softEndTime": string, "costPerHourBeforeSoftStartTime": number, "costPerHourAfterSoftEndTime": number } |
| फ़ील्ड | |
|---|---|
startTime |
'रिलीज़ की समयसीमा' की शुरुआत का समय. अगर कोई वैल्यू नहीं दी जाती है, तो इसे आरएफ़सी3339 यूटीसी के "Zulu" फ़ॉर्मैट में एक टाइमस्टैंप, नैनोसेकंड रिज़ॉल्यूशन और नौ दशमलव अंकों के साथ. उदाहरण के लिए: |
endTime |
मुश्किल समय की अवधि खत्म होने का समय. अगर इसे सेट नहीं किया गया है, तो इसे आरएफ़सी3339 यूटीसी के "ज़ुलू" फ़ॉर्मैट में एक टाइमस्टैंप, जिसमें नैनोसेकंड रिज़ॉल्यूशन और ज़्यादा से ज़्यादा नौ फ़्रैक्शनल अंक हैं. उदाहरण के लिए: |
softStartTime |
समयावधि के शुरू होने का समय. आरएफ़सी3339 यूटीसी के "Zulu" फ़ॉर्मैट में एक टाइमस्टैंप, नैनोसेकंड रिज़ॉल्यूशन और नौ दशमलव अंकों के साथ. उदाहरण: |
softEndTime |
समयसीमा खत्म होने का अनुमानित समय. आरएफ़सी3339 यूटीसी के "ज़ुलू" फ़ॉर्मैट में एक टाइमस्टैंप, जिसमें नैनोसेकंड रिज़ॉल्यूशन और ज़्यादा से ज़्यादा नौ फ़्रैक्शनल अंक हैं. उदाहरण के लिए: |
costPerHourBeforeSoftStartTime |
अगर इवेंट softStartTime से पहले होता है, तो मॉडल में अन्य लागतों में हर घंटे की लागत जोड़ी जाती है. इसकी गणना इस तरह से की जाती है: यह लागत, पॉज़िटिव होनी चाहिए. साथ ही, यह फ़ील्ड सिर्फ़ तब सेट किया जा सकता है, जब softStartTime सेट किया गया हो. |
costPerHourAfterSoftEndTime |
अगर इवेंट यह लागत पॉज़िटिव होनी चाहिए. साथ ही, फ़ील्ड को सिर्फ़ तब सेट किया जा सकता है, जब |
वाहन
शिपिंग में समस्या वाले वाहन का मॉडल. शिपमेंट से जुड़ी समस्या हल करने पर, इस वाहन के लिए एक रास्ता, startLocation से शुरू होगा और endLocation पर खत्म होगा. रास्ता, विज़िट का क्रम होता है (ShipmentRoute देखें).
| JSON के काेड में दिखाना |
|---|
{ "displayName": string, "travelMode": enum ( |
| फ़ील्ड | |
|---|---|
displayName |
वाहन का डिसप्ले नेम, जिसे उपयोगकर्ता ने तय किया है. इसमें ज़्यादा से ज़्यादा 63 वर्ण हो सकते हैं. साथ ही, UTF-8 वर्णों का इस्तेमाल किया जा सकता है. |
travelMode |
यात्रा का मोड, जिससे वाहन के लिए इस्तेमाल की जा सकने वाली सड़कों और उसकी स्पीड पर असर पड़ता है. |
routeModifiers |
शर्तों का एक सेट, जो दिए गए वाहन के लिए रास्तों की गणना के तरीके को प्रभावित करती है. |
startLocation |
वह भौगोलिक जगह जहां से सामान पिक अप करने से पहले वाहन शुरू होता है. अगर जानकारी नहीं दी जाती है, तो वाहन पहले पिक अप पर शुरू हो जाएगा. अगर शिपमेंट मॉडल में अवधि और दूरी के मैट्रिक्स हैं, तो |
startWaypoint |
ऐसी भौगोलिक जगह दिखाने वाला वेपॉइंट जहां किसी शिपमेंट को पिक अप करने से पहले, गाड़ी शुरू होती है. अगर |
endLocation |
वह भौगोलिक जगह जहां वाहन आखिरी |
endWaypoint |
उस भौगोलिक जगह को दिखाने वाला वेपॉइंट जहां आखिरी |
startTags[] |
वाहन के रूट की शुरुआत से जुड़े टैग के बारे में बताता है. खाली या डुप्लीकेट स्ट्रिंग की अनुमति नहीं है. |
endTags[] |
वाहन के रूट के आखिर में लगे टैग के बारे में बताता है. खाली या डुप्लीकेट स्ट्रिंग की अनुमति नहीं है. |
startTimeWindows[] |
टाइम विंडो, जिस दौरान वाहन अपनी शुरुआती जगह से निकल सकता है. ये समयसीमाएं, ग्लोबल समयसीमाओं के अंदर होनी चाहिए ( बार-बार होने वाले एक ही फ़ील्ड की टाइम विंडो अलग-अलग होनी चाहिए. इसका मतलब है कि कोई भी टाइम विंडो, किसी दूसरी टाइम विंडो के साथ ओवरलैप नहीं हो सकती या उसके बगल में नहीं हो सकती. साथ ही, वे टाइम विंडो, समय के हिसाब से क्रम में होनी चाहिए.
|
endTimeWindows[] |
टाइम विंडो, जिस दौरान वाहन अपनी मंज़िल तक पहुंच सकता है. ये समयसीमाएं, ग्लोबल समयसीमाओं के अंदर होनी चाहिए ( बार-बार होने वाले एक ही फ़ील्ड की टाइम विंडो अलग-अलग होनी चाहिए. इसका मतलब है कि कोई भी टाइम विंडो, किसी दूसरी टाइम विंडो के साथ ओवरलैप नहीं हो सकती या उसके बगल में नहीं हो सकती. साथ ही, वे टाइम विंडो, समय के हिसाब से क्रम में होनी चाहिए.
|
unloadingPolicy |
वाहन पर लागू की गई, सामान उतारने की नीति. |
loadLimits |
वाहन की क्षमताएं (उदाहरण के लिए, वज़न, वॉल्यूम, पैलेट की संख्या). मैप में मौजूद कुंजियां, लोड के टाइप के आइडेंटिफ़ायर हैं और ये ऐसा ऑब्जेक्ट जिसमें |
costPerHour |
वाहन के लिए शुल्क: इसमें बताई गई कुल कीमत, वाहन के रास्ते की हर घंटे की कीमत. यह शुल्क, रास्ते में लगने वाले कुल समय पर लागू होता है. इसमें यात्रा का समय, इंतज़ार का समय, और यात्रा के दौरान रुकने का समय शामिल होता है. सिर्फ़ |
costPerTraveledHour |
वाहन के रास्ते पर, हर घंटे की यात्रा की लागत. यह लागत, सिर्फ़ रास्ते में लगने वाले समय (यानी |
costPerKilometer |
वाहन के रास्ते का हर किलोमीटर का किराया. यह कीमत, |
fixedCost |
अगर इस वाहन का इस्तेमाल शिपमेंट को मैनेज करने के लिए किया जाता है, तो तय की गई कीमत लागू होती है. |
usedIfRouteIsEmpty |
यह फ़ील्ड वाहनों पर सिर्फ़ तब लागू होता है, जब उनके रास्ते पर कोई शिपमेंट नहीं भेजा जाता. इसमें यह जानकारी मिलती है कि इस मामले में वाहन को इस्तेमाल किया गया माना जाना चाहिए या नहीं. अगर यह 'सही है' पर सेट है, तो वाहन अपनी शुरुआती जगह से आखिरी जगह तक जाता है, भले ही वह कोई शिपमेंट न करता हो. साथ ही, शुरुआती जगह से आखिरी जगह तक की यात्रा में लगने वाले समय और दूरी की लागत को ध्यान में रखा जाता है. ऐसा नहीं करने पर, यह अपनी शुरुआत से अपनी जगह तक नहीं पहुंचेगा. साथ ही, इस वाहन के लिए, |
routeDurationLimit |
यह सीमा, वाहन के रास्ते की कुल अवधि पर लागू होती है. दिए गए |
travelDurationLimit |
यह सीमा, वाहन के रास्ते की यात्रा की अवधि पर लागू होती है. किसी |
routeDistanceLimit |
यह सीमा, वाहन के रास्ते की कुल दूरी पर लागू होती है. किसी दिए गए |
extraVisitDurationForVisitType |
visitTypes स्ट्रिंग से लेकर अवधि तक के मैप के बारे में बताता है. बताए गए अगर विज़िट के अनुरोध के कई टाइप हैं, तो मैप में हर टाइप के लिए एक अवधि जोड़ी जाएगी. ऐसा ऑब्जेक्ट जिसमें |
breakRule |
इस वाहन के लिए ब्रेक का शेड्यूल बताता है. अगर यह खाली है, तो इस वाहन के लिए कोई ब्रेक शेड्यूल नहीं किया जाएगा. |
label |
इस वाहन के लिए लेबल तय करता है. इस लेबल को जवाब में, उससे जुड़े |
ignore |
अगर यह सही है, तो अगर अगर |
travelDurationMultiple |
यह एक मल्टीप्लिकेटिव फ़ैक्टर है. इसका इस्तेमाल इस वाहन से यात्रा में लगने वाले समय को बढ़ाने या कम करने के लिए किया जा सकता है. उदाहरण के लिए, इसे 2.0 पर सेट करने का मतलब है कि यह वाहन धीमा है और यात्रा में लगने वाला समय, स्टैंडर्ड वाहनों के मुकाबले दोगुना है. इससे, विज़िट के कुल समय पर कोई असर नहीं पड़ता. अगर चेतावनी: इस मल्टीप्लायर को लागू करने के बाद, यात्रा के समय को सबसे नज़दीकी सेकंड में राउंड किया जाएगा. हालांकि, कोई भी अंकों वाला ऑपरेशन करने से पहले ऐसा किया जाएगा. इसलिए, मल्टीप्लायर का छोटा होना, सटीक समय का पता लगाने में रुकावट डाल सकता है. यहां |
TravelMode
यात्रा के ऐसे मोड जिनका इस्तेमाल वाहन कर सकते हैं.
ये, Google Maps Platform Routes Preferred API के यात्रा के मोड के सबसेट होने चाहिए. ज़्यादा जानकारी के लिए, https://developers.google.com/maps/documentation/routes_preferred/reference/rest/Shared.Types/RouteTravelMode पर जाएं.
| Enums | |
|---|---|
TRAVEL_MODE_UNSPECIFIED |
अनिर्दिष्ट यात्रा मोड, DRIVING के बराबर. |
DRIVING |
ड्राइविंग निर्देशों से जुड़ा यात्रा मोड (कार, ...). |
WALKING |
पैदल चलने के निर्देशों से जुड़ा यात्रा मोड. |
TRUCK |
ट्रक से यात्रा करना. इस मोड में शारीरिक और कानूनी पाबंदियां लागू होंगी. |
RouteModifiers
यह नीति, वाहन के रास्तों का हिसाब लगाते समय, वैकल्पिक शर्तों के सेट को एनकैप्सुलेट करती है. यह सुविधा Google Maps Platform Routes Preferred API में मौजूद RouteModifiers की तरह ही है. इसे देखें: https://developers.google.com/maps/documentation/routes_preferred/reference/rest/Shared.Types/RouteModifiers.
| JSON के काेड में दिखाना |
|---|
{
"vehicleInfo": {
object ( |
| फ़ील्ड | |
|---|---|
vehicleInfo |
वाहन की जानकारी देती है. |
VehicleInfo
इसमें वाहन की जानकारी होती है, जैसे कि ट्रक की जानकारी.
| JSON के काेड में दिखाना |
|---|
{ "totalAxleCount": integer, "totalHeightMm": string, "totalLengthMm": string, "totalWidthMm": string, "totalWeightKg": string, "trailerInfo": [ { object ( |
| फ़ील्ड | |
|---|---|
totalAxleCount |
ऐक्सल की कुल संख्या. यह वैल्यू 2 से ज़्यादा होनी चाहिए. ट्रक या ट्रेलर से सामान ले जाने पर ट्रिगर करने के लिए, इसे सेट करना ज़रूरी है. यह सिर्फ़ |
totalHeightMm |
वाहन की ऊंचाई, जिसमें अटैच किए गए ट्रेलर की ऊंचाई शामिल है. ट्रक या ट्रेलर को ट्रिगर करने के लिए सेट किया जाना ज़रूरी है. यह सिर्फ़ |
totalLengthMm |
वाहन की लंबाई, जिसमें अटैच किए गए ट्रेलर की लंबाई शामिल है. ट्रक या ट्रेलर को ट्रिगर करने के लिए सेट किया जाना ज़रूरी है. यह सिर्फ़ |
totalWidthMm |
वाहन की चौड़ाई, जिसमें अटैच किए गए ट्रेलर की चौड़ाई भी शामिल है. ट्रक या ट्रेलर को ट्रिगर करने के लिए सेट किया जाना ज़रूरी है. यह सिर्फ़ |
totalWeightKg |
वाहन का वज़न, इसमें अटैच किए गए ट्रेलर का वज़न भी शामिल है. इस संदर्भ में वज़न का मतलब असल वज़न है, न कि वज़न की रेटिंग. ट्रक या ट्रेलर से सामान ले जाने पर ट्रिगर करने के लिए, इसे सेट करना ज़रूरी है. यह सिर्फ़ |
trailerInfo[] |
यह सिर्फ़ |
hazardousGoodsTypes[] |
अगर वाहन में खतरनाक सामग्री ले जाई जाती है, तो उसकी सूची. |
TrailerInfo
वाहन से जुड़े अलग-अलग ट्रेलर के बारे में जानकारी. ट्रकिंग के लिए, किसी भी ट्रेलर की लंबाई की जानकारी देना ज़रूरी है. कुल एट्रिब्यूट में, किसी भी ट्रेलर के एट्रिब्यूट शामिल होने चाहिए. उदाहरण के लिए, totalHeightMm हमेशा trailerInfo.height_mm से ज़्यादा या उसके बराबर होना चाहिए.
| JSON के काेड में दिखाना |
|---|
{ "lengthMm": string } |
| फ़ील्ड | |
|---|---|
lengthMm |
ट्रेलर की लंबाई. |
HazardousGoodsType
अलग-अलग तरह के खतरनाक पदार्थ.
| Enums | |
|---|---|
HAZARDOUS_GOODS_TYPE_UNSPECIFIED |
खतरनाक सामान के टाइप के बारे में नहीं बताया गया है. |
EXPLOSIVES |
विस्फोटक सामान. |
GASES |
गैसें. |
FLAMMABLE |
ज्वलनशील चीज़ें. |
COMBUSTIBLE |
ज्वलनशील सामान. |
ORGANIC |
ऑर्गैनिक प्रॉडक्ट. |
POISON |
ज़हरीला सामान. |
RADIOACTIVE |
रेडियोऐक्टिव सामान. |
CORROSIVE |
खराब सामान. |
ASPIRATION_HAZARD |
खतरनाक सामान. |
ENVIRONMENTAL_HAZARD |
पर्यावरण के लिए खतरनाक सामान. |
OTHER |
अन्य तरह के सामान. |
UnloadingPolicy
वाहन को अनलोड करने से जुड़ी नीति. यह सिर्फ़ उन शिपमेंट पर लागू होता है जिनमें पिकअप और डिलीवरी, दोनों की सुविधा होती है.
unloadingPolicy के अलावा, अन्य शिपमेंट के लिए, रूट पर कहीं भी शिपिंग की जा सकती है.
| Enums | |
|---|---|
UNLOADING_POLICY_UNSPECIFIED |
प्रॉडक्ट को अनलोड करने की नीति के बारे में जानकारी नहीं दी गई है. पिकअप के बाद ही डिलीवरी की जानी चाहिए. |
LAST_IN_FIRST_OUT |
डिलीवरी, पिकअप के उलटे क्रम में होनी चाहिए |
FIRST_IN_FIRST_OUT |
डिलीवरी उसी क्रम में होनी चाहिए जिस क्रम में पिकअप की सुविधा है |
LoadLimit
वाहन पर लागू होने वाली लोड की सीमा के बारे में बताता है. जैसे, "यह ट्रक सिर्फ़ 3,500 कि॰ग्रा॰ तक का वज़न ले सकता है". loadLimits देखें.
| JSON के काेड में दिखाना |
|---|
{ "softMaxLoad": string, "costPerUnitAboveSoftMax": number, "startLoadInterval": { object ( |
| फ़ील्ड | |
|---|---|
softMaxLoad |
लोड की एक सामान्य सीमा. |
costPerUnitAboveSoftMax |
अगर इस वाहन के रास्ते पर लोड कभी भी |
startLoadInterval |
रास्ते की शुरुआत में, वाहन के लोड होने में लगने वाला समय. |
endLoadInterval |
रूट के अंत में वाहन का लोड होने का मंज़ूर किया जाने वाला इंटरवल. |
maxLoad |
लोड की ज़्यादा से ज़्यादा अनुमति वाली रकम. |
इंटरवल
स्वीकार की जाने वाली लोड रकम का इंटरवल.
| JSON के काेड में दिखाना |
|---|
{ "min": string, "max": string } |
| फ़ील्ड | |
|---|---|
min |
कम से कम लोड. यह 0 या इससे ज़्यादा होना चाहिए. अगर दोनों के बारे में बताया गया है, तो |
max |
ज़्यादा से ज़्यादा लोड. यह 0 या इससे ज़्यादा होना चाहिए. अगर यह नहीं बताया गया है, तो ज़्यादा से ज़्यादा लोड पर इस मैसेज का असर नहीं होगा. अगर दोनों की जानकारी दी गई है, तो |
DurationLimit
वाहन के रूट की ज़्यादा से ज़्यादा अवधि तय करने वाली सीमा. यह कठोर या मुलायम हो सकता है.
सॉफ़्ट लिमिट फ़ील्ड को तय करने पर, सॉफ़्ट मैक्स थ्रेशोल्ड और उससे जुड़ी कीमत, दोनों को एक साथ तय किया जाना चाहिए.
| JSON के काेड में दिखाना |
|---|
{ "maxDuration": string, "softMaxDuration": string, "quadraticSoftMaxDuration": string, "costPerHourAfterSoftMax": number, "costPerSquareHourAfterQuadraticSoftMax": number } |
| फ़ील्ड | |
|---|---|
maxDuration |
हार्ड लिमिट की वजह से, अवधि को ज़्यादा से ज़्यादा समय में सीमित किया जा सकता है. सेकंड में एक अवधि, जिसमें ज़्यादा से ज़्यादा नौ दशमलव अंक होते हैं और जो ' |
softMaxDuration |
अस्थायी सीमा, अधिकतम अवधि सीमा लागू नहीं करती, लेकिन उल्लंघन करने पर रूट के लिए शुल्क देना पड़ता है. यह लागत, मॉडल में बताई गई अन्य लागतों के साथ जोड़ दी जाती है. इन सभी लागतों की इकाई एक ही होती है. अगर सेकंड में एक अवधि, जिसमें ज़्यादा से ज़्यादा नौ दशमलव अंक होते हैं और जो ' |
quadraticSoftMaxDuration |
यह एक सॉफ़्ट सीमा है, जो गतिविधि की ज़्यादा से ज़्यादा अवधि को लागू नहीं करती. हालांकि, इस सीमा का उल्लंघन करने पर, रास्ते की लागत बढ़ जाती है. यह लागत, गतिविधि की अवधि के हिसाब से बढ़ती है. यह लागत, उसी इकाई के साथ मॉडल में तय की गई अन्य लागतों को जोड़ देती है. अगर
सेकंड में एक अवधि, जिसमें ज़्यादा से ज़्यादा नौ दशमलव अंक होते हैं और जो ' |
costPerHourAfterSoftMax |
लागत गैर-ऋणात्मक होनी चाहिए. |
costPerSquareHourAfterQuadraticSoftMax |
अगर अवधि थ्रेशोल्ड से कम है, तो अतिरिक्त शुल्क 0 होगा. अगर अवधि थ्रेशोल्ड से ज़्यादा है, तो शुल्क इस हिसाब से होगा: कीमत नेगेटिव नहीं होनी चाहिए. |
DistanceLimit
तय की गई ज़्यादा से ज़्यादा दूरी तय करने वाली सीमा. यह कठोर या मुलायम हो सकता है.
अगर सॉफ़्ट लिमिट तय की गई है, तो softMaxMeters और costPerKilometerAboveSoftMax, दोनों एट्रिब्यूट की वैल्यू दी जानी चाहिए. साथ ही, वैल्यू शून्य से कम होनी चाहिए.
| JSON के काेड में दिखाना |
|---|
{ "maxMeters": string, "softMaxMeters": string, "costPerKilometerAboveSoftMax": number } |
| फ़ील्ड | |
|---|---|
maxMeters |
ज़्यादा से ज़्यादा MaxMeters के लिए, दूरी को सीमित करने वाली हार्ड लिमिट. सीमा, नेगेटिव नहीं होनी चाहिए. |
softMaxMeters |
सॉफ्ट लिमिट, तय की गई दूरी की सीमा को लागू नहीं करती. हालांकि, इसकी सीमा का उल्लंघन करने पर, मॉडल में तय की गई अन्य लागतों के साथ एक ही यूनिट में लागत जुड़ जाती है. अगर softMaxMeters तय किया गया है, तो यह maxMeters से कम होना चाहिए और यह नॉन-नेगेटिव होना चाहिए. |
costPerKilometerAboveSoftMax |
अगर दूरी कीमत नेगेटिव नहीं होनी चाहिए. |
BreakRule
वाहन के लिए टाइम ब्रेक जनरेट करने के नियम. जैसे, लंच ब्रेक. ब्रेक, एक तय समयावधि होती है. इस दौरान, वाहन अपनी मौजूदा जगह पर बिना किसी गतिविधि के खड़ा रहता है और कोई विज़िट नहीं कर सकता. ब्रेक मिल सकता है:
- दो विज़िट के बीच की यात्रा के दौरान (इसमें विज़िट से ठीक पहले या ठीक बाद का समय शामिल होता है, लेकिन विज़िट के बीच का समय शामिल नहीं होता), ऐसे में यह विज़िट के बीच के ट्रांज़िट समय को बढ़ा देता है,
- या वाहन को चालू किए जाने से पहले (हो सकता है कि ब्रेक के बीच में वाहन चालू न हो). इस स्थिति में, गाड़ी के शुरू होने के समय पर इसका कोई असर नहीं पड़ता.
- या वाहन खत्म होने के बाद (ठीक इसी तरह, वाहन खत्म होने के समय के साथ).
| JSON के काेड में दिखाना |
|---|
{ "breakRequests": [ { object ( |
| फ़ील्ड | |
|---|---|
breakRequests[] |
ब्रेक का क्रम. |
frequencyConstraints[] |
एक से ज़्यादा |
BreakRequest
हर वाहन पर लागू होने वाले ब्रेक के क्रम (जैसे, उनका नंबर और क्रम) के बारे में पहले से पता होना चाहिए. दोहराए गए BreakRequest, उस क्रम को उसी क्रम में तय करते हैं जिसमें उन्हें होना चाहिए. उनकी टाइम विंडो (earliestStartTime / latestStartTime) ओवरलैप हो सकती हैं, लेकिन वे ऑर्डर के हिसाब से होनी चाहिए (इसे चुना गया है).
| JSON के काेड में दिखाना |
|---|
{ "earliestStartTime": string, "latestStartTime": string, "minDuration": string } |
| फ़ील्ड | |
|---|---|
earliestStartTime |
ज़रूरी है. ब्रेक की शुरुआत का निचला थ्रेशोल्ड (इसमें शामिल है). आरएफ़सी3339 यूटीसी के "Zulu" फ़ॉर्मैट में एक टाइमस्टैंप, नैनोसेकंड रिज़ॉल्यूशन और नौ दशमलव अंकों के साथ. उदाहरण: |
latestStartTime |
ज़रूरी है. ब्रेक की शुरुआत का ऊपरी बाउंड (शामिल). आरएफ़सी3339 यूटीसी के "ज़ुलू" फ़ॉर्मैट में एक टाइमस्टैंप, जिसमें नैनोसेकंड रिज़ॉल्यूशन और ज़्यादा से ज़्यादा नौ फ़्रैक्शनल अंक हैं. उदाहरण: |
minDuration |
ज़रूरी है. ब्रेक की कम से कम अवधि. यह संख्या पॉज़िटिव होनी चाहिए. सेकंड में कुल अवधि, जिसमें दशमलव के बाद नौ अंक हो सकते हैं. यह अवधि ' |
FrequencyConstraint
ब्रेक की कम से कम फ़्रीक्वेंसी लागू करके, ऊपर बताए गए ब्रेक की फ़्रीक्वेंसी और अवधि को सीमित किया जा सकता है. जैसे, "हर 12 घंटे में कम से कम एक घंटे का ब्रेक होना चाहिए". मान लें कि इसका मतलब "12 घंटे की किसी भी स्लाइडिंग टाइम विंडो में, कम से कम एक घंटे का ब्रेक होना चाहिए" है. इस उदाहरण का अनुवाद, इस FrequencyConstraint में किया जाएगा:
{
minBreakDuration { seconds: 3600 } # 1 hour.
maxInterBreakDuration { seconds: 39600 } # 11 hours (12 - 1 = 11).
}
सलूशन में ब्रेक का समय और अवधि, BreakRequest में पहले से तय की गई टाइम विंडो और कम से कम अवधि के साथ-साथ इन सभी पाबंदियों को ध्यान में रखकर तय की जाएगी.
FrequencyConstraint व्यावहारिक तौर पर ऐसे ब्रेक पर लागू हो सकता है जो लगातार नहीं बदलते हैं. उदाहरण के लिए, नीचे दिया गया शेड्यूल "हर 12 घंटे में एक घंटे" के उदाहरण के मुताबिक है:
04:00 vehicle start
.. performing travel and visits ..
09:00 1 hour break
10:00 end of the break
.. performing travel and visits ..
12:00 20-min lunch break
12:20 end of the break
.. performing travel and visits ..
21:00 1 hour break
22:00 end of the break
.. performing travel and visits ..
23:59 vehicle end
| JSON के काेड में दिखाना |
|---|
{ "minBreakDuration": string, "maxInterBreakDuration": string } |
| फ़ील्ड | |
|---|---|
minBreakDuration |
ज़रूरी है. इस शर्त के लिए, ब्रेक की कम से कम अवधि. शून्य से बड़ी होनी चाहिए. सेकंड में कुल अवधि, जिसमें दशमलव के बाद नौ अंक हो सकते हैं. यह अवधि ' |
maxInterBreakDuration |
ज़रूरी है. रास्ते में किसी भी समयावधि का ज़्यादा से ज़्यादा स्पैन, जिसमें कम से कम सेकंड में एक अवधि, जिसमें ज़्यादा से ज़्यादा नौ दशमलव अंक होते हैं और जो ' |
DurationDistanceMatrix
इस सेटिंग से, यात्रा और वाहन के शुरू होने की जगहों से लेकर यात्रा और वाहन के खत्म होने की जगहों तक, कुल समय और दूरी की जानकारी मिलती है.
| JSON के काेड में दिखाना |
|---|
{
"rows": [
{
object ( |
| फ़ील्ड | |
|---|---|
rows[] |
यह अवधि और दूरी के मैट्रिक की पंक्तियों के बारे में बताता है. इसमें |
vehicleStartTag |
यह टैग तय करता है कि यह अवधि और दूरी मैट्रिक किन वाहनों पर लागू होती है. अगर इस फ़ील्ड को खाली छोड़ा जाता है, तो यह सभी वाहनों पर लागू होता है. साथ ही, इसमें सिर्फ़ एक ही मैट्रिक्स हो सकता है. हर वाहन की शुरुआत, सिर्फ़ एक मैट्रिक से मेल खानी चाहिए. इसका मतलब है कि उसका एक सभी मैट्रिक में अलग-अलग |
पंक्ति
कुल समय और दूरी के आव्यूह की जानकारी देता है.
| JSON के काेड में दिखाना |
|---|
{ "durations": [ string ], "meters": [ number ] } |
| फ़ील्ड | |
|---|---|
durations[] |
किसी लाइन के लिए, कुल समय की वैल्यू. इसमें सेकंड में एक अवधि, जिसमें ज़्यादा से ज़्यादा नौ दशमलव अंक होते हैं और जो ' |
meters[] |
किसी लाइन के लिए दूरी की वैल्यू. अगर मॉडल में दूरी से जुड़ी कोई लागत या पाबंदी नहीं है, तो इसे खाली छोड़ा जा सकता है. अगर ऐसा नहीं है, तो इसमें |
TransitionAttributes
किसी रूट पर लगातार दो विज़िट के बीच ट्रांज़िशन एट्रिब्यूट बताता है. एक ही ट्रांज़िशन पर कई TransitionAttributes लागू हो सकते हैं: इस स्थिति में, सभी अतिरिक्त शुल्क जुड़ जाते हैं और सबसे सख्त पाबंदी या सीमा लागू होती है (सामान्य "AND" सिमैंटिक का इस्तेमाल करके).
| JSON के काेड में दिखाना |
|---|
{
"srcTag": string,
"excludedSrcTag": string,
"dstTag": string,
"excludedDstTag": string,
"cost": number,
"costPerKilometer": number,
"distanceLimit": {
object ( |
| फ़ील्ड | |
|---|---|
srcTag |
ऐसे टैग जो (src->dst) ट्रांज़िशन के सेट को तय करते हैं जिन पर ये एट्रिब्यूट लागू होते हैं. किसी सोर्स विज़िट या वाहन के शुरू होने का समय, अगर उसके |
excludedSrcTag |
|
dstTag |
किसी डेस्टिनेशन विज़िट या वाहन के एंड का मिलान अगर उसके |
excludedDstTag |
|
cost |
इस ट्रांज़िशन की लागत तय करता है. यह मॉडल में मौजूद अन्य सभी लागतों की तरह ही एक ही इकाई में होती है. साथ ही, यह नकारात्मक नहीं होनी चाहिए. इसे अन्य सभी मौजूदा लागतों पर लागू किया जाता है. |
costPerKilometer |
इस बदलाव के दौरान तय की गई दूरी के लिए, लागू की गई हर किलोमीटर की लागत की जानकारी देता है. यह वैल्यू, वाहनों पर बताए गए किसी भी |
distanceLimit |
इस ट्रांज़िशन को पूरा करने के दौरान, तय की गई दूरी के बारे में बताता है. 2021/06 से, सिर्फ़ अस्थायी सीमाओं का इस्तेमाल किया जा सकता है. |
delay |
इस ट्रांज़िशन को लागू करने में लगने वाले समय की जानकारी देता है. यह देरी हमेशा सोर्स विज़िट खत्म होने के बाद और डेस्टिनेशन विज़िट शुरू होने से पहले होती है. सेकंड में कुल अवधि, जिसमें दशमलव के बाद नौ अंक हो सकते हैं. यह अवधि ' |
ShipmentTypeIncompatibility
शिपिंग के तरीके के आधार पर, शिपमेंट के बीच सही तरीके से काम नहीं करता है. एक ही रास्ते पर, एक-दूसरे के साथ काम न करने वाले शिपमेंट दिखने पर पाबंदी, शिपमेंट के साथ काम न करने वाले मोड के आधार पर लगाई जाती है.
| JSON के काेड में दिखाना |
|---|
{
"types": [
string
],
"incompatibilityMode": enum ( |
| फ़ील्ड | |
|---|---|
types[] |
असंगत प्रकारों की सूची. सूची में शामिल दो शिपमेंट, जिनका |
incompatibilityMode |
काम न करने की समस्या पर लागू मोड. |
IncompatibilityMode
ऐसे मोड जिनसे यह तय होता है कि एक ही रास्ते पर, साथ काम न करने वाले शिपमेंट के दिखने पर पाबंदी कैसे लगाई जाए.
| Enums | |
|---|---|
INCOMPATIBILITY_MODE_UNSPECIFIED |
काम न करने वाला कोई मोड. इस वैल्यू का इस्तेमाल कभी नहीं किया जाना चाहिए. |
NOT_PERFORMED_BY_SAME_VEHICLE |
इस मोड में, एक-दूसरे के साथ काम न करने वाले दो शिपमेंट के लिए, एक ही वाहन का इस्तेमाल नहीं किया जा सकता. |
NOT_IN_SAME_VEHICLE_SIMULTANEOUSLY |
|
ShipmentTypeRequirement
शिपमेंट के shipmentType के आधार पर, शिपमेंट के बीच की ज़रूरी शर्तों के बारे में बताता है. ज़रूरी शर्तों की जानकारी, 'ज़रूरी शर्तें' मोड से तय होती है.
| JSON के काेड में दिखाना |
|---|
{
"requiredShipmentTypeAlternatives": [
string
],
"dependentShipmentTypes": [
string
],
"requirementMode": enum ( |
| फ़ील्ड | |
|---|---|
requiredShipmentTypeAlternatives[] |
शिपिंग के ऐसे अन्य तरीकों की सूची जो |
dependentShipmentTypes[] |
ध्यान दें: ज़रूरी शर्तों की ऐसी चेन बनाने की अनुमति नहीं है जिसमें |
requirementMode |
ज़रूरी शर्त पर लागू मोड. |
RequirementMode
किसी रास्ते पर डिपेंडेंट शिपमेंट के दिखने के तरीके तय करने वाले मोड.
| Enums | |
|---|---|
REQUIREMENT_MODE_UNSPECIFIED |
ज़रूरी शर्तों का मोड नहीं बताया गया है. इस वैल्यू का इस्तेमाल कभी नहीं किया जाना चाहिए. |
PERFORMED_BY_SAME_VEHICLE |
इस मोड में, सभी "डिपेंडेंट" शिपमेंट के लिए एक ही वाहन शेयर करना ज़रूरी है. हालांकि, यह ज़रूरी है कि कम से कम एक "ज़रूरी" शिपमेंट के लिए यह जानकारी दी गई हो. |
IN_SAME_VEHICLE_AT_PICKUP_TIME |
इसलिए, "डिपेंडेंट" शिपमेंट के पिकअप के लिए, इनमें से कोई एक होना चाहिए:
|
IN_SAME_VEHICLE_AT_DELIVERY_TIME |
पहले की तरह ही, सिवाय इसके कि "डिपेंडेंट" शिपमेंट के लिए, डिलीवरी के समय उनके वाहन में "ज़रूरी" शिपमेंट होना चाहिए. |
PrecedenceRule
दो इवेंट के बीच प्राथमिकता का नियम (हर इवेंट, शिपमेंट का पिकअप या डिलीवरी है): "पहले" इवेंट के शुरू होने के कम से कम offsetDuration बाद, "दूसरे" इवेंट को शुरू करना होगा.
कई प्राथमिकताएं एक ही (या मिलते-जुलते) इवेंट से जुड़ी हो सकती हैं, जैसे कि "B का पिक अप A की डिलीवरी के बाद होता है" और "C का पिक अप B के पिकअप के बाद होता है".
इसके अलावा, प्राथमिकता सिर्फ़ तब लागू होती है, जब दोनों शिपमेंट हो जाते हैं और उन्हें अनदेखा कर दिया जाता है.
| JSON के काेड में दिखाना |
|---|
{ "firstIsDelivery": boolean, "secondIsDelivery": boolean, "offsetDuration": string, "firstIndex": integer, "secondIndex": integer } |
| फ़ील्ड | |
|---|---|
firstIsDelivery |
इससे पता चलता है कि "पहला" इवेंट डिलीवरी है या नहीं. |
secondIsDelivery |
इससे पता चलता है कि "दूसरा" इवेंट डिलीवरी है या नहीं. |
offsetDuration |
"पहले" और "दूसरे" इवेंट के बीच का ऑफ़सेट. यह नेगेटिव हो सकता है. सेकंड में एक अवधि, जिसमें ज़्यादा से ज़्यादा नौ दशमलव अंक होते हैं और जो ' |
firstIndex |
"पहले" इवेंट का शिपमेंट इंडेक्स. यह फ़ील्ड भरना ज़रूरी है. |
secondIndex |
"दूसरे" इवेंट का शिपमेंट इंडेक्स. इस फ़ील्ड के बारे में बताना ज़रूरी है. |