This module includes functions that control the Link Metrics protocol.
Classes |
|
| struct | otLinkMetrics |
|
This structure represents what metrics are specified to query.
|
|
| struct | otLinkMetricsValues |
|
This structure represents the result (value) for a Link Metrics query.
|
|
| struct | otLinkMetricsSeriesFlags |
|
This structure represents which frames are accounted in a Forward Tracking Series.
|
|
Typedefs |
|
| typedef struct otLinkMetrics | otLinkMetrics |
|
This structure represents what metrics are specified to query.
|
|
| typedef struct otLinkMetricsValues | otLinkMetricsValues |
|
This structure represents the result (value) for a Link Metrics query.
|
|
| typedef struct otLinkMetricsSeriesFlags | otLinkMetricsSeriesFlags |
|
This structure represents which frames are accounted in a Forward Tracking Series.
|
|
| typedef enum otLinkMetricsStatus | otLinkMetricsStatus |
|
Link Metrics Status values.
|
|
| typedef void(* | otLinkMetricsReportCallback ) (const otIp6Address *aSource, const otLinkMetricsValues *aMetricsValues, uint8_t aStatus, void *aContext) |
|
This function pointer is called when a Link Metrics report is received.
|
|
| typedef void(* | otLinkMetricsMgmtResponseCallback ) (const otIp6Address *aSource, uint8_t aStatus, void *aContext) |
|
This function pointer is called when a Link Metrics Management Response is received.
|
|
Enumerations |
|
| enum |
otLinkMetricsStatus
: uint8_t {
OT_LINK_METRICS_STATUS_SUCCESS = 0, OT_LINK_METRICS_STATUS_CANNOT_SUPPORT_NEW_SERIES = 1, OT_LINK_METRICS_STATUS_SERIESID_ALREADY_REGISTERED = 2, OT_LINK_METRICS_STATUS_SERIESID_NOT_RECOGNIZED = 3, OT_LINK_METRICS_STATUS_NO_MATCHING_FRAMES_RECEIVED = 4, OT_LINK_METRICS_STATUS_OTHER_ERROR = 254 } |
|
Link Metrics Status values.
|
|
Functions |
|
| otError | otLinkMetricsQuery ( otInstance *aInstance, const otIp6Address *aDestination, uint8_t aSeriesId, const otLinkMetrics *aLinkMetricsFlags, otLinkMetricsReportCallback aCallback, void *aCallbackContext) |
|
This function sends an MLE Data Request to query Link Metrics.
|
|
| otError | otLinkMetricsConfigForwardTrackingSeries ( otInstance *aInstance, const otIp6Address *aDestination, uint8_t aSeriesId, otLinkMetricsSeriesFlags aSeriesFlags, const otLinkMetrics *aLinkMetricsFlags, otLinkMetricsMgmtResponseCallback aCallback, void *aCallbackContext) |
|
This function sends an MLE Link Metrics Management Request to configure/clear a Forward Tracking Series.
|
|
| otError | otLinkMetricsSendLinkProbe ( otInstance *aInstance, const otIp6Address *aDestination, uint8_t aSeriesId, uint8_t aLength) |
|
This function sends an MLE Link Probe message.
|
|
Detailed Description
This module includes functions that control the Link Metrics protocol.
Typedef Documentation
◆ otLinkMetricsMgmtResponseCallback
| typedef void(* otLinkMetricsMgmtResponseCallback) (const otIp6Address *aSource, uint8_t aStatus, void *aContext) |
This function pointer is called when a Link Metrics Management Response is received.
- Parameters
-
[in] aSourceA pointer to the source address. [in] aStatusThe status code in the response. [in] aContextA pointer to application-specific context.
◆ otLinkMetricsReportCallback
| typedef void(* otLinkMetricsReportCallback) (const otIp6Address *aSource, const otLinkMetricsValues *aMetricsValues, uint8_t aStatus, void *aContext) |
This function pointer is called when a Link Metrics report is received.
- Parameters
-
[in] aSourceA pointer to the source address. [in] aMetricsValuesA pointer to the Link Metrics values (the query result). [in] aStatusThe status code in the report (only useful when aMetricsValuesis NULL).[in] aContextA pointer to application-specific context.
Function Documentation
◆ otLinkMetricsConfigForwardTrackingSeries()
| otError otLinkMetricsConfigForwardTrackingSeries | ( | otInstance * |
aInstance,
|
| const otIp6Address * |
aDestination,
|
||
| uint8_t |
aSeriesId,
|
||
| otLinkMetricsSeriesFlags |
aSeriesFlags,
|
||
| const otLinkMetrics * |
aLinkMetricsFlags,
|
||
| otLinkMetricsMgmtResponseCallback |
aCallback,
|
||
| void * |
aCallbackContext
|
||
| ) |
This function sends an MLE Link Metrics Management Request to configure/clear a Forward Tracking Series.
- Parameters
-
[in] aInstanceA pointer to an OpenThread instance. [in] aDestinationA pointer to the destination address. [in] aSeriesIdThe Series ID to operate with. [in] aSeriesFlagsThe Series Flags that specifies which frames are to be accounted. [in] aLinkMetricsFlagsA pointer to flags specifying what metrics to query. Should be NULLwhenaSeriesFlagsis0.[in] aCallbackA pointer to a function that is called when Link Metrics Management Response is received. [in] aCallbackContextA pointer to application-specific context.
- Return values
-
OT_ERROR_NONESuccessfully sent a Link Metrics Management Request message. OT_ERROR_NO_BUFSInsufficient buffers to generate the MLE Link Metrics Management Request message. OT_ERROR_INVALID_ARGSaSeriesIdis not within the valid range.
◆ otLinkMetricsQuery()
| otError otLinkMetricsQuery | ( | otInstance * |
aInstance,
|
| const otIp6Address * |
aDestination,
|
||
| uint8_t |
aSeriesId,
|
||
| const otLinkMetrics * |
aLinkMetricsFlags,
|
||
| otLinkMetricsReportCallback |
aCallback,
|
||
| void * |
aCallbackContext
|
||
| ) |
This function sends an MLE Data Request to query Link Metrics.
It could be either Single Probe or Forward Tracking Series.
- Parameters
-
[in] aInstanceA pointer to an OpenThread instance. [in] aDestinationA pointer to the destination address. [in] aSeriesIdThe Series ID to query about, 0 for Single Probe. [in] aLinkMetricsFlagsA pointer to flags specifying what metrics to query. [in] aCallbackA pointer to a function that is called when Link Metrics report is received. [in] aCallbackContextA pointer to application-specific context.
- Return values
-
OT_ERROR_NONESuccessfully sent a Link Metrics query message. OT_ERROR_NO_BUFSInsufficient buffers to generate the MLE Data Request message.
◆ otLinkMetricsSendLinkProbe()
| otError otLinkMetricsSendLinkProbe | ( | otInstance * |
aInstance,
|
| const otIp6Address * |
aDestination,
|
||
| uint8_t |
aSeriesId,
|
||
| uint8_t |
aLength
|
||
| ) |
This function sends an MLE Link Probe message.
- Parameters
-
[in] aInstanceA pointer to an OpenThread instance. [in] aDestinationA pointer to the destination address. [in] aSeriesIdThe Series ID [1, 254] which the Probe message aims at. [in] aLengthThe length of the data payload in Link Probe TLV, 0, 64.
- Return values
-
OT_ERROR_NONESuccessfully sent a Link Probe message. OT_ERROR_NO_BUFSInsufficient buffers to generate the MLE Link Probe message. OT_ERROR_INVALID_ARGSaSeriesIdoraLengthis not within the valid range.