একটি গাড়ির অবস্থান আপডেট করুন

ফ্লিট ইঞ্জিনের সাথে সেরা পারফরম্যান্সের জন্য, এটিকে গাড়ির অবস্থান আপডেটের একটি স্ট্রীম সরবরাহ করুন৷ এই আপডেটগুলি প্রদান করার জন্য নিম্নলিখিত উপায়গুলির মধ্যে একটি ব্যবহার করুন:

  1. ড্রাইভার SDK ব্যবহার করুন : সহজ বিকল্প। Android বা iOS এর জন্য ড্রাইভার SDK ডকুমেন্টেশন দেখুন।
  2. কাস্টম কোড ব্যবহার করুন : আপনার ব্যাকএন্ডের মাধ্যমে অবস্থানগুলি রিলে করা হলে বা আপনি যদি Android বা iOS ছাড়া অন্য ডিভাইসগুলি ব্যবহার করেন তাহলে দরকারী৷ এই গাইড সেই পদ্ধতির কভার করে।

গাড়ির অবস্থান আপডেট করতে ড্রাইভার SDK ব্যবহার না করলে, আপনি গাড়ির অবস্থান সহ ফ্লিট ইঞ্জিনে সরাসরি কল করতে পারেন। যেকোনো সক্রিয় গাড়ির জন্য, ফ্লিট ইঞ্জিন প্রতি মিনিটে অন্তত একবার এবং প্রতি 5 সেকেন্ডে সর্বোচ্চ একবার একটি অবস্থান আপডেট আশা করে। এই আপডেটগুলির জন্য শুধুমাত্র ফ্লিট ইঞ্জিন ড্রাইভার SDK ব্যবহারকারীর বিশেষাধিকার প্রয়োজন৷

গাড়ির অবস্থানের উদাহরণ আপডেট করুন

জাভা

static final String PROJECT_ID = "project-id";
static final String VEHICLE_ID = "vid-8241890";

VehicleServiceBlockingStub vehicleService = VehicleService.newBlockingStub(channel);

String vehicleName = "providers/" + PROJECT_ID + "/vehicles/" + VEHICLE_ID;
Vehicle updatedVehicle = Vehicle.newBuilder()
    .setLastLocation(VehicleLocation.newBuilder()
        .setSupplementalLocation(LatLng.newBuilder()
            .setLatitude(37.3382)
            .setLongitude(121.8863))
        .setSupplementalLocationTime(now())
        .setSupplementalLocationSensor(LocationSensor.CUSTOMER_SUPPLIED_LOCATION)
        .setSupplementalLocationAccuracy(DoubleValue.of(15.0)))  // Optional
    .build();

UpdateVehicleRequest updateVehicleRequest = UpdateVehicleRequest.newBuilder()
    .setName(vehicleName)
    .setVehicle(updatedVehicle)
    .setUpdateMask(FieldMask.newBuilder()
        .addPaths("last_location"))
    .build();

try {
  Vehicle updatedVehicle =
      vehicleService.updateVehicle(updateVehicleRequest);
} catch (StatusRuntimeException e) {
  Status s = e.getStatus();
  switch (s.getCode()) {
    case NOT_FOUND:
      // Most implementations will call CreateVehicle in this case
      break;
    case PERMISSION_DENIED:
      break;
  }
  return;
}
// If no Exception, Vehicle updated successfully.

বিশ্রাম

curl -X PUT \
  "https://fleetengine.googleapis.com/v1/providers/project-id/vehicles/vid-8241890?updateMask=last_location" \
  -H "Authorization: Bearer $JWT" \
  -H "Content-Type: application/json" \
  --data-binary @- << EOM
{
    "supplementalLocation": {"latitude": 12.1, "longitude": 14.5},
    "supplementalLocationTime": "$(date -u --iso-8601=seconds)",
    "supplementalLocationSensor": "CUSTOMER_SUPPLIED_LOCATION",
    "supplementalLocationAccuracy": 15
}
EOM

providers.vehicles.update রেফারেন্স দেখুন।

এরপর কি