রুট প্রতিক্রিয়া পর্যালোচনা

যখন Routes API একটি রুট গণনা করে, তখন এটি ইনপুট হিসাবে আপনার প্রদান করা ওয়েপয়েন্ট এবং কনফিগারেশন প্যারামিটার নেয়। API তারপর একটি প্রতিক্রিয়া প্রদান করে যাতে ডিফল্ট রুট এবং এক বা একাধিক বিকল্প রুট থাকে।

আপনার অনুরোধ করা ক্ষেত্রগুলির উপর ভিত্তি করে আপনার প্রতিক্রিয়া বিভিন্ন ধরণের রুট এবং অন্যান্য ডেটা অন্তর্ভুক্ত করতে পারে:

প্রতিক্রিয়া এই অন্তর্ভুক্ত করতে এই ডকুমেন্টেশন দেখুন
গাড়ির ইঞ্জিনের প্রকারের উপর ভিত্তি করে সবচেয়ে জ্বালানি বা শক্তি সাশ্রয়ী রুট। পরিবেশ বান্ধব রুট কনফিগার করুন
তিনটি বিকল্প রুট পর্যন্ত বিকল্প রুট অনুরোধ
একটি সম্পূর্ণ রুটের পলিলাইন, একটি রুটের প্রতিটি পায়ের জন্য এবং একটি পায়ের প্রতিটি ধাপের জন্য। রুট পলিলাইন অনুরোধ করুন
আনুমানিক টোল, ড্রাইভার বা গাড়ির জন্য উপলব্ধ যেকোন টোল মূল্য ছাড় বা পাস বিবেচনা করে। টোল ফি গণনা করুন
ভাষা কোড এবং পরিমাপ ইউনিট (ইম্পেরিয়াল বা মেট্রিক) দ্বারা স্থানীয় প্রতিক্রিয়া। স্থানীয় মান অনুরোধ করুন
একটি HTML পাঠ্য স্ট্রিং হিসাবে নেভিগেশন নির্দেশাবলী ফর্ম্যাট করতে, extraComputations HTML_FORMATTED_NAVIGATION_INSTRUCTIONS যোগ করুন। অতিরিক্ত গণনা

ইনপুট বিকল্পগুলির সম্পূর্ণ তালিকার জন্য, উপলব্ধ রুট বিকল্পগুলি এবং অনুরোধের বডিটি দেখুন।

প্রতিক্রিয়া ব্যবহার করে, আপনি আপনার গ্রাহকদের তাদের প্রয়োজনীয়তার জন্য উপযুক্ত রুট নির্বাচন করার জন্য প্রয়োজনীয় তথ্য সরবরাহ করতে পারেন।

ক্ষেত্রের মুখোশ সম্পর্কে

যখন আপনি একটি রুট গণনা করার জন্য একটি পদ্ধতি কল করেন, তখন আপনাকে অবশ্যই একটি ফিল্ড মাস্ক নির্দিষ্ট করতে হবে যা আপনাকে প্রতিক্রিয়াতে কোন ক্ষেত্রগুলিকে ফেরত দিতে চান তা নির্ধারণ করে। প্রত্যাবর্তিত ক্ষেত্রের কোনো ডিফল্ট তালিকা নেই। আপনি যদি এই তালিকাটি বাদ দেন, পদ্ধতিগুলি একটি ত্রুটি ফেরত দেয়।

এই নথির উদাহরণগুলি ক্ষেত্রের মুখোশগুলি বিবেচনায় না নিয়ে সম্পূর্ণ প্রতিক্রিয়া বস্তু দেখায়৷ একটি উত্পাদন পরিবেশে, আপনার প্রতিক্রিয়া শুধুমাত্র সেই ক্ষেত্রগুলিকে অন্তর্ভুক্ত করবে যা আপনি স্পষ্টভাবে ফিল্ড মাস্কে নির্দিষ্ট করেছেন৷

