Webhooks and Notifications

Webhooks
While services are able to analyze vehicle telemetry accessible to them
directly and look for changes of interest, knowgo-vehicle-simulator
supports a number of event triggers that allow custom webhooks to be
fired whenever a trigger condition is satisfied, making it easier for
services to receive only the information they are interested in.
The different trigger conditions together with a brief explanation of when they are triggered are outlined in the table below:
| Trigger | Description | 
|---|---|
| automation_level_changed | Triggered when the SAE J3016 level of driving automation changes. | 
| driver_changed | Triggered when the active Driver is changed throughout the course of a Journey. The Driver may be either a natural person or an autonomous driving system. | 
| journey_begin | Triggered when a new Journey is started. Each time the vehicle simulation model is started, a new Journey is begun. | 
| journey_end | Triggered when a Journey is completed. This will be triggered each time the simulation model is stopped. | 
| location_changed | Triggered each time the vehicle location (latitude/longitude) changes. This can be chained together with a reverse geocoding service in order to detect country changes. | 
| ignition_changed | Triggered any time the ignition status changes. | 
| harsh_acceleration | Triggered any time a harsh acceleration event is detected. This is assessed by looking for abrupt changes in the accelerator pedal position across a configurable time interval. | 
| harsh_braking | Triggered any time a harsh braking event is detected. As with harsh_accelerationdetection, this is triggered by analyzing changes in brake pedal position over time. | 
Users may define fixed REST API endpoints for specific triggers as part of the simulator configuration, or services may register callback URLs dynamically at run-time via the simulator REST API.
Notifications
In addition to their use for external API endpoint notification, triggers can also be configured by the user to raise a visible alert directly within the simulator UI.
Notifications to the simulator are also supported via the
/simulator/notification and /exve/vehicles/<vehicleId>/notification
REST API endpoints for external services and applications that wish to
raise alerts in the simulator UI directly. This provides a general
approximation of head unit integration applications can expect to find
in production environments.