ComputeCustomRoutesResponse

ComputeCustomRoutes का जवाब देने वाला मैसेज.

JSON के काेड में दिखाना
{
  "routes": [
    {
      object (CustomRoute)
    }
  ],
  "fastestRoute": {
    object (CustomRoute)
  },
  "shortestRoute": {
    object (CustomRoute)
  },
  "fallbackInfo": {
    object (FallbackInfo)
  }
}
फ़ील्ड
routes[]

object (CustomRoute)

इनपुट रूट से जुड़े मकसद के लिए, 'सबसे अच्छा' रूट.

fastestRoute

object (CustomRoute)

सबसे तेज़ रास्ता.

shortestRoute

object (CustomRoute)

सबसे छोटा रेफ़रंस रूट.

fallbackInfo

object (FallbackInfo)

कस्टम रूट के लिए फ़ॉलबैक जानकारी.

CustomRoute

ग्राहक के बताए गए मकसद के आधार पर, कस्टम रूट को इनकैप्सुलेट करता है. CustomRoute में एक रूट और रूट टोकन होता है, जिसे NavSDK को पास किया जा सकता है, ताकि मोड़-दर-मोड़ नेविगेशन के लिए कस्टम रूट फिर से बनाया जा सके.

JSON के काेड में दिखाना
{
  "route": {
    object (Route)
  },
  "token": string
}
फ़ील्ड
route

object (Route)

इनपुट रूट के मकसद के लिए, रूट को 'सबसे अच्छा' माना जाता है.

token

string

वेब-सुरक्षित base64 कोड में बदला गया रास्ता टोकन, जिसे NavSDK को पास किया जा सकता है. इससे NavSDK, नेविगेशन के दौरान रास्ते को फिर से बना सकता है. साथ ही, रास्ता बदलने पर RoutesPreferred ComputeCustomRoutes को कॉल करने पर, मूल मकसद को पूरा किया जा सकता है. ग्राहकों को इस टोकन को ओपेक ब्लॉब के रूप में देखना चाहिए.

FallbackInfo

ComputeCustomRoutes के लिए फ़ॉलबैक की जानकारी को एन्क्रिप्ट (सुरक्षित) करता है. ComputeCustomRoutes दो तरह के फ़ॉलबैक करता है:

  1. अगर यह ग्राहक के अनुरोध किए गए routingPreference का इस्तेमाल करके, रूट को कंप्यूट नहीं कर पाता, तो यह किसी दूसरे रूटिंग मोड पर वापस चला जाएगा. इस मामले में, इस्तेमाल किए गए फ़ॉलबैक रूटिंग मोड के बारे में बताने के लिए, fallback_routing_mode और routing_mode_fallback_reason का इस्तेमाल किया जाता है. साथ ही, फ़ॉलबैक की वजह भी बताई जाती है.

  2. अगर यह खरीदार के बताए गए मकसद के लिए, 'सबसे अच्छा' रूट का पता नहीं लगा पा रहा है, तो हो सकता है कि यह किसी दूसरे मकसद पर वापस चला जाए. fallback_route_objective का इस्तेमाल, फ़ॉलबैक रूट के मकसद के बारे में बताने के लिए किया जाता है.

JSON के काेड में दिखाना
{
  "routingMode": enum (FallbackRoutingMode),
  "routingModeReason": enum (FallbackReason),
  "routeObjective": enum (FallbackRouteObjective)
}
फ़ील्ड
routingMode

enum (FallbackRoutingMode)

जवाब देने के लिए, रूटिंग मोड का इस्तेमाल किया गया. अगर फ़ॉलबैक ट्रिगर हुआ है, तो हो सकता है कि मोड, ओरिजनल क्लाइंट अनुरोध में सेट की गई रूटिंग प्राथमिकता से अलग हो.

routingModeReason

enum (FallbackReason)

इसकी वजह यह है कि ओरिजनल जवाब के बजाय फ़ॉलबैक रिस्पॉन्स का इस्तेमाल किया गया है. यह फ़ील्ड सिर्फ़ तब पॉप्युलेट होता है, जब फ़ॉलबैक मोड ट्रिगर होता है और फ़ॉलबैक रिस्पॉन्स मिलता है.

routeObjective

enum (FallbackRouteObjective)

जवाब के लिए इस्तेमाल किया गया रूट मकसद. अगर फ़ॉलबैक ट्रिगर किया गया था, तो मकसद, मूल क्लाइंट अनुरोध में बताए गए रूट मकसद से अलग हो सकता है.