আরও তথ্যের জন্য, কোন তথ্য ফেরত দিতে হবে তা বেছে নিন দেখুন।

কপিরাইট প্রদর্শন সম্পর্কে

আপনার ব্যবহারকারীদের ফলাফলগুলি প্রদর্শন করার সময় আপনাকে অবশ্যই নিম্নলিখিত কপিরাইট বিবৃতি অন্তর্ভুক্ত করতে হবে:

Powered by Google, © YEAR Google

উদাহরণ স্বরূপ:

Powered by Google, ©2023 Google

রুট, পা এবং পদক্ষেপ সম্পর্কে

রুট এপিআই দ্বারা প্রত্যাবর্তিত প্রতিক্রিয়া দেখার আগে, আপনার একটি রুট তৈরির উপাদানগুলি সম্পর্কে বোঝা উচিত:

পথ, পা, এবং ধাপ।

আপনার প্রতিক্রিয়া এই রুট উপাদানগুলির প্রতিটি সম্পর্কে তথ্য থাকতে পারে:

  • রুট : মূল ওয়েপয়েন্ট থেকে পুরো ট্রিপ, যেকোনো মধ্যবর্তী ওয়েপয়েন্টের মাধ্যমে, গন্তব্য ওয়েপয়েন্ট পর্যন্ত। একটি রুট এক বা একাধিক পা নিয়ে গঠিত।

  • লেগ : একটি রুটের এক ওয়েপয়েন্ট থেকে রুটের পরবর্তী ওয়েপয়েন্টে যাওয়ার পথ। প্রতিটি পা এক বা একাধিক বিচ্ছিন্ন পদক্ষেপ নিয়ে গঠিত।

    একটি রুটে প্রতিটি ওয়েপয়েন্ট থেকে পরবর্তী পথের জন্য একটি পৃথক পা থাকে। উদাহরণস্বরূপ, যদি রুটে একটি একক উৎপত্তি ওয়েপয়েন্ট এবং একটি একক গন্তব্য ওয়েপয়েন্ট থাকে, তাহলে রুটে একটি একক পা থাকে। প্রতিটি অতিরিক্ত ওয়েপয়েন্টের জন্য আপনি মূল এবং গন্তব্যের পরে রুটে যোগ করেন, একটি মধ্যবর্তী ওয়েপয়েন্ট বলা হয়, API একটি পৃথক লেগ যোগ করে।

    এপিআই একটি পাস-থ্রু ইন্টারমিডিয়েট ওয়েপয়েন্টের জন্য একটি লেগ যোগ করে না। উদাহরণ স্বরূপ, একটি রুট যেটিতে একটি অরিজিন ওয়েপয়েন্ট, একটি পাস-থ্রু ইন্টারমিডিয়েট ওয়েপয়েন্ট, এবং একটি গন্তব্য ওয়েপয়েন্ট ওয়েপয়েন্টের মধ্য দিয়ে যাওয়ার সময় উত্স থেকে গন্তব্যে মাত্র একটি পা থাকে। পাস-থ্রু ওয়েপয়েন্ট সম্পর্কে আরও তথ্যের জন্য, একটি পাস-থ্রু ওয়েপয়েন্ট সংজ্ঞায়িত করুন দেখুন।

  • ধাপ : একটি রুটের লেগ বরাবর একটি একক নির্দেশ। একটি ধাপ একটি রুটের সবচেয়ে পারমাণবিক একক। উদাহরণস্বরূপ, একটি ধাপ নির্দেশ করতে পারে "মেইন স্ট্রিটে বাম দিকে ঘুরুন"।

প্রতিক্রিয়া কি আছে

