Winter '25 Fleet Management Job

Prev Next

Overview

Fleet Management Job

The heart of the FM is the Fleet Management Job, which runs continuously every 15 minutes. It is a 13-pass batch process that performs the following functions. Entries in red (Pass 6, 7, and 8) only run once per day (after midnight).

Pass 0: One time setup pass. ELD addresses/locations are downloaded from Samsara to create Account ELD object records. No other passes are executed.

  1. PASS 1: Set Timezone for all shipping locations (1000 max per pass). Executes each time the job runs.

  2. PASS 2: Sync Fleet Assets with Samsara Vehicles - VIN or ELD ID provide shared unique keys. Executes each time the job runs.

    1. If Fleet Asset does not exist, create it.

    2. If Fleet Asset Name or License are out of sync, update Samsara.

    3. If Fleet Asset ELD ID is not populated, update it.

  3. PASS 3: Get and Save the latest Vehicle statistics. Executes each time the job runs.

  4. PASS 4: Sync Drivers - [CDL # + License State], Username, or ELD ID provide shared unique keys. Executes each time the job runs.

    1. Combine the TMS and Samsara Driver records in the start() method.

    2. For ELD ID synced Drivers, update Samsara if needed.

    3. For License synced Drivers, update TMS with ELD ID and update Samsara.

    4. For TMS-only Drivers, create Driver in Samsara.

    5. For Samsara-only Drivers, create Driver in the TMS.

  5. PASS 5: Get and Save the latest Driver HOS Clocks. Executes each time the job runs.

  6. PASS 6: Get and Save the Driver Log Summaries for each day of the grace period. Executes once per day.

  7. PASS 7: Get and Save the Driver Log Entries for each day of the grace period. Executes once per day.

  8. PASS 8: Delete any obsolete Driver Log Entries not up-serted in Pass 7. Executes once per day.

  9. PASS 9: Sync Shipper/Consignee locations used by new Stops. Executes each time the job runs.

  10. PASS 10: Get updates for all "active" routes and update Loads, Stops, and Trip Plans. Executes each time the job runs.

  11. PASS 11: Get all driver documents since the last run. Executes each time the job runs.

  12. PASS 12: Get all driver messages since the last run.  Executes each time the job runs.

  13. PASS 13: Update the Load current location from Fleet Asset geolocation updates. Executes each time the job runs.

Job Notes

  1. You may run the Fleet Management Job even if you are not managing a fleet. The Timezone field on account records populates. If Fleet Management is not enabled, the job will run as a one-pass process which populates the Timezone field.

  2. You may run one pass only of the Fleet Management Job by setting the Fleet Management Pass Counter configuration setting. DO NOT set this field unless you are debugging.

  3. Timezone field population on the account record occurs for 1000 records per batch run, so it may take several hours for all accounts to populate.

  4. If the Timezone field for an account cannot be calculated, the field is set to Unknown. Correctly populate the Timezone manually for all these records.

  5. If an account cannot be updated with the Timezone field due to custom code or validations, this pass of the batch process is disabled. The Timezone Update Disabled flag is set on TMS Admin ðŸ¡ª Configuration. You must correct the error that is preventing the update of account records, and then uncheck this field.

  6. Samsara Vehicles are paired with Fleet Asset records via the ELD ID field. This match is initially established by matching the VIN field.

  7. Samsara Drivers are paired with Driver records via the ELD ID field. This match is initially established by matching the [CDL # + CDL State/Province] fields.

  8. Driver Logs are not retrieved for the current day as the data is constantly changing.

  9. Samsara Locations/Addresses are paired with one or more Account records via the Account ELD record created for every Fleet shipping location.

  10. Samsara driver Routes are paired with Fleet Assignment records via the ELD Route ID field.

  11. If a driver uploads a document and the current load for that driver cannot be determined, the document is staged in the Inbound Email table (similar to other carrier documents).

  12. Make sure that drivers submit all documents from the phone application from the route the document pertains to. Otherwise it cannot be associated with the load.

  13. If a driver sends a text message and the current load for that driver cannot be determined, the message is dropped.

  14. The Fleet Carrier Transportation Profile mileage API settings are used when calculating Fleet Asset distance fields. Make sure they are visible and set properly.