این سند نحوه فهرست بندی وسایل نقلیه تحویلی را شرح می دهد.
محیط ها و محدودیت ها
می توانید وسایل نقلیه تحویل را از یک محیط سرور یا مرورگر فهرست کنید. Driver SDK از لیست وسایل نقلیه تحویل پشتیبانی نمی کند.
فهرست وسایل نقلیه تحویل درخواست دسترسی گسترده به وسایل نقلیه تحویل است و فقط برای کاربران قابل اعتماد در نظر گرفته شده است. هنگام درخواست خودروهای تحویل لیست، از توکنهای مدیریت تحویل ناوگان ناوگان Reader یا Fleet Engine Delivery استفاده کنید.
خودروهای تحویل فهرست شده به دلیل تأثیر آنها بر اندازه پاسخ، فیلدهای زیر را تغییر داده اند:
-
CurrentRouteSegment
-
RemainingVehicleJourneySegments
استفاده
شما می توانید وسایل نقلیه را بر اساس فیلترهای مشخصه و محدوده درگاه دید فهرست کنید. اگر فیلتر یا درگاه دید را مشخص نکنید، پاسخ شامل تمام وسایل نقلیه تحویلی میشود.
لیست با فیلترهای ویژگی
میتوانید وسایل نقلیه تحویلی را با استفاده از ویژگی attributes
آنها با فیلتر فهرست کنید. به عنوان مثال، برای پرس و جو از یک ویژگی با کلید my_key
و مقدار my_value
، از attributes.my_key = my_value
استفاده کنید. برای پرس و جو برای چندین صفت، با استفاده از عملگرهای AND
و OR
منطقی مانند attributes.key1 = value1 AND attributes.key2 = value2
به پرس و جوها بپیوندید. برای توضیح کامل نحو پرس و جو فیلتر، به AIP-160 مراجعه کنید. اگر فیلترها را با کران های درگاه دید ترکیب کنید، فیلتر به عنوان یک اپراتور AND
به کران نمای پورت عمل می کند. برای جزئیات بیشتر به جستارهای فیلتر ویژگی های خودرو مراجعه کنید.
فهرست با کران های درگاه دید
با استفاده از پارامتر درخواست viewport
می توانید وسایل نقلیه تحویل لیست شده را بر اساس مکان فیلتر کنید. پارامتر درخواست viewport
، نماها را با استفاده از دو مختصات مرزی تعریف می کند: یک جفت مختصات طول و عرض جغرافیایی high
(شمال شرقی) و low
(جنوب غربی). درخواست ها در صورتی رد می شوند که دارای عرض جغرافیایی بالا باشند که از نظر جغرافیایی کمتر از عرض جغرافیایی پایین باشد.
لیست پاسخ ها
لیست خودروهای تحویلی به طور پیش فرض با استفاده از اندازه صفحه معقول صفحه بندی می شوند. اگر اندازه صفحه را مشخص کنید، درخواست فقط تعداد وسایل نقلیه مشخص شده توسط محدودیت یا کمتر را برمیگرداند. اگر اندازه صفحه درخواستی از حداکثر مقدار داخلی بیشتر شود، از حداکثر داخلی استفاده می شود. اندازه پیش فرض و حداکثر صفحه هر دو 100 وسیله نقلیه است.
لیست وسایل نقلیه تحویلی می تواند شامل یک نشانه برای خواندن صفحه بعدی نتایج باشد. نشانه صفحه تنها زمانی در پاسخ وجود دارد که صفحات بیشتری از وسایل نقلیه تحویل برای بازیابی در دسترس باشد. برای بازیابی صفحه بعدی وظایف، از نشانه صفحه با درخواستی استفاده کنید که در غیر این صورت با درخواست قبلی یکسان است.
نمونه های وسایل نقلیه را فهرست کنید
میتوانید از کتابخانه gRPC یا REST برای فهرست کردن وسایل نقلیه تحویل در یک منطقه خاص با یک ویژگی خاص استفاده کنید. یک پاسخ موفق هنوز هم می تواند خالی باشد. وقتی این اتفاق می افتد، به این معنی است که هیچ وسیله نقلیه ای با ویژگی مشخص شده در نمای مشخص شده وجود ندارد.
جاوا
static final String PROJECT_ID = "my-delivery-co-gcp-project";
DeliveryServiceBlockingStub deliveryService =
DeliveryServiceGrpc.newBlockingStub(channel);
// Tasks request
String parent = "providers/" + PROJECT_ID;
ListDeliveryVehiclesRequest listDeliveryVehiclesRequest =
ListDeliveryVehiclesRequest.newBuilder() // No need for the header
.setParent(parent)
.setViewport(
Viewport.newBuilder()
.setHigh(LatLng.newBuilder()
.setLatitude(37.45)
.setLongitude(-122.06)
.build())
.setLow(LatLng.newBuilder()
.setLatitude(37.41)
.setLongitude(-122.11)
.build())
.setFilter("attributes.my_key = my_value")
.build();
try {
ListDeliveryVehiclesResponse listDeliveryVehiclesResponse =
deliveryService.listDeliveryVehicles(listDeliveryVehiclesRequest);
} catch (StatusRuntimeException e) {
Status s = e.getStatus();
switch (s.getCode()) {
case NOT_FOUND:
break;
case PERMISSION_DENIED:
break;
}
return;
}
استراحت
# HTTP request
html GET https://fleetengine.googleapis.com/v1/providers/<project_id>/deliveryVehicles
# Request with a filter
# Request sets JWT, PROJECT_ID, and VEHICLE_ID in the local environment
curl -H "Authorization: Bearer ${JWT}" \
"https://fleetengine.googleapis.com/v1/providers/${PROJECT_ID}/deliveryVehicles?filter=attributes.my_key%20%3D%20my_value%20&viewport.high.latitude=37.45&viewport.high.longitude=-122.06&viewport.low.latitude=37.41&viewport.low.longitude=-122.11"
اگر جستجو موفقیت آمیز باشد، بدنه پاسخ حاوی داده هایی با ساختار زیر است:
// JSON representation
{
"deliveryVehicles": [
{
object (DeliveryVehicle)
}
],
"nextPageToken": string,
"totalSize": integer
}