API প্রতিক্রিয়া প্রতিনিধিত্বকারী JSON অবজেক্টে নিম্নলিখিত শীর্ষ-স্তরের বৈশিষ্ট্য রয়েছে:

  • routes , রুট টাইপের উপাদানগুলির একটি অ্যারে। routes অ্যারেতে API দ্বারা প্রত্যাবর্তিত প্রতিটি রুটের জন্য একটি উপাদান রয়েছে। অ্যারেতে সর্বাধিক পাঁচটি উপাদান থাকতে পারে: ডিফল্ট রুট, ইকো-ফ্রেন্ডলি রুট এবং তিনটি বিকল্প রুট পর্যন্ত।

  • geocodingResults , জিওকোডিং রেজাল্ট টাইপের উপাদানগুলির একটি অ্যারে। অনুরোধের প্রতিটি অবস্থানের জন্য (উৎস, গন্তব্য, বা মধ্যবর্তী পথপয়েন্ট) যা আপনি ঠিকানা স্ট্রিং বা প্লাস কোড হিসাবে নির্দিষ্ট করেছেন, API একটি স্থান আইডি সন্ধান করে। এই অ্যারের প্রতিটি উপাদান একটি অবস্থানের সাথে সংশ্লিষ্ট স্থান আইডি ধারণ করে। অনুরোধে স্থান আইডি বা অক্ষাংশ/দ্রাঘিমাংশ স্থানাঙ্ক হিসাবে নির্দিষ্ট করা স্থান অন্তর্ভুক্ত করা হয় না। আপনি যদি স্থান আইডি বা অক্ষাংশ এবং দ্রাঘিমাংশ স্থানাঙ্ক ব্যবহার করে সমস্ত অবস্থান নির্দিষ্ট করে থাকেন তবে এই অ্যারে দেওয়া হয় না৷

  • fallbackInfo , টাইপের ফলব্যাক ইনফো । যদি API সমস্ত ইনপুট বৈশিষ্ট্য থেকে একটি রুট গণনা করতে সক্ষম না হয়, তবে এটি গণনার একটি ভিন্ন উপায় ব্যবহার করতে পারে। যখন ফলব্যাক মোড ব্যবহার করা হয়, এই ক্ষেত্রটিতে ফলব্যাক প্রতিক্রিয়া সম্পর্কে বিস্তারিত তথ্য থাকে। অন্যথায় এই ক্ষেত্রটি সেট করা নেই৷

প্রতিক্রিয়া ফর্ম আছে:

{
  // The routes array.
  "routes": [
    {
      object (Route)
    }
  ],
  // The place ID lookup results.
  "geocodingResults": [
    {
      object (GeocodedWaypoint)
    }
  ],
  // The fallback property.
  "fallbackInfo": {
    object (FallbackInfo)
  }
}

রুট অ্যারের পাঠোদ্ধার করুন

প্রতিক্রিয়াটিতে routes অ্যারে রয়েছে, যেখানে প্রতিটি অ্যারের উপাদান Route টাইপের হয়। প্রতিটি অ্যারে উপাদান মূল থেকে গন্তব্য পর্যন্ত একটি সম্পূর্ণ রুট উপস্থাপন করে। API সর্বদা অন্তত একটি রুট ফেরত দেয়, যাকে বলা হয় ডিফল্ট রুট।

আপনি অতিরিক্ত রুট অনুরোধ করতে পারেন. আপনি যদি একটি ইকো-ফ্রেন্ডলি রুট অনুরোধ করেন, তাহলে অ্যারেতে দুটি উপাদান থাকতে পারে: ডিফল্ট রুট এবং ইকো-ফ্রেন্ডলি রুট। অথবা, প্রতিক্রিয়াতে তিনটি বিকল্প রুট যোগ করার অনুরোধে computeAlternativeRoutes কে true হিসাবে সেট করুন।

অ্যারের প্রতিটি রুট রুট routeLabels অ্যারে সম্পত্তির সাথে চিহ্নিত করা হয়:

