Skip to main content
Version: 5.0

Extension of the Management Interface

The header file for the extension of the Management interface is fullsdkextapi.h.

Priority

First call mgt_initialize before using any function of the extension API.

See
  • Rules in the SCHC by Acklio page.
  • Template Commmands in the SCHC Management interface section for information on error messages.

Provision Rules

The extension API provision SCHC compression or fragmentation rules in a binary format.

Header Rules

Dynamic Rules

This function should be called only when the FullSDK library is supporting dynamic rule loading.

The library can be compiled without this feature being present. In this case, the function returns an error code indicating that the function is not implemented.
This functionnality is available in the Demo examples.

The mgt_provision_header_rules() function provisions the header rules.

The compression rule (compression_rules.bin in the 4) can be downloaded from the SCHC Template on Acklio IPCore.

The function must be provided with the following parameters:

ParameterDescription
bin_rulesSCHC rules in a binary format.
bin_rules_lenThe length of bin_rules, in bytes.
memoryA memory area that can be used by the parser.
memory_lenThe length of the memory area.

Payload Rules

caution

This function must be called after mgt_provision_header_rules.

This function should be called only when the FullSDK library is supporting dynamic payload patterns loading.

The mgt_status_t mgt_provision_payload_rules() function provisions payload pattern rules in a binary format.

The payload compression rule (payload_pattern.bin in the CBOR package) can be downloaded from the SCHC Template on Acklio IPCore when it is present (this rule being optional).

The function must be provided with the following parameters:

ParameterDescription
bin_rulesPayload pattern rules in a binary format.
bin_rules_lenThe length of bin_rules, in bytes.
memoryA memory area that can be used by the parser.
memory_lenThe length of the memory area.

Fragmentation Rules

caution

This function should be called before starting the synchronization process.

Dynamic Rules

This function should be called only when the FullSDK library is supporting dynamic rule loading.

The library can be compiled even if this feature is not present. In this case, the function returns an error code indicating that the function is not implemented.
This functionnality is available in the AT Modem UDP Client example in Demo examples.

The mgt_provision_frag_profile() function provisions the fragmentation rule for a single direction. In order to set a specific fragmentation profile for both directions (uplink and downlink), this function must be called twice with the selected rules.

The fragmentation rule (rule_fragmentation_uplink_xx.bin or rule_fragmentation_downlink_xx.bin in the CBOR package) can be downloaded from the SCHC Template on Acklio IPCore. The xx stands for the rule ID of the fragmentation rule.

The function must be provided with the following parameters:

ParameterDescription
bufferFragmentation rule in a binary format.
sizeThe length of the fragmentation rule, in bytes.

Templates

Get the Template ID

The mgt_status_t mgt_get_template_id() function returns the template ID of the current template and the operation status MGT_SUCCESS.

Possible error statuses are the following:

  • MGT_NOT_INIT_ERR that means that the SDK is not yet initialized.
  • MGT_TPL_NOT_INIT_ERR that means that the template is not yet initialized.

Set Template Parameters

The mgt_status_t mgt_set_template_param() function sets the parameter to the corresponding index in the template.

The function must be provided with the following parameters:

ParameterDescription
index0-based index corresponding to the template parameters to set.
Check the documentation provided in the rules_usage.txt file from the CBOR package that you download when creating a template in Acklio IPCore.
valueThe value to associate to the index.
sizeThe size of the given value in bytes.

Get Template Parameters

The mgt_status_t mgt_get_template_param() function gets the parameter to the corresponding index in the template.

The function must be provided with the following parameters:

ParameterDescription
index0-based index corresponding to the template parameters to retrieve. Check the documentation given along the rules binary file for more information.
valueThe value to associate to the index.
sizeThe size of the given value in bytes.

Configurable Parameters

The mgt_get_nb_template_params() functions returns the number of configurable parameters.

Reset Template Parameters

The mgt_reset_template_params() functions clears the template parameters in the memory. This function is typically called when the mgt_set_template_param returns a MGT_MEM_ERR error.

The user will need to set all the template parameters again after. If calling this function is not enough, it means that the provided memory_ptr to mgt_provision_header_rules is too small (see above).

This function might not be implemented.

Network Configuration

The mgt_get_network_protocol() function returns the network protocol. It must be provided with a type parameter.

The mgt_get_ipv6_address() function returns the IPv6 address set for the datagram layer. It must be provided with the following parameters:

ParameterDescription
addrThe address of a buffer where the 16-byte IPv6 address will be written.
sizeThe size of addr buffer in bytes.

Quality of Service

The mgt_provision_qos() allows to provision Quality of Service option that has been defined in mgt_set_qos() in the Management interface.

It returns the status, that is either:

  • MGT_SUCCESS: The option has been provisionned and configured
  • MGT_OPERATION_NOT_SUPPORTED_ERR: The option is not supported
  • MGT_ERROR: An error occured

The fragmentation rule can be downloaded from the SCHC Template on Acklio IPCore as a CBOR package.

The CBOR package contains two files corresponding to the Quality of Service option if it has been defined in the fragmentation rule.

See Configure the SCHC Template for detailed information on the CBOR Package and the QoS files.

The mgt_provision_qos() function overwrites the QoS classes with CBOR.