Method: computeInsights

محاسبه RPC Insights

این روش به شما امکان می‌دهد با استفاده از فیلترهای مختلفی مانند: منطقه، نوع مکان، وضعیت عملیاتی، سطح قیمت و رتبه‌بندی، بینش‌هایی در مورد مناطق بازیابی کنید. در حال حاضر اطلاعات آماری «شمارش» و «مکان‌ها» پشتیبانی می‌شوند. با بینش‌های «شمارش» می‌توانید به سؤالاتی مانند «چند رستوران در کالیفرنیا واقع شده‌اند که عملیاتی هستند، ارزان هستند و میانگین رتبه‌بندی حداقل 4 ستاره دارند» (برای جزئیات بیشتر به فهرست insight مراجعه کنید). با اطلاعات آماری «مکان‌ها»، می‌توانید تعیین کنید کدام مکان‌ها با فیلتر درخواستی مطابقت دارند. سپس مشتریان می توانند از نام منابع مکان برای دریافت جزئیات بیشتر در مورد هر مکان جداگانه با استفاده از Places API استفاده کنند.

درخواست HTTP

POST https://areainsights.googleapis.com/v1:computeInsights

URL از دستور GRPC Transcoding استفاده می کند.

درخواست بدن

بدنه درخواست حاوی داده هایی با ساختار زیر است:

نمایندگی JSON
{
  "insights": [
    enum (Insight)
  ],
  "filter": {
    object (Filter)
  }
}
فیلدها
insights[]

enum ( Insight )

مورد نیاز. بینش برای محاسبه در حال حاضر فقط INSIGHT_COUNT و INSIGHT_PLACES پشتیبانی می‌شوند.

filter

object ( Filter )

مورد نیاز. فیلتر بینش

بدن پاسخگو

پاسخ برای v1.computeInsights RPC.

در صورت موفقیت آمیز بودن، بدنه پاسخ حاوی داده هایی با ساختار زیر است:

نمایندگی JSON
{
  "placeInsights": [
    {
      object (PlaceInsight)
    }
  ],
  "count": string
}
فیلدها
place Insights[]

object ( PlaceInsight )

نتیجه برای Insights.INSIGHT_PLACES.

count

string ( int64 format)

نتیجه برای Insights.INSIGHT_COUNT.

محدوده مجوز

به محدوده OAuth زیر نیاز دارد:

  • https://www.googleapis.com/auth/cloud-platform

بینش

بینش های پشتیبانی شده

Enums
INSIGHT_UNSPECIFIED مشخص نشده است.
INSIGHT_COUNT

بینش را بشمار

وقتی این بینش مشخص شد، v1.computeInsights تعداد مکان‌هایی را که با معیارهای فیلتر مشخص شده مطابقت دارند، برمی‌گرداند.

For example if the request is:
ComputeInsightsRequest {
  insights: INSIGHT_COUNT
  filter {
    locationFilter {region: <PlaceId of state of CA>}
    typeFilter {includedTypes: "restaurant"}
    operatingStatus: OPERATING_STATUS_OPERATIONAL
    priceLevels: PRICE_LEVEL_FREE
    priceLevels: PRICE_LEVEL_INEXPENSIVE
    minRating: 4.0
  }
}

The method will return the count of restaurants in California that are
operational, with price level free or inexpensive and have an average
rating of at least 4 starts.

Example response:
ComputeInsightsResponse {
  count: <number of places>
}
INSIGHT_PLACES

مکان ها را برگردانید

وقتی این بینش مشخص شد v1.computeInsights مکان هایی را برمی گرداند که با معیارهای فیلتر مشخص شده مطابقت دارند.

For example if the request is:
ComputeInsightsRequest {
  insights: INSIGHT_PLACES
  filter {
    locationFilter {region: <PlaceId of state of CA>}
    typeFilter {includedTypes: "restaurant"}
    operatingStatus: OPERATING_STATUS_OPERATIONAL
    priceLevels: PRICE_LEVEL_FREE
    priceLevels: PRICE_LEVEL_INEXPENSIVE
    minRating: 4.0
  }
}

The method will return list of places of restaurants in
California that are operational, with price level free or inexpensive and
have an average rating of at least 4 stars.

Example response:
ComputeInsightsResponse {
  placeInsights { place: "places/ABC" }
  placeInsights { place: "places/PQR" }
  placeInsights { place: "places/XYZ" }
}

فیلتر کنید

فیلترهایی برای v1.computeInsights RPC.

نمایندگی JSON
{
  "locationFilter": {
    object (LocationFilter)
  },
  "typeFilter": {
    object (TypeFilter)
  },
  "operatingStatus": [
    enum (OperatingStatus)
  ],
  "priceLevels": [
    enum (PriceLevel)
  ],
  "ratingFilter": {
    object (RatingFilter)
  }
}
فیلدها
location Filter