মান বর্ণনা
DEFAULT_ROUTE ডিফল্ট রুট সনাক্ত করে।
FUEL_EFFICIENT পরিবেশ বান্ধব রুট চিহ্নিত করে।
DEFAULT_ROUTE_ALTERNATE আমি একটি বিকল্প পথ নির্দেশ করি।

legs অ্যারে রুটের প্রতিটি পায়ের সংজ্ঞা ধারণ করে। অবশিষ্ট বৈশিষ্ট্য, যেমন distanceMeters , duration , এবং polyline, সামগ্রিকভাবে রুট সম্পর্কে তথ্য ধারণ করে:

{
  "routeLabels": [
    enum (RouteLabel)
  ],
  "legs": [
    {
      object (RouteLeg)
    }
  ],
  "distanceMeters": integer,
  "duration": string,
  "routeLabels": [string],
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "description": string,
  "warnings": [
    string
  ],
  "viewport": {
    object (Viewport)
  },
  "travelAdvisory": {
    object (RouteTravelAdvisory)
  }
  "routeToken": string
}

বর্তমান ড্রাইভিং অবস্থা এবং অন্যান্য কারণের কারণে, ডিফল্ট রুট এবং পরিবেশ বান্ধব রুট একই হতে পারে। এই ক্ষেত্রে, routeLabels অ্যারে উভয় লেবেল ধারণ করে: DEFAULT_ROUTE এবং FUEL_EFFICIENT

{
  "routes": [
    {
      "routeLabels": [
        "DEFAULT_ROUTE",
        "FUEL_EFFICIENT"
      ],
     …
    }
  ]
}

পা অ্যারে বুঝুন

প্রতিক্রিয়ার প্রতিটি route একটি legs অ্যারে রয়েছে, যেখানে প্রতিটি legs অ্যারে উপাদান RouteLeg টাইপের। অ্যারের প্রতিটি পা রুট বরাবর এক ওয়েপয়েন্ট থেকে পরবর্তী ওয়েপয়েন্টের পথকে সংজ্ঞায়িত করে। একটি রুটে সর্বদা কমপক্ষে একটি পা থাকে।

legs সম্পত্তি steps অ্যারেতে পা বরাবর প্রতিটি ধাপের সংজ্ঞা রয়েছে। অবশিষ্ট বৈশিষ্ট্য, যেমন distanceMeters , duration এবং polyline পা সম্পর্কে তথ্য রয়েছে।

{
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "steps": [
    {
      object (RouteLegStep)
    }
  ],
  "travelAdvisory": {
    object (RouteLegTravelAdvisory)
  }
}

স্টেপ অ্যারে বুঝুন

প্রতিক্রিয়ার প্রতিটি পায়ে একটি steps অ্যারে থাকে, যেখানে প্রতিটি steps অ্যারে উপাদান RouteLegStep টাইপের হয়। একটি ধাপ লেগ বরাবর একটি একক নির্দেশের সাথে মিলে যায়। একটি পায়ে সর্বদা কমপক্ষে একটি পদক্ষেপ থাকে।

steps অ্যারের প্রতিটি উপাদানের মধ্যে navigationInstruction বৈশিষ্ট্য রয়েছে, যা NavigationInstruction প্রকারের, যাতে ধাপের নির্দেশ রয়েছে। উদাহরণ স্বরূপ:

"navigationInstruction": {
  "maneuver": "TURN_LEFT",
  "instructions": "Turn left toward Frontage Rd"
}

instructions ধাপ সম্পর্কে অতিরিক্ত তথ্য থাকতে পারে। উদাহরণ স্বরূপ:

"navigationInstruction": {
  "maneuver": "TURN_SLIGHT_LEFT",
  "instructions": "Slight left (signs for I-90 W/Worcester)nParts of this road may be closed at certain times or days"
}

ধাপে অবশিষ্ট বৈশিষ্ট্যগুলি ধাপ সম্পর্কে তথ্য বর্ণনা করে, যেমন distanceMeters , duration এবং polyline :

