GithubHelp home page GithubHelp logo

fleet-events-reference-solution's Introduction

Documents Index

Repo Structure

This git repo is structured as follows.

  • cloud-functions/: reference functions source code for Cloud Functions
  • beam/: reference functions source code for Dataflow
  • terraform/: deployment automation with terraform
    • modules/: folder holding multiple terraform modules
      • fleet_events:
        • README.md: README for the module
        • main.tf: main code for the module
        • variables.tf: defines input parameters of the module
        • outputs.tf: defines outputs of the module
        • *.tf:
        • examples/: one or more example use of the module
          • with_existing_project/:
            • README.md: readme for the example
            • main.tf: main terraform code showing use of the module
            • *.tf
            • terraform.tfvars.sample: sample config file
          • with_new_project/
      • fleet-events-function
      • fleetengine-logging-config
  • tools : utilities
    • python
      • *.py : utilities to validate the deployment
  • diagrams/: diagrams used in articles
  • *.md: additional documents

Fleet Events Reference Solution

The Fleet Events Reference Solution is an open source solution that enables Mobility customers and partners to generate key events on top of Fleet Engine and Google Cloud Platform components. The reference solution supports customers using the Last Mile Fleet Solution and On Demand Rides and Delivery.

With the Fleet Events Reference Solution, customers can generate the following events with little or no custom code:

  1. ETA change of task/trip arrival
  2. Relative ETA change of task/trip arrival
  3. Time remaining to task/trip arrival
  4. Distance remaining to task/trip arrival
  5. Task/TripOutcome status change

Each component of the reference solution can be customized to suit your business needs.

To get started - we support different Processing engines to compute events and provide a set of tools to automatically provision building blocks. To set up “Fleet Events” within your GCP Project, choose a Processor and follow the guides below. For those who are new to Fleet Events, we recommend starting with Cloud Functions:

Overview and logical building blocks

Diagram : Fleet Events overview and logical building blocks

alt_text

The reference solution contains the following components:

  • Event Source: Where the original event stream comes from. Both “Last Mile Fleet Solution” or “On Demand Rides and Deliveries Solution” have integration with Cloud Logging that helps to turn Fleet Engine RPC call logs into event streams available to developers. This will be the core source to consume.
  • Processing: Raw RPC call logs will be converted into state change events within this block that computes over a stream of log events. To detect such change, this component requires a state store so that new events can be compared with previous ones to detect change. Events might not always include all the information of interest. In such cases, this block might make look up calls to backends as needed.
    • State store: Some processing frameworks provide intermediate data persistent on its own. But if not, in order to store state on your own, since these should be unique to a vehicle and event type, a K-V type data persistence service will be a good fit.
  • Sink (Custom Events): Detected state change should be made available to any application or service that can benefit from it. Therefore it will be a natural choice to publish this custom event to an event delivery system for downstream consumption.
  • Downstream service: Code that consumes the generated events and takes actions unique to your use case.

Contributors

Google maintains this article. The following contributors originally wrote it.

Principal authors:

  • Ethel Bao | Software Engineer, Google Maps Platform
  • Mohanad Almiski | Software Engineer, Google Maps Platform
  • Naoya Moritani | Solutions Engineer, Google Maps Platform

fleet-events-reference-solution's People

Contributors

ethelbao avatar ewbao avatar gmalmiski avatar n0531m avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

fleet-events-reference-solution's Issues

Test Issue

Thanks for stopping by to let us know something could be better!


PLEASE READ

If you have a support contract with Google, please create an issue in the support console. This will ensure a timely response.

Discover additional support services for the Google Maps Platform, including developer communities, technical guidance, and expert support at the Google Maps Platform support resources page.

If your bug or feature request is not related to this particular library, please visit the Google Maps Platform issue trackers.

Check for answers on StackOverflow with the google-maps tag.


Please be sure to include as much information as possible:

Environment details

  1. Specify the API at the beginning of the title (for example, "Places: ...")
  2. OS type and version
  3. Library version and other environment information

Steps to reproduce

  1. ?

Code example

# example

Stack trace

# example

Following these steps will guarantee the quickest resolution possible.

Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.