coreMQTT Agent v1.3.1+
Thread safe MQTT 3.1.1 Client
 
Loading...
Searching...
No Matches
Configurations

Configurations of the MQTT Agent.

configpagestyle

Configuration settings are C preprocessor constants. They can be set with a #define in the config file (core_mqtt_config.h) or by using a compiler option such as -D in gcc. The MQTT Agent uses the same configuration file as coreMQTT.

MQTT_AGENT_MAX_OUTSTANDING_ACKS

The maximum number of pending acknowledgments to track for a single connection.

Note
The MQTT agent tracks MQTT commands (such as PUBLISH and SUBSCRIBE) th at are still waiting to be acknowledged. MQTT_AGENT_MAX_OUTSTANDING_ACKS set the maximum number of acknowledgments that can be outstanding at any one time. The higher this number is the greater the agent's RAM consumption will be.

Possible values: Any positive integer up to SIZE_MAX.
Default value: 20

MQTT_AGENT_MAX_EVENT_QUEUE_WAIT_TIME

Time in milliseconds that the MQTT agent task will wait in the Blocked state (so not using any CPU time) for a command to arrive in its command queue before exiting the blocked state so it can call MQTT_ProcessLoop().

Note
It is important MQTT_ProcessLoop() is called often if there is known MQTT traffic, but calling it too often can take processing time away from lower priority tasks and waste CPU time and power.

Possible values: Any positive 32 bit integer.
Default value: 1000

MQTT_AGENT_FUNCTION_TABLE

An array of function pointers mapping command types to a function to execute. Configurable to allow a linker to remove unneeded functions.

Note
This array controls the behavior of each command. Altering the array would allow a linker to discard unused MQTT functions if desired. The size of this array MUST equal NUM_COMMANDS and the order MUST correspond to MQTTAgentCommandType_t commands if not using C99 designated initializers. If any function is desired not to be linked, it may be set to MQTTAgentCommand_ProcessLoop or a custom function matching an MQTTAgentCommandFunc_t prototype.

Default value:

{
}
MQTTStatus_t MQTTAgentCommand_Publish(MQTTAgentContext_t *pMqttAgentContext, void *pPublishArg, MQTTAgentCommandFuncReturns_t *pReturnFlags)
Function to execute for a PUBLISH command.
Definition: core_mqtt_agent_command_functions.c:60
MQTTStatus_t MQTTAgentCommand_Ping(MQTTAgentContext_t *pMqttAgentContext, void *pUnusedArg, MQTTAgentCommandFuncReturns_t *pReturnFlags)
Function to execute for a PING command.
Definition: core_mqtt_agent_command_functions.c:202
MQTTStatus_t MQTTAgentCommand_Terminate(MQTTAgentContext_t *pMqttAgentContext, void *pUnusedArg, MQTTAgentCommandFuncReturns_t *pReturnFlags)
Function to execute for a TERMINATE command. Calls MQTTAgent_CancelAll to terminate all unfinished co...
Definition: core_mqtt_agent_command_functions.c:224
MQTTStatus_t MQTTAgentCommand_Disconnect(MQTTAgentContext_t *pMqttAgentContext, void *pUnusedArg, MQTTAgentCommandFuncReturns_t *pReturnFlags)
Function to execute for a DISCONNECT command.
Definition: core_mqtt_agent_command_functions.c:181
MQTTStatus_t MQTTAgentCommand_Connect(MQTTAgentContext_t *pMqttAgentContext, void *pVoidConnectArgs, MQTTAgentCommandFuncReturns_t *pReturnFlags)
Function to execute for a CONNECT command.
Definition: core_mqtt_agent_command_functions.c:147
MQTTStatus_t MQTTAgentCommand_Subscribe(MQTTAgentContext_t *pMqttAgentContext, void *pVoidSubscribeArgs, MQTTAgentCommandFuncReturns_t *pReturnFlags)
Function to execute for a SUBSCRIBE command.
Definition: core_mqtt_agent_command_functions.c:91
MQTTStatus_t MQTTAgentCommand_ProcessLoop(MQTTAgentContext_t *pMqttAgentContext, void *pUnusedArg, MQTTAgentCommandFuncReturns_t *pReturnFlags)
Function to execute for a NONE command. This function does not call MQTT_ProcessLoop itself,...
Definition: core_mqtt_agent_command_functions.c:44
MQTTStatus_t MQTTAgentCommand_Unsubscribe(MQTTAgentContext_t *pMqttAgentContext, void *pVoidSubscribeArgs, MQTTAgentCommandFuncReturns_t *pReturnFlags)
Function to execute for an UNSUBSCRIBE command.
Definition: core_mqtt_agent_command_functions.c:119
@ CONNECT
Call MQTT_Connect().
Definition: core_mqtt_agent.h:57
@ DISCONNECT
Call MQTT_Disconnect().
Definition: core_mqtt_agent.h:58
@ PING
Call MQTT_Ping().
Definition: core_mqtt_agent.h:56
@ UNSUBSCRIBE
Call MQTT_Unsubscribe().
Definition: core_mqtt_agent.h:55
@ PROCESSLOOP
Call MQTT_ProcessLoop().
Definition: core_mqtt_agent.h:52
@ TERMINATE
Exit the command loop and stop processing commands.
Definition: core_mqtt_agent.h:59
@ SUBSCRIBE
Call MQTT_Subscribe().
Definition: core_mqtt_agent.h:54
@ PUBLISH
Call MQTT_Publish().
Definition: core_mqtt_agent.h:53
@ NONE
No command received. Must be zero (its memset() value).
Definition: core_mqtt_agent.h:51