{
  "distanceMeters": integer,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "navigationInstruction": {
    object (NavigationInstruction)
  }
}

ধাপ নির্দেশাবলীর ভাষা উল্লেখ করুন

API স্থানীয় ভাষায় রুট তথ্য প্রদান করে, পছন্দের ভাষা পর্যবেক্ষণ করার সময়, প্রয়োজনে ব্যবহারকারীর দ্বারা পাঠযোগ্য একটি স্ক্রিপ্টে প্রতিলিপি করা হয়। ঠিকানার উপাদানগুলি একই ভাষায় ফেরত দেওয়া হয়।

  • সমর্থিত ভাষার তালিকা থেকে স্পষ্টভাবে রুট ভাষা সেট করতে একটি অনুরোধের languageCode প্যারামিটার ব্যবহার করুন। Google প্রায়ই সমর্থিত ভাষা আপডেট করে, তাই এই তালিকাটি সম্পূর্ণ নাও হতে পারে।

  • যদি নির্দিষ্ট ভাষায় একটি নাম উপলব্ধ না হয়, API সবচেয়ে কাছের মিল ব্যবহার করে।

  • নির্দিষ্ট ভাষা ফলাফলের সেটকে প্রভাবিত করতে পারে যা API ফেরত দিতে বেছে নেয় এবং যে ক্রমে সেগুলি ফেরত দেওয়া হয়। জিওকোডার ভাষার উপর নির্ভর করে সংক্ষেপণগুলিকে ভিন্নভাবে ব্যাখ্যা করে, যেমন রাস্তার প্রকারের সংক্ষিপ্ত রূপ, বা সমার্থক শব্দ যা এক ভাষায় বৈধ হতে পারে কিন্তু অন্য ভাষায় নয়। উদাহরণস্বরূপ, utca এবং tér হল হাঙ্গেরিয়ান ভাষায় রাস্তার প্রতিশব্দ।

জিওকোডিং রেজাল্ট অ্যারে বুঝুন

অনুরোধের প্রতিটি অবস্থানের জন্য (উৎস, গন্তব্য, বা মধ্যবর্তী পথপয়েন্ট) যা ঠিকানা স্ট্রিং বা প্লাস কোড হিসাবে নির্দিষ্ট করা হয়েছিল, API সবচেয়ে প্রাসঙ্গিক অবস্থান খুঁজে বের করার চেষ্টা করে যার একটি সংশ্লিষ্ট স্থান আইডি রয়েছে। geocodingResults অ্যারের প্রতিটি উপাদানে placeID ক্ষেত্র রয়েছে যেখানে স্থান আইডি হিসাবে অবস্থান রয়েছে এবং একটি type ক্ষেত্র রয়েছে যা অবস্থানের ধরন নির্দিষ্ট করে, যেমন street_address , premise , বা airport

geocodingResults অ্যারেতে তিনটি ক্ষেত্র রয়েছে:

  • origin : যদি এটি একটি ঠিকানা স্ট্রিং হিসাবে বা একটি প্লাস কোড হিসাবে নির্দিষ্ট করা হয়, তাহলে মূল স্থানের আইডি। অন্যথায়, এই ক্ষেত্রটি প্রতিক্রিয়া থেকে বাদ দেওয়া হবে।

  • destination : যদি এটি একটি ঠিকানা স্ট্রিং হিসাবে বা একটি প্লাস কোড হিসাবে নির্দিষ্ট করা হয়, গন্তব্যের স্থান আইডি। অন্যথায়, এই ক্ষেত্রটি প্রতিক্রিয়া থেকে বাদ দেওয়া হবে।

  • intermediates : অ্যাড্রেস স্ট্রিং বা প্লাস কোড হিসাবে নির্দিষ্ট করা যেকোনো মধ্যবর্তী ওয়েপয়েন্টের প্লেস আইডি ধারণকারী একটি অ্যারে। আপনি যদি একটি স্থান আইডি বা অক্ষাংশ এবং দ্রাঘিমাংশ স্থানাঙ্ক ব্যবহার করে একটি মধ্যবর্তী পথপয়েন্ট নির্দিষ্ট করেন, তাহলে এটি প্রতিক্রিয়া থেকে বাদ দেওয়া হয়। অনুরোধের কোন মধ্যবর্তী পথপয়েন্টটি প্রতিক্রিয়ার স্থান আইডির সাথে মিলে যায় তা নির্ধারণ করতে প্রতিক্রিয়াতে intermediateWaypointRequestIndex সম্পত্তি ব্যবহার করুন৷

"geocodingResults": {
    "origin": {
        "geocoderStatus": {},
        "type": [
             enum (Type)
        ],
        "placeId": string
    },
    "destination": {
        "geocoderStatus": {},
        "type": [
            enum (Type)
        ],
        "placeId": string
    },
    "intermediates": [
        {
            "geocoderStatus": {},
            "intermediateWaypointRequestIndex": integer,
            "type": [
                enum (Type)
            ],
            "placeId": string
        },
        {
           "geocoderStatus": {},
           "intermediateWaypointRequestIndex": integer,
            "type": [
                enum (Type)
            ],
            "placeId": string
        }
    ]
}

স্থানীয় প্রতিক্রিয়া মান বুঝুন

স্থানীয়কৃত প্রতিক্রিয়া মান হল একটি অতিরিক্ত প্রতিক্রিয়া ক্ষেত্র যা প্রত্যাবর্তিত প্যারামিটার মানগুলির জন্য স্থানীয় পাঠ্য প্রদান করে। ট্রিপের সময়কাল, দূরত্ব এবং ইউনিট সিস্টেমের (মেট্রিক বা ইম্পেরিয়াল) জন্য স্থানীয় পাঠ্য সরবরাহ করা হয়। আপনি একটি ফিল্ড মাস্ক ব্যবহার করে স্থানীয় মানগুলির জন্য অনুরোধ করেন এবং হয় ভাষা এবং ইউনিট সিস্টেম নির্দিষ্ট করতে পারেন বা API দ্বারা অনুমান করা মানগুলি ব্যবহার করতে পারেন৷ বিস্তারিত জানার জন্য, স্থানীয়কৃত মান দেখুন।

উদাহরণস্বরূপ, যদি আপনি জার্মান (ডি) এবং ইম্পেরিয়াল ইউনিটগুলির জন্য একটি ভাষা কোড নির্দিষ্ট করেন, তাহলে আপনি 49889.7 এর distanceMeters জন্য একটি মান পাবেন, তবে জার্মান এবং ইম্পেরিয়াল ইউনিটগুলিতে সেই দূরত্ব পরিমাপ প্রদানকারী স্থানীয় পাঠ্যও পাবেন, তাই "31 মেইল।"

স্থানীয় মানগুলির জন্য আপনি কী দেখতে পাবেন তার একটি উদাহরণ এখানে রয়েছে:

{ "localized_values":
  {
    "distance": { "text": "31,0 Meile/n" },
    "duration": { "text": 38 Minuten}.
    "static_duration": { "text": 36 Minuten}.
  }
}

আপনি ভাষা বা ইউনিট সিস্টেম নির্দিষ্ট না করলে, API নিম্নরূপ ভাষা এবং ইউনিটগুলিকে অনুমান করে:

  • ComputeRoutes পদ্ধতিটি মূল পথপয়েন্ট থেকে অবস্থান এবং দূরত্বের একক নির্ণয় করে। সুতরাং মার্কিন যুক্তরাষ্ট্রে একটি রাউটিং অনুরোধের জন্য, API en-US ভাষা এবং IMPERIAL ইউনিটগুলিকে অনুমান করে৷
  • ComputeRouteMatrix পদ্ধতি ডিফল্ট 'en-US' ভাষা এবং METRIC ইউনিটে।