object ( LocationFilter )

مورد نیاز. نتایج را به مکان هایی محدود می کند که در منطقه مشخص شده توسط فیلترهای مکان قرار دارند.

type Filter

object ( TypeFilter )

مورد نیاز. فیلترهای نوع مکان

operating Status[]

enum ( OperatingStatus )

اختیاری. نتایج را به مکان هایی که وضعیت عملیاتی آنها در این لیست گنجانده شده است محدود می کند. اگر وضعیت عملیاتی تنظیم نشده باشد، از OPERATING_STATUS_OPERATIONAL به عنوان پیش فرض استفاده می شود.

price Levels[]

enum ( PriceLevel )

اختیاری. نتایج را به مکان‌هایی محدود می‌کند که سطح قیمت آن‌ها در این فهرست گنجانده شده است. اگر price_level تنظیم نشده باشد، تمام سطوح قیمت در نتایج گنجانده شده است.

rating Filter

object ( RatingFilter )

اختیاری. نتایج را به مکان‌هایی محدود می‌کند که میانگین رتبه‌بندی کاربران آن‌ها در محدوده مشخص‌شده توسط ratingFilter است. اگر ratingFilter تنظیم نشده باشد، همه رتبه‌بندی‌ها در نتیجه گنجانده می‌شود.

محل فیلتر

فیلترهای مکان

منطقه مورد علاقه برای بینش را مشخص می کند.

نمایندگی JSON
{

  // Union field area can be only one of the following:
  "circle": {
    object (Circle)
  },
  "region": {
    object (Region)
  },
  "customArea": {
    object (CustomArea)
  }
  // End of list of possible types for union field area.
}
فیلدها
area میدان اتحادیه یکی از موارد زیر باید مشخص شود. area می تواند تنها یکی از موارد زیر باشد:
circle

object ( Circle )

مساحت به صورت دایره

region

object ( Region )

منطقه به عنوان منطقه

custom Area

object ( CustomArea )

ناحیه سفارشی مشخص شده توسط یک چند ضلعی.

دایره

دایره با یک نقطه مرکزی و شعاع بر حسب متر تعریف می شود.

نمایندگی JSON
{
  "radius": integer,

  // Union field center can be only one of the following:
  "latLng": {
    object (LatLng)
  },
  "place": string
  // End of list of possible types for union field center.
}
فیلدها
radius

integer

اختیاری. شعاع دایره بر حسب متر

center صحرایی اتحادیه مرکز دایره. center فقط می تواند یکی از موارد زیر باشد:
lat Lng

object ( LatLng )

طول و عرض جغرافیایی مرکز دایره.

place

string

نام منبع مکان مرکز دایره. فقط مکان های نقطه ای پشتیبانی می شوند.

LatLng

شیئی که نشان دهنده یک جفت طول و عرض جغرافیایی است. این به صورت یک جفت دوتایی برای نشان دادن درجه عرض جغرافیایی و درجه طول جغرافیایی بیان می شود. مگر اینکه طور دیگری مشخص شده باشد، این شی باید با استاندارد WGS84 مطابقت داشته باشد. مقادیر باید در محدوده نرمال شده باشند.

نمایندگی JSON
{
  "latitude": number,
  "longitude": number
}
فیلدها
latitude

number

عرض جغرافیایی بر حسب درجه باید در محدوده [-90.0، +90.0] باشد.

longitude

number

طول جغرافیایی بر حسب درجه باید در محدوده [-180.0، +180.0] باشد.

منطقه

منطقه یک مرز جغرافیایی است مانند: شهرها، کد پستی، شهرستان ها، ایالت ها و غیره.

نمایندگی JSON
{

  // Union field region can be only one of the following:
  "place": string
  // End of list of possible types for union field region.
}
فیلدها
region میدان اتحادیه یک منطقه جغرافیایی را تعریف می کند. فقط یک نوع منطقه (مثلا مکان) را می توان در یک زمان مشخص کرد. region می تواند تنها یکی از موارد زیر باشد:
place

string

شناسه منحصر به فرد یک منطقه جغرافیایی خاص.

Custom Area

منطقه سفارشی

نمایندگی JSON
{
  "polygon": {
    object (Polygon)
  }
}
فیلدها
polygon

object ( Polygon )

مورد نیاز. ناحیه سفارشی به صورت چند ضلعی نمایش داده می شود

چند ضلعی

یک چند ضلعی با مجموعه ای از مختصات متصل در یک دنباله مرتب شده در خلاف جهت عقربه های ساعت نشان داده می شود. مختصات یک حلقه بسته را تشکیل می دهند و یک منطقه پر شده را تعریف می کنند. مختصات اول و آخر معادل هستند و باید مقادیر یکسانی داشته باشند. این قالب یک نسخه ساده شده از چند ضلعی های GeoJSON است (ما فقط از یک حلقه بیرونی در خلاف جهت عقربه های ساعت پشتیبانی می کنیم).

