Google Sign-In Required

Use your company Google account to access the BetterFleet private content.

Back to private home

BetterFleet Support Private
Skip to content
BetterFleet Dev Wiki
bf-telematics
Initializing search
    bf-dev
    • Home
    • Product Capabilities
    • Process
    • Current Work
    • System Design
    • Software Reference
    • Operations
    bf-dev
    • Home
      • Overview
      • Manage
      • Overview
      • Product Engineering Workflow
      • Product Engineering Delivery
      • Product Engineering Workflow in Linear
        • GitLab Feature Flags
        • In-App Docs Authoring
        • Release Notes
      • Templates
      • Publishing
      • Workflow Companions
      • Overview
      • Active Artifacts
      • Backlog Artifacts
      • Archived Artifacts
      • Overview
      • Microgrid
      • OSCP
        • Challenge
        • Specification
        • Spec
        • Architecture
        • Overview
        • Script Runtime Model
        • Compose Profiles and Modes
        • Repo Topology
        • CI and Release Integration
        • Overview
        • Internal Application Diagrams
          • Overview
          • Web Model
          • Core Model
        • Service Interaction Flows
        • Data and State
          • Index
          • bf-manage-web
          • bf-manage-core
          • bf-manage-connect
          • bf-manage-sitepwrmon
          • bf-manage-incidents
          • bf-telematics
            • What this service is
            • Code anatomy
            • Architectural characteristics
            • Documentation and tests in-repo
            • Internal request lifecycle
          • bf-depot-sim
          • bf-manage-roaming
          • bf-support-microsite
          • bf-digital-twin
          • bf-schedule-creator
        • Overview
        • Internal Application Diagrams
        • Migration and Flags
        • Simulation Request Lifecycle
          • Index
          • bf-bnl-ui
          • bf-bnl-settings
          • bf-bnl-schedule-analysis-compute
          • bf-route-modelling
          • bf-schedule-creator
          • bf-digital-twin
        • Overview
        • Secrets and Env Strategy
        • Vendors and Local Dependencies
        • ADRs
        • Service Matrix
        • Cloud Dependencies
        • Ports and URLs
      • Onboarding
      • Daily Operations Runbook
        • Overview
        • Staging Hotfix Release
        • Production Hotfix Release
        • Terraform Plan Dry Runs
      • Troubleshooting
      • Testing Guide
    • What this service is
    • Code anatomy
    • Architectural characteristics
    • Documentation and tests in-repo
    • Internal request lifecycle

    bf-telematics¶

    What this service is¶

    bf-telematics is a provider-integration service that normalizes telemetry from external providers into BetterFleet-friendly data and APIs.

    Code anatomy¶

    • src/main.py: FastAPI factory.
    • src/v2/*: newer API/domain modules (device, vehicle, provider, polling_tasks).
    • src/modules/api_provider and src/modules/telematics_snapshot: provider abstraction and snapshot logic.
    • src/event_layer/*: subscription/event-driven paths.
    • src/db/alembic: persistence and schema migrations.

    Architectural characteristics¶

    • Explicit provider abstraction and polling architecture.
    • Coexistence of legacy/support modules with v2 structure.

    Documentation and tests in-repo¶

    • Domain docs under docs/ (domain.md, events.md, device_manager.md, adding_provider.md).
    • Tests include provider/device/vehicle and polling task coverage under test/v2.

    Internal request lifecycle¶

    sequenceDiagram
      participant Provider as telematics provider
      participant Poll as polling task
      participant Normalize as provider normalizer
      participant Snapshot as snapshot module
      participant Api as v2 api
    
      Poll->>Provider: fetch provider payload
      Provider-->>Poll: raw telemetry data
      Poll->>Normalize: standardize payload
      Normalize->>Snapshot: update fleet state snapshot
      Snapshot->>Api: expose normalized view
    Made with Material for MkDocs