Strix Fleet Management
A modern B2B Fleet Management solution
Following the accomplishments of Lo/Jack LATAM's partnership with Leapsight on Strix, the business made the decision to continue modernising by replacing its outdated Fleet Management solution with a new one based on Magenta, the IoT platform built and managed by Leapsight for Strix.
A modern architecture for a modern UX
By utilising the most recent distributed applications features provided by Magenta, Strix Fleet Management offers a significant improvement over its predecessor, including:
- The use of the Web Application Messaging Protocol (WAMP) to connect all elements of its architecture, in particular to enable (soft) real-time bidirectional communication with the user interface.
- The use of micro frontends - adopting the microservice architecture style to frontend development.
- A more advanced Digital Twin solution based on Virtual Actors, an abstraction on top of the actor model wherein actors exist perpetually and are always addressable regardles of their physical location.
Bondy and WAMP
Magenta connects all components of its distributed architecture using Bondy, an open-source distributed application networking platform created by Leapsight that implements the open Web Application Messaging Protocol (WAMP).
Bondy offers service and event mesh capabilities thanks to its distributed, decentralised implementation of WAMP.
Strix Fleet Management web app uses WAMP to subscribe to real-time events produced by teh vehicle (and other assets) digital twins. This allows users to receive state change events that the vehicles' digital twins publish each time they get a telemetry signal.
With no complex client side or server side logic required, WAMP's use of Web Sockets establishes a bidirectional communication channel that enables customers to track tens or hundreds of vehicles in real-time.
The following videos show the end result.
-
Live Tracking
Tracking a fleet's location and telemetry states in real-time.
-
Historical Tour
You don’t have to be “a creative” to be creative.
-
Smart Overlays
Map smart overlays
-
Geofences
Circular and polygonal geofencing to be used with rules
-
Rules
User defined rules that trigger events and notifications.
-
Notifications
Display of notifications based on event-triggering rules.
Micro frontends
As new features will be constantly added Strix needed a way to make the development scalable. Also not all customers subscribe to all features and it was desirable for the application to only load the coe required for the enabled features.
Following the succesful implementation of a microservice style architecture for the backend, we decided to replicate the same in the front end.
The result is an application that is composed of micro applications , each one developed by a different team and encapsulating a set of features that are enabled/disabled based on the user's contracted service plan.
Digital Twins via virtual actors
Finally, we needed more complex capabilities in terms of digital twinining. As opposed to Strix consumer offering, Fleet Management includes support for CAN-bus telemetry which makes the definition of the digital twin state and state transitions much more complex.
Building interactive services that are scalable and always-on is hard. To support a large number of digital teins and user sessions, high throughput and low latency are essential.
A naive solution is to write the new digital twin state to the database on every telemetry signal received and read the new state from the database on every user request. This has limited scalability due to latency and througput limits of the database layer.
A caching later is often added to reduce latency, but this comes with its own complexities, the main one being the lost of the underlying database consistency guarantees.
As Magenta is based on the actor model we decided to explore the idea of Virtual Actors popularized by Microsoft Orleans.
Using virtual actors, Magenta digital twins offer better scalability and lower latency.
We are eager to see what Strix and Magenta will bring next.