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

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

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

যদি গাড়ির অবস্থান আপডেট করার জন্য ড্রাইভার SDK ব্যবহার না করেন, তাহলে আপনি গাড়ির অবস্থান সম্পর্কে সরাসরি Fleet Engine-এ কল করতে পারেন। যেকোনো সক্রিয় গাড়ির জন্য, Fleet Engine প্রতি মিনিটে অন্তত একবার এবং সর্বাধিক প্রতি 5 সেকেন্ডে একবার লোকেশন আপডেট আশা করে। এই আপডেটগুলির জন্য শুধুমাত্র Fleet Engine Driver 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 রেফারেন্স দেখুন।

এরপর কি?