রাউটিং সারাংশ গণনা করুন

প্রতিক্রিয়ায় প্রতিটি স্থানে ভ্রমণের সময়কাল এবং দূরত্ব গণনা করতে পাঠ্য অনুসন্ধান (নতুন) বা কাছাকাছি অনুসন্ধান (নতুন) ব্যবহার করতে:

  1. রাউটিং উত্সের অক্ষাংশ এবং দ্রাঘিমাংশ স্থানাঙ্ক নির্দিষ্ট করার অনুরোধে routingParameters.origin প্যারামিটারটি পাস করুন৷ এই প্যারামিটারটি প্রতিক্রিয়াতে প্রতিটি স্থানের সময়কাল এবং দূরত্ব গণনা করার জন্য প্রয়োজন।

  2. ফিল্ড মাস্কে routingSummaries অন্তর্ভুক্ত করুন যাতে প্রতিক্রিয়া routingSummaries অ্যারে অন্তর্ভুক্ত করে। এই অ্যারেটি প্রতিক্রিয়ার প্রতিটি স্থানে রাউটিং উত্স থেকে সময়কাল এবং দূরত্ব ধারণ করে।

পাঠ্য অনুসন্ধান ব্যবহার করুন (নতুন)

নিম্নলিখিত অনুরোধে, আপনি পাঠ্য অনুসন্ধান (নতুন) প্রতিক্রিয়াতে প্রতিটি স্থানের ভ্রমণের সময়কাল এবং দূরত্ব গণনা করুন:

curl -X POST -d '{
  "textQuery" : "Spicy Vegetarian Food in Sydney, Australia",
  "routingParameters": {
    "origin": {
      "latitude": -33.8688,
      "longitude": 151.1957362
    }
  }
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel,routingSummaries' \
'https://places.googleapis.com/v1/places:searchText'

প্রতিক্রিয়াটিতে দুটি JSON অ্যারে রয়েছে: places অ্যারেতে মিলিত স্থানগুলি রয়েছে এবং routingSummaries অ্যারে প্রতিটি স্থানে ভ্রমণের সময়কাল এবং দূরত্ব রয়েছে:

{
  "places": [
    {
      object (Place)
    }
  ]
  "routingSummaries": [
    {
      "legs": [
        object (Leg)
      ]
    }
  ]
}

routingSummaries অ্যারের প্রতিটি উপাদান places অ্যারেতে স্থান হিসাবে সংশ্লিষ্ট অ্যারে অবস্থানে রয়েছে। অর্থাৎ, routingSummaries[0] -এর উপাদানটি places[0]

routingSummaries অ্যারের দৈর্ঘ্য places অ্যারের দৈর্ঘ্যের সমান। যে ক্ষেত্রে একটি স্থানের জন্য routingSummary পাওয়া যায় না, অ্যারে এন্ট্রি খালি থাকে।

যেহেতু এই উদাহরণটি প্রতিটি স্থানের রাউটিং উত্স থেকে সময়কাল এবং দূরত্ব গণনা করে, প্রতিক্রিয়ার legs ফিল্ডে একটি একক Leg অবজেক্ট রয়েছে যাতে রাউটিং উত্স থেকে স্থান পর্যন্ত duration এবং distanceMeters থাকে:

{
  "places": [
    {
      "formattedAddress": "1, Westfield Sydney Central Plaza, 450 George St, Sydney NSW 2000, Australia",
      "displayName": {
        "text": "Gözleme King Sydney",
        "languageCode": "en"
      }
    },
    {
      "formattedAddress": "367 Pitt St, Sydney NSW 2000, Australia",
      "priceLevel": "PRICE_LEVEL_MODERATE",
      "displayName": {
        "text": "Mother Chu's Vegetarian Kitchen",
        "languageCode": "en"
      }
    },
    …
  ]
  "routingSummaries": [
    {
      "legs": [
        {
          "duration": "597s",
          "distanceMeters": 2607
        }
      ]
    },
    {
      "legs": [
        {
          "duration": "562s",
          "distanceMeters": 2345
        }
      ]
    },
   …
  ]
}

এই উদাহরণ থেকে, আপনি দেখতে পাচ্ছেন যে রাউটিং উত্স থেকে ফলাফলে প্রথম স্থান পর্যন্ত সময়কাল এবং দূরত্ব হল 597 সেকেন্ড এবং 2607 মিটার৷

এই উদাহরণে, আপনি কাছাকাছি অনুসন্ধান প্রতিক্রিয়াতে প্রতিটি স্থানের ভ্রমণের সময়কাল এবং দূরত্ব গণনা করেন। এই উদাহরণটি অস্ট্রেলিয়ার সিডনিতে রেস্তোরাঁর জন্য অনুসন্ধান করে এবং অবস্থানের সীমাবদ্ধতা এবং একই অক্ষাংশ এবং দ্রাঘিমাংশের সমন্বয়ে রাউটিং উত্স সেট করে:

curl -X POST -d '{
  "includedTypes": ["restaurant"],
  "maxResultCount": 10,
  "locationRestriction": {
    "circle": {
      "center": {
        "latitude": -33.8688,
        "longitude": 151.1957362},
      "radius": 500.0
    }
  },
  "routingParameters": {
    "origin": {
      "latitude": -33.8688,
      "longitude": 151.1957362
    }
  }
}' \
-H 'Content-Type: application/json' -H "X-Goog-Api-Key:API_KEY" \
-H "X-Goog-FieldMask: places.displayName,routingSummaries" \
https://places.googleapis.com/v1/places:searchNearby

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

ভ্রমণের বিকল্পগুলি উল্লেখ করুন

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

পরবর্তী উদাহরণে, আপনি DRIVE হিসাবে ভ্রমণ মোড নির্দিষ্ট করুন এবং হাইওয়ে এড়াতে:

curl -X POST -d '{
  "textQuery" : "Spicy Vegetarian Food in Sydney, Australia",
  "routingParameters": {
    "origin": {
      "latitude": -33.8688,
      "longitude": 151.1957362
    },
    "travelMode":"DRIVE",
    "routeModifiers": {
      "avoidHighways": true
    }
  }
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel,routingSummaries' \
'https://places.googleapis.com/v1/places:searchText'