نمایندگی JSON
{
  "coordinates": [
    {
      object (LatLng)
    }
  ]
}
فیلدها
coordinates[]

object ( LatLng )

اختیاری. مختصاتی که چند ضلعی را تعریف می کنند.

TypeFilter

فیلترهای نوع مکان

فقط انواع مکان از جدول a پشتیبانی می شود.

یک مکان فقط می‌تواند یک نوع اصلی مرتبط با آن داشته باشد. به عنوان مثال، نوع اولیه ممکن است "رستوران_مکزیکی" یا "استیک_خانه" باشد. از includePrimaryTypes و excludedPrimaryTypes برای فیلتر کردن نتایج در نوع اصلی مکان استفاده کنید.

یک مکان همچنین می تواند چندین مقدار نوع مرتبط با آن داشته باشد. به عنوان مثال یک رستوران ممکن است انواع زیر را داشته باشد: "رستوران_دریایی"، "رستوران"، "غذا"، "نقطه_علاقه"، "تأسیس". از includeTypes و excludedTypes برای فیلتر کردن نتایج در لیست انواع مرتبط با یک مکان استفاده کنید.

اگر جستجویی با محدودیت‌های چندگانه مشخص شده باشد، فقط مکان‌هایی که همه محدودیت‌ها را برآورده می‌کنند، برگردانده می‌شوند. برای مثال، اگر {"includedTypes": ["restaurant"]، "excludedPrimaryTypes": ["steak_house"]} را مشخص کنید، مکان‌های برگشتی خدمات مرتبط با "رستوران" را ارائه می‌کنند اما عمدتاً به عنوان "steak_house" عمل نمی‌کنند.

اگر انواع متضاد وجود داشته باشد، یعنی یک نوع در هر دو نوع includeTypes و excludedTypes یا includePrimaryTypes و excludedPrimaryTypes ظاهر می شود، یک خطای INVALID_ARGUMENT برگردانده می شود.

یکی از includeTypes یا includePrimaryTypes باید تنظیم شود.

نمایندگی JSON
{
  "includedTypes": [
    string
  ],
  "excludedTypes": [
    string
  ],
  "includedPrimaryTypes": [
    string
  ],
  "excludedPrimaryTypes": [
    string
  ]
}
فیلدها
included Types[]

string

اختیاری. شامل انواع مکان.

excluded Types[]

string

اختیاری. انواع مکان استثنا شده

included Primary Types[]

string

اختیاری. شامل انواع مکان اصلی.

excluded Primary Types[]

string

اختیاری. انواع مکان اصلی مستثنی شده است.

وضعیت عملیاتی

وضعیت عملیاتی محل.

Enums
OPERATING_STATUS_UNSPECIFIED مشخص نشده است.
OPERATING_STATUS_OPERATIONAL این مکان در ساعات مشخصی فعال بوده و باز است.
OPERATING_STATUS_PERMANENTLY_CLOSED مکان دیگر در کار نیست.
OPERATING_STATUS_TEMPORARILY_CLOSED مکان به طور موقت بسته است و انتظار می رود در آینده بازگشایی شود.

سطح قیمت

سطح قیمت مکان.

Enums
PRICE_LEVEL_UNSPECIFIED سطح قیمت مکان نامشخص یا ناشناخته است.
PRICE_LEVEL_FREE Place خدمات رایگان ارائه می دهد.
PRICE_LEVEL_INEXPENSIVE Place خدمات ارزان قیمتی را ارائه می دهد.
PRICE_LEVEL_MODERATE Place خدمات با قیمت متوسط ​​ارائه می دهد.
PRICE_LEVEL_EXPENSIVE مکان خدمات گران قیمتی ارائه می دهد.
PRICE_LEVEL_VERY_EXPENSIVE مکان خدمات بسیار گرانی ارائه می دهد.

فیلتر رتبه بندی

فیلترهای میانگین امتیاز کاربران

نمایندگی JSON
{
  "minRating": number,
  "maxRating": number
}
فیلدها
min Rating

number

اختیاری. نتایج را به مکان‌هایی محدود می‌کند که میانگین رتبه‌بندی کاربران آن‌ها بیشتر یا مساوی minRating است. مقادیر باید بین 1.0 و 5.0 باشد.

max Rating

number

اختیاری. نتایج را به مکان‌هایی محدود می‌کند که میانگین رتبه‌بندی کاربران آنها به شدت کمتر یا مساوی maxRating است. مقادیر باید بین 1.0 و 5.0 باشد.

PlaceInsight

اطلاعات مربوط به یک مکان را نگه می دارد

نمایندگی JSON
{
  "place": string
}
فیلدها
place

string

شناسه منحصر به فرد مکان. این نام منبع را می توان برای بازیابی جزئیات مکان با استفاده از Places API استفاده کرد.