একটি OptimizeToursRequest
বার্তা একটি OptimizeTours
অনুরোধ করতে ব্যবহার করা যেতে পারে।
উদাহরণ: একটি OptimizeTours
অনুরোধ করুন
REST বা gRPC ব্যবহার করে OptimizeTours
অনুরোধ করা যেতে পারে। ক্লায়েন্ট লাইব্রেরি বেশ কয়েকটি জনপ্রিয় প্রোগ্রামিং ভাষার জন্যও উপলব্ধ। এই উদাহরণটি অনুরোধ করার জন্য কমান্ড লাইন সরঞ্জাম এবং ক্লায়েন্ট লাইব্রেরির সংমিশ্রণ ব্যবহার করে।
একটি অনুরোধ করার আগে, আপনার পরিবেশের জন্য উপযুক্ত মান দিয়ে নিম্নলিখিত পরামিতিগুলি প্রতিস্থাপন করুন:
- ইউজ OAuth- এ বর্ণিত অ্যাপ্লিকেশান ডিফল্ট শংসাপত্রগুলি কনফিগার করা আছে তা নিশ্চিত করুন।
আপনার ক্লাউড প্রকল্প নম্বর বা আইডিতে PROJECT_NUMBER_OR_ID সেট করুন।
যাওয়া
Go ক্লায়েন্ট লাইব্রেরি ব্যবহার করে একটি অনুরোধ করুন:
import ( "context" "fmt" routeoptimization "cloud.google.com/go/maps/routeoptimization/apiv1" "google.golang.org/genproto/googleapis/type/latlng" rpb "cloud.google.com/go/maps/routeoptimization/apiv1/routeoptimizationpb" ) func optimizeTours(projectID string) (*rpb.OptimizeToursResponse, error) { ctx := context.Background() c, err := routeoptimization.NewClient(ctx) if err != nil { return nil, fmt.Errorf("routeoptimization client: %w", err) } defer c.Close() // See https://pkg.go.dev/cloud.google.com/go/maps/routeoptimization/apiv1/routeoptimizationpb#OptimizeToursRequest. req := &rpb.OptimizeToursRequest{ Parent: "projects/" + projectID, Model: &rpb.ShipmentModel{ Shipments: []*rpb.Shipment{ &rpb.Shipment{ Deliveries: []*rpb.Shipment_VisitRequest{ {ArrivalLocation: &latlng.LatLng{Latitude: 48.880942, Longitude: 2.323866}}, }, }, }, Vehicles: []*rpb.Vehicle{ { StartLocation: &latlng.LatLng{Latitude: 48.863102, Longitude: 2.341204}, EndLocation: &latlng.LatLng{Latitude: 48.86311, Longitude: 2.341205}, }, }, }, } return c.OptimizeTours(ctx, req) }
জাভা
আপনি যদি Maven ব্যবহার করেন, তাহলে আপনার pom.xml
ফাইলে নিম্নলিখিত যোগ করুন।
<dependencyManagement>
<dependencies>
<dependency>
<artifactId>google-maps-routeoptimization-bom</artifactId>
<groupId>com.google.maps</groupId>
<scope>import</scope>
<type>pom</type>
<version>0.1.0</version>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>com.google.maps</groupId>
<artifactId>google-maps-routeoptimization</artifactId>
<scope>compile</scope>
</dependency>
</dependencies>
জাভা ক্লায়েন্ট লাইব্রেরি ব্যবহার করে একটি অনুরোধ করুন:
import com.google.maps.routeoptimization.v1.OptimizeToursRequest; import com.google.maps.routeoptimization.v1.OptimizeToursResponse; import com.google.maps.routeoptimization.v1.RouteOptimizationClient; import com.google.maps.routeoptimization.v1.Shipment; import com.google.maps.routeoptimization.v1.Shipment.VisitRequest; import com.google.maps.routeoptimization.v1.ShipmentModel; import com.google.maps.routeoptimization.v1.Vehicle; import com.google.type.LatLng;public class OptimizeTours { public static void main(String[] args) throws Exception { System.out.println(optimizeTours()); }
public static OptimizeToursResponse optimizeTours() throws Exception { try (RouteOptimizationClient routeOptimizationClient = RouteOptimizationClient.create()) { OptimizeToursRequest request = OptimizeToursRequest.newBuilder() .setParent("projects/PROJECT_NUMBER_OR_ID") .setModel( ShipmentModel.newBuilder() .addShipments( Shipment.newBuilder() .addPickups( VisitRequest.newBuilder() .setArrivalLocation( LatLng.newBuilder().setLatitude(48.8).setLongitude(2.4)))) .addVehicles( Vehicle.newBuilder() .setStartLocation( LatLng.newBuilder().setLatitude(48.9).setLongitude(2.5)))) .build(); return routeOptimizationClient.optimizeTours(request); } } }
পাইথন
পাইথন ক্লায়েন্ট PyPI এ উপলব্ধ।
pip install google-maps-routeoptimization
পাইথন ক্লায়েন্ট লাইব্রেরি ব্যবহার করে একটি অনুরোধ করুন:
from google.maps import routeoptimization_v1 as ro client = ro.RouteOptimizationClient() request = ro.OptimizeToursRequest( parent="projects/PROJECT_NUMBER_OR_ID", model={ "shipments": [ { "pickups": [ { "arrival_location": { "latitude": 37.738818, "longitude": -122.4161 } } ], "deliveries": [ { "arrival_location": { "latitude": 37.79581, "longitude": -122.4218856 } } ] } ], "vehicles": [ { "start_location": { "latitude": 37.738818, "longitude": -122.4161 }, "end_location": { "latitude": 37.738818, "longitude": -122.4161 }, "cost_per_kilometer": 1.0 } ], "global_start_time": "2024-02-13T00:00:00.000Z", "global_end_time": "2024-02-14T06:00:00.000Z" } ) response = client.optimize_tours(request=request) print(response)
Node.js
প্রথমে, আপনার Google মানচিত্র প্ল্যাটফর্ম প্রতিনিধির কাছ থেকে Node.js ক্লায়েন্ট সংরক্ষণাগারের একটি অনুলিপি অনুরোধ করুন৷
নিম্নলিখিত JSON স্নিপেট ব্যবহার করে আপনার package.json
ফাইল কনফিগার করুন:
{
"name": "route-optimization-example",
"version": "1.0.0",
"description": "A RouteOptimization example.",
"main": "main.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"dependencies": {
"@googlemaps/routeoptimization": "^0.1.0"
}
}
Node.js ক্লায়েন্ট লাইব্রেরি ব্যবহার করে একটি অনুরোধ করুন:
'use strict'; const {RouteOptimizationClient} = require('@googlemaps/routeoptimization').v1; const routeoptimizationClient = new RouteOptimizationClient(); async function callOptimizeTours() { const response = await routeoptimizationClient.optimizeTours({ "parent": "projects/PROJECT_NUMBER_OR_ID", "model": { "shipments": [ { "pickups": [ { "arrivalLocation": { "latitude": 37.73881799999999, "longitude": -122.4161 } } ], "deliveries": [ { "arrivalLocation": { "latitude": 37.79581, "longitude": -122.4218856 } } ] } ], "vehicles": [ { "startLocation": { "latitude": 37.73881799999999, "longitude": -122.4161 }, "endLocation": { "latitude": 37.73881799999999, "longitude": -122.4161 }, "costPerKilometer": 1.0 } ], "globalStartTime": "2024-02-13T00:00:00.000Z", "globalEndTime": "2024-02-14T06:00:00.000Z" } }); console.log(JSON.stringify(response)); } callOptimizeTours();
বিশ্রাম
নিম্নলিখিত কমান্ডটি রুট অপ্টিমাইজেশান এপিআইতে একটি OptimizeTours
অনুরোধ পাঠায় এবং সিঙ্ক্রোনাসভাবে একটি প্রতিক্রিয়া গ্রহণ করে।
curl -X POST 'https://routeoptimization.googleapis.com/v1/projects/PROJECT_NUMBER_OR_ID:optimizeTours' \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ --data @- << EOM { "model": { "shipments": [ { "pickups": [ { "arrivalLocation": { "latitude": 37.73881799999999, "longitude": -122.4161 } } ], "deliveries": [ { "arrivalLocation": { "latitude": 37.79581, "longitude": -122.4218856 } } ] } ], "vehicles": [ { "startLocation": { "latitude": 37.73881799999999, "longitude": -122.4161 }, "endLocation": { "latitude": 37.73881799999999, "longitude": -122.4161 }, "costPerKilometer": 1.0 } ], "globalStartTime": "2024-02-13T00:00:00.000Z", "globalEndTime": "2024-02-14T06:00:00.000Z" } } EOM
অনুরোধ সম্পূর্ণ হলে, আপনি একটি প্রতিক্রিয়া বার্তা পাবেন।