Verified Telemetry
FreeRTOS_vt_fallcurve_component.h
Go to the documentation of this file.
1 /* Copyright (c) Microsoft Corporation.
2  Licensed under the MIT License. */
3 
6 #ifndef FREERTOS_VT_FALLCURVE_COMPONENT_H
7 #define FREERTOS_VT_FALLCURVE_COMPONENT_H
8 
9 #include "azure_iot_hub_client.h"
10 #include "azure_iot_json_reader.h"
11 #include "azure_iot_json_writer.h"
12 
13 #include "vt_fc_api.h"
14 
16 {
17  /* Name of this component */
18  UCHAR component_name_ptr[VT_COMPONENT_NAME_MAX_LENGTH];
19 
20  /* Component Name Length */
21  UINT component_name_length;
22 
23  /* Telemetry associated with the fallcurve signature component*/
24  UCHAR associated_telemetry[VT_ASSOCIATED_TELEMETRY_CSV_MAX_LENGTH];
25 
26  /* Status of the telemetry associated with the fallcurve signature component*/
27  bool telemetry_status;
28 
29  /* Fallcurve Object */
30  VT_FALLCURVE_OBJECT fc_object;
31 
32  /* Status of reported properties sent */
33  UINT property_sent;
34 
35  /* Stores on the scale of 0-100 how much Fingerprint Template can be trusted */
36  UINT template_confidence_metric;
37 
38  /* Compute sensor status when a global command is issued */
39  bool telemetry_status_auto_update;
40 
42 
57  UCHAR* component_name_ptr,
58  VT_DEVICE_DRIVER* device_driver,
59  VT_SENSOR_HANDLE* sensor_handle,
60  UCHAR* associated_telemetry,
61  bool telemetry_status_auto_update);
62 
78  AzureIoTHubClient_t* xAzureIoTHubClient,
79  UCHAR* component_name_ptr,
80  UINT component_name_length,
81  UCHAR* pnp_command_name_ptr,
82  UINT pnp_command_name_length,
83  UINT* status_code);
84 
96  FreeRTOS_VT_FALLCURVE_COMPONENT* handle, AzureIoTHubClient_t* xAzureIoTHubClient, bool* deviceStatus);
97 
108  FreeRTOS_VT_FALLCURVE_COMPONENT* handle, AzureIoTHubClient_t* xAzureIoTHubClient);
109 
120  FreeRTOS_VT_FALLCURVE_COMPONENT* handle, bool toggle_verified_telemetry);
121 
134  const UCHAR* component_name_ptr,
135  UINT component_name_length,
136  AzureIoTJSONReader_t* json_reader_ptr);
137 
138 #endif /* FREERTOS_VT_FALLCURVE_COMPONENT_H */
FreeRTOS_vt_fallcurve_process_reported_property_sync
AzureIoTResult_t FreeRTOS_vt_fallcurve_process_reported_property_sync(FreeRTOS_VT_FALLCURVE_COMPONENT *handle, const UCHAR *component_name_ptr, UINT component_name_length, AzureIoTJSONReader_t *json_reader_ptr)
Synchronizes on-device fallcurve template database from the digital twin upon startup.
FreeRTOS_vt_fallcurve_compute_sensor_status_global
AzureIoTResult_t FreeRTOS_vt_fallcurve_compute_sensor_status_global(FreeRTOS_VT_FALLCURVE_COMPONENT *handle, bool toggle_verified_telemetry)
Get status of the sensor related to this fallcurve component.
FreeRTOS_vt_fallcurve_process_command
AzureIoTResult_t FreeRTOS_vt_fallcurve_process_command(FreeRTOS_VT_FALLCURVE_COMPONENT *handle, AzureIoTHubClient_t *xAzureIoTHubClient, UCHAR *component_name_ptr, UINT component_name_length, UCHAR *pnp_command_name_ptr, UINT pnp_command_name_length, UINT *status_code)
Process commands related to fallcurve component eg. setResetFingerprintTemplate , retrainFingerprintT...
FreeRTOS_vt_fallcurve_init
AzureIoTResult_t FreeRTOS_vt_fallcurve_init(FreeRTOS_VT_FALLCURVE_COMPONENT *handle, UCHAR *component_name_ptr, VT_DEVICE_DRIVER *device_driver, VT_SENSOR_HANDLE *sensor_handle, UCHAR *associated_telemetry, bool telemetry_status_auto_update)
Initializes an instance of Verified Telemetry Information Interface for fallcurve component.
FreeRTOS_vt_fallcurve_telemetry_status_property
AzureIoTResult_t FreeRTOS_vt_fallcurve_telemetry_status_property(FreeRTOS_VT_FALLCURVE_COMPONENT *handle, AzureIoTHubClient_t *xAzureIoTHubClient, bool *deviceStatus)
Send "telemetryStatus" read-only property to IoT Hub.
FreeRTOS_vt_fallcurve_fingerprint_type_property
AzureIoTResult_t FreeRTOS_vt_fallcurve_fingerprint_type_property(FreeRTOS_VT_FALLCURVE_COMPONENT *handle, AzureIoTHubClient_t *xAzureIoTHubClient)
Send "fingerprintType" read-only property to IoT Hub.
FreeRTOS_VT_FALLCURVE_COMPONENT_TAG
Definition: FreeRTOS_vt_fallcurve_component.h:15