EPTF_MQTT_LGen_Functions

Purpose

This module contains the functions of the MQTT load generator component

See also

EPTF_MQTT_LGen_Definitions

Summary
EPTF_MQTT_LGen_FunctionsThis module contains the functions of the MQTT load generator component
f_EPTF_MQTT_LGen_initThe main initialization function for the EPTF_MQTT_LGen_CT component type
f_EPTF_MQTT_LGen_initLoggingInitializing CLL’s logging feature on the EPTF_MQTT_LGen_CT component type
f_MQTT_cleanUpThe main clean up function for the EPTF_MQTT_LGen_CT component type
f_MQTT_eCtxBindThis function is called by the CLL for each entity instance created on a particular instace of EPTF_MQTT_LGen_CT
f_MQTT_eCtxUnbindThe reverse operation of f_MQTT_eCtxBind.
f_MQTT_eCtxResetThe resources reserved during f_MQTT_eCtxBind are reinitalized (reset).
f_EPTF_MQTT_declareEventsDeclares the FSM events to the CLL framework implemented by EPTF_MQTT_LGen_CT
f_EPTF_MQTT_declareStepsDeclares the FSM steps to the CLL framework implemented by EPTF_MQTT_LGen_CT
f_EPTF_MQTT_LGen_receiveMessageThe transport layer implementation EPTF_MQTT_Transport_Provider_CT can report received EPTF_MQTT_PDU message to the load generator layer EPTF_MQTT_Transport_User_CT extended by EPTF_MQTT_LGen_CT using this function.
f_EPTF_MQTT_LGen_receiveEventThe transport layer implementation EPTF_MQTT_Transport_Provider_CT can report received <ASP_Event> events to the load generator layer EPTF_MQTT_Transport_User_CT extended by EPTF_MQTT_LGen_CT using this function.
f_EPTF_MQTT_LGen_transportApiResponseThe transport layer implementation EPTF_MQTT_Transport_Provider_CT can report received EPTF_MQTT_Transport_Response responses to the load generator layer EPTF_MQTT_Transport_User_CT extended by EPTF_MQTT_LGen_CT using this function.
f_EPTF_MQTT_LGen_sendThis function is used to send out a message of a EPTF_MQTT_PDU using the registered function fcb_EPTF_MQTT_Transport_sendMessage of the underlying transport layer instance.
f_MQTT_step_initTest Step to dynamically allocate and initialize the MQTT FSM context for the caller FSM.
f_MQTT_step_cleanUpTest Step to free up the MQTT FSM context for the caller FSM.
f_MQTT_step_setLocalAddressTest step to set the local address in the entity context.
f_MQTT_step_setLocalAddress_byVarsTest step to set the local address in the entity context.
f_MQTT_step_setRemoteAddressTest step to set the remote address in the FSM context.
f_MQTT_step_setRemoteAddress_byVarsTest step to set the remote address in the FSM context.
f_MQTT_step_startListeningThe test step expects that a transport endpoint is set in the addressDB as a local address.
f_MQTT_step_transportConnectThe test step expects that local and remote socket adresses are set in the addressDB.
f_MQTT_step_transportCloseThe test step expects that a transport endpoint is set in the addressDB as a local address.
f_MQTT_step_loadTemplate_byIntIdxTest step to load a MQTT_Template from tsp_EPTF_MQTT_LGen_templates into v_MQTT_msgToSend (which can be sent using the send test step) by its integer index in test step args.
f_MQTT_step_loadTemplate_byStringIdTest step to load a MQTT_Template from tsp_EPTF_MQTT_LGen_templates into v_MQTT_msgToSend (which can be sent using the send test step) by its string Id.
f_MQTT_step_setTopic_stringParamTest step to set the string value referred by the test step argument as the topic of the first subscription entry in SUBSCRIBE and PUBLISH messages.
f_MQTT_step_setTopic_add_stringParamTest step to add the string value referred by the test step argument to the topic of the first subscription entry in SUBSCRIBE and PUBLISH messages.
f_MQTT_step_setTopic_add_varParamsTest step to add the string value of variables referred by the test step argument to the topic of the first subscription entry in SUBSCRIBE and PUBLISH messages.
f_MQTT_step_setTopic_add_clientIdTest step to add client ID in the current session to the topic in the first subscription in SUBSCRIBE and to PUBLISH message.
f_MQTT_step_setQos_intParamTest step to set the QoS level in SUBSCRIBE and PUBLISH messages using test step arguments
f_MQTT_step_setPublishMessage_stringParamTest step to set the content of the payload in PUBLISH message.
f_MQTT_step_setPublishMessage_add_stringParamTest step to concatenate a string to the content of the PUBLISH message
f_MQTT_step_setPublishMessage_add_varParamsTest step to add the content of a set of variables to the payload of a PUBLISH message.
f_MQTT_step_setPublishMessage_add_clientIdTest step to add client ID of the current session to the payload of a PUBLISH message.
f_MQTT_step_reportPingResponseTest step to set the report ping response to enable/disable using using step arguments.
f_MQTT_step_reportPublishResponseTest step to set the report publish response to enable/disable using step arguments
f_MQTT_step_sendTest step to send out an MQTT message from v_MQTT_msgToSend.
f_EPTF_MQTT_addressDB_initFunction to initialize the addressDB
f_EPTF_MQTT_addressDB_cleanUpFunction to clean up the address database and release its resources
f_EPTF_MQTT_addressDB_addAdd a socket address to the addressDB and return its index if no such entry yet, or return its index if already exists
f_EPTF_MQTT_addressDB_getGet a socket address from the addressDB by its index
f_EPTF_MQTT_addressDB_lookUpGet the index of a socket entry in addressDB
f_EPTF_MQTT_addressDB_Socket2StringConverts a socket address in <Socket> type format to the string format “<IP address>:<port number>” to be used as hash key
f_EPTF_MQTT_templateDB_initInitializes the v_MQTT_templateDB MQTT_Template_DB database by adding the templates given in tsp_EPTF_MQTT_LGen_templates
f_EPTF_MQTT_templateDB_addAdds a new element to the v_MQTT_templateDB MQTT_Template_DB database
f_EPTF_MQTT_templateDB_lookUpGets the index of an MQTT_Template element in v_MQTT_templateDB MQTT_Template_DB database
f_EPTF_MQTT_templateDB_getRetrieves an element from the v_MQTT_templateDB MQTT_Template_DB database
f_EPTF_MQTT_templateDB_cleanUpCleans up the reserved resources of the v_MQTT_templateDB MQTT_Template_DB database
f_EPTF_MQTT_sessionDB_initInitializes the v_MQTT_sessionDB MQTT_Session_DB database and adds its hash to v_MQTT_sessionDB.hashRef
f_EPTF_MQTT_sessionDB_cleanUpCleans up the reserved resources of the v_MQTT_sessionDB MQTT_Session_DB database
f_EPTF_MQTT_sessionDB_addAdds a new element to the v_MQTT_sessionDB MQTT_Session_DB database
f_EPTF_MQTT_sessionDB_setKeySets the hash of the local socket address of a session by the session index
f_EPTF_MQTT_sessionDB_lookUpGets the index of a session in v_MQTT_sessionDB MQTT_Session_DB database by its socket address
f_EPTF_MQTT_sessionDB_getRetrieves a session’s data from the v_MQTT_sessionDB MQTT_Session_DB database
f_EPTF_MQTT_sessionDB_checkChecks if a session element exists in the v_MQTT_sessionDB MQTT_Session_DB database
f_EPTF_MQTT_sessionDB_removeRemoves an element from the v_MQTT_sessionDB MQTT_Session_DB database and releases its resources
f_EPTF_MQTT_sessionDB_addrHashConverts a socket address in <Socket> type format to the string format “<IP address>:<port number>” to be used as a hash key
f_EPTF_MQTT_publishDB_initInitializes the v_MQTT_publishDB MQTT_Publish_DB database and creates its hashmap
f_EPTF_MQTT_publishDB_cleanUpCleans up the reserved resources of the v_MQTT_publishDB MQTT_Publish_DB database
f_EPTF_MQTT_publishDB_addAdds a new element to the v_MQTT_publishDB MQTT_Publish_DB database
f_EPTF_MQTT_publishDB_lookUpGets the index of an MQTT_Publish element in v_MQTT_publishDB MQTT_Publish_DB database by its session and packet id-s
f_EPTF_MQTT_publishDB_getRetrieves an element from the v_MQTT_publishDB MQTT_Publish_DB database
f_EPTF_MQTT_publishDB_checkChecks if an element exists in the v_MQTT_publishDB MQTT_Publish_DB database
f_EPTF_MQTT_publishDB_removeRemoves an element from the v_MQTT_publishDB MQTT_Publish_DB database
f_EPTF_MQTT_publishDB_packetIdHashConverts a pair of session ID & packet ID to the string format “session_<sessionId>:id_<packetId>” to be used as a hash key
f_EPTF_MQTT_subscriptionDB_initInitializes the v_MQTT_subscriptionDB MQTT_Subscription_DB database
f_EPTF_MQTT_subscriptionDB_cleanUpCleans up the reserved resources of the v_MQTT_subscriptionDB MQTT_Subscription_DB database
f_EPTF_MQTT_subscriptionDB_addAdds a new element to the v_MQTT_subscriptionDB MQTT_Subscription_DB database
f_EPTF_MQTT_subscriptionDB_setKey_packetIdInsert an integer element to the subscription hashmap, key is composed from session ID and packet ID
f_EPTF_MQTT_subscriptionDB_removeKey_packetIdRemoves the element from the subscription hashmap identified by its session ID and packet ID
f_EPTF_MQTT_subscriptionDB_lookUp_packetIdGets the index of an MQTT_Subscription element in v_MQTT_subscriptionDB MQTT_Subscription_DB database by a session ID and packet ID
f_EPTF_MQTT_subscriptionDB_lookUp_topicNameGets the index of an MQTT_Subscription element in v_MQTT_subscriptionDB MQTT_Subscription_DB database by a session ID and packet ID
f_EPTF_MQTT_subscriptionDB_getRetrieves an element from the v_MQTT_subscriptionDB MQTT_Subscription_DB database
f_EPTF_MQTT_subscriptionDB_checkChecks if an element at an index exists the v_MQTT_subscriptionDB MQTT_Subscription_DB database
f_EPTF_MQTT_subscriptionDB_removeRemoves an element from the v_MQTT_subscriptionDB MQTT_Subscription_DB database
f_EPTF_MQTT_subscriptionDB_packetIdHashConverts a pair of session ID & packet ID to the string format “session_<sessionId>:id_<packetId>” to be used as hash key
f_EPTF_MQTT_subscriptionDB_topicHashConverts a pair of session ID & topic to the string format “session_<sessionId>:topic_<topic>” to be used as hash key
f_EPTF_MQTT_stack_fromAppThis is the main entry point for the MQTT stack realization of the EPTF_MQTT_LGen_CT component that handles messages received from the application layer (e.g.
f_EPTF_MQTT_stack_fromEnvThis is the main entry point for the MQTT stack realization of the EPTF_MQTT_LGen_CT component that handles messages received from the environment layer (e.g.
f_EPTF_MQTT_session_fromAppThis is the entry point for an MQTT session fsm handling events coming from the application layer (e.g.
f_EPTF_MQTT_session_fromEnvThis is the entry point for an MQTT session fsm from the environment layer (e.g.
f_EPTF_MQTT_session_keepaliveHandles the T_keepalive timer event in the MQTT_Session FSM
f_EPTF_MQTT_session_startT_keepaliveStarts the T_keepalive timer for an MQTT_Session FSM
f_EPTF_MQTT_session_cancelT_keepaliveCancels the T_keepalive timer of an MQTT_Session FSM
f_EPTF_MQTT_session_getNextPacketIdSets the value of the packet id field in the next message to be sent in a session
f_EPTF_MQTT_session_setStateSets a new state for an MQTT_Session FSM
f_EPTF_MQTT_session_sendSends a message to the transort layer with type EPTF_MQTT_PDU and the provided session index
f_EPTF_MQTT_session_registerSubscriptionAdds a subscription index to an MQTT_Session
f_EPTF_MQTT_session_deregisterSubscriptionRemoves a subscription index from MQTT_Session
f_EPTF_MQTT_session_registerPublishAdds a publish index to an MQTT_Session
f_EPTF_MQTT_session_deregisterPublishRemoves a publish index from an MQTT_Session
f_EPTF_MQTT_session_removeReleases all resources related to an MQTT_Session and removes it from the MQTT_Session_DB
f_EPTF_MQTT_subscription_fromSessionImplements part of the MQTT_Subscription FSM that handles the events coming from the MQTT_Session
f_EPTF_MQTT_subscription_fromEnvImplements part of the MQTT_Subscription FSM that handles the events coming from the environment
f_EPTF_MQTT_subscription_watchdogHandles the T_watchdog event in the <MQTT_Subscribe> FSM
f_EPTF_MQTT_subscription_startT_watchdogStart a T_watchdog timer in the MQTT_Subscription FSM
f_EPTF_MQTT_subscription_cancelT_watchdogCancels the T_watchdog timer of an MQTT_Subscription FSM
f_EPTF_MQTT_subscription_setStateSets a new state of a MQTT_Subscription FSM
f_EPTF_MQTT_subscription_removeRemoving resources related to MQTT_Subscription FSM
f_EPTF_MQTT_publish_fromSessionHandles a publish transaction in case of QoS 1 and QoS 2 fsm requested by the application layer (e.g.
f_EPTF_MQTT_publish_fromEnvHandles PUBLISH and publish response (PUB REC/PUB REL/PUB COMP) messages received from the peer (i.e.
f_EPTF_MQTT_publish_watchdogHandles the T_watchdog event in the MQTT_Publish FSM
f_EPTF_MQTT_publish_startT_watchdogStart a T_watchdog timer in the MQTT_Publish FSM
f_EPTF_MQTT_publish_cancelT_watchdogCancels the T_watchdog timer of an MQTT_Publish FSM
f_EPTF_MQTT_publish_setStateSets the new state of a MQTT_Publish FSM
f_EPTF_MQTT_publish_removeReleaseing resources of an MQTT_Publish FSM
f_EPTF_MQTT_setStepCtxSets the entity and FSM indexes in the MQTT step context
f_EPTF_MQTT_setCtxSets the instance pointers of MQTT_StepCtx to the related instances of a simulated device (entity) and FSM
f_EPTF_MQTT_isFsmInitializedChecks if an FSM instance has already been initialized
f_EPTF_MQTT_getIntValueRetreives an element of an <EPTF_IntegerList> if it exists
f_EPTF_MQTT_Logging_VERBOSELogging functions for the VERBOSE log level
f_EPTF_MQTT_Logging_DEBUGLogging functions for the DEBUG log level
f_EPTF_MQTT_Logging_WARNINGLogging functions for the WARNING log level
f_EPTF_MQTT_Logging_ERRORLogging functions for the ERROR log level
f_EPTF_MQTT_dispatchEventDispatches events to an entity/fsm
f_EPTF_MQTT_qos_int2enumConverts the integer value of QoS to its enumerated value
f_EPTF_MQTT_publishResponseTypeChecks if an MQTT message is a response to a PUBLISH
f_EPTF_MQTT_publishResponsePacketIdGet the packet identifier of an MQTT message, if it is a response to a PUBLISH

f_EPTF_MQTT_LGen_init

function f_EPTF_MQTT_LGen_init(in charstring pl_name) runs on EPTF_MQTT_LGen_CT

Purpose

The main initialization function for the EPTF_MQTT_LGen_CT component type

Parameters

pl_namein charstring - the name for the component instance

Related Type

EPTF_MQTT_LGen_CT

f_EPTF_MQTT_LGen_initLogging

function f_EPTF_MQTT_LGen_initLogging() runs on EPTF_MQTT_LGen_CT

Purpose

Initializing CLL’s logging feature on the EPTF_MQTT_LGen_CT component type

Related Type

EPTF_MQTT_LGen_CT

f_MQTT_cleanUp

function f_MQTT_cleanUp() runs on EPTF_MQTT_LGen_CT

Purpose

The main clean up function for the EPTF_MQTT_LGen_CT component type

Related Type

EPTF_MQTT_LGen_CT

f_MQTT_eCtxBind

function f_MQTT_eCtxBind(
   in integer pl_eIdx
) runs on EPTF_MQTT_LGen_CT return EPTF_IntegerList

Purpose

This function is called by the CLL for each entity instance created on a particular instace of EPTF_MQTT_LGen_CT

Parameters

pl_eIdxin integer - the index of the entity instance on this load generator component instance

Returns

<EPTF_IntegerList>The list will contain the index of the entity the context belongs to

Related Type

EPTF_MQTT_LGen_CT

f_MQTT_eCtxUnbind

function f_MQTT_eCtxUnbind(in integer pl_eIdx) runs on EPTF_MQTT_LGen_CT

Purpose

The reverse operation of f_MQTT_eCtxBind.  Cleans up resources reserved during f_MQTT_eCtxBind.  Called by the CLL.

Parameters

pl_eIdxin integer - the index of the entity instance on this load generator component instance

Related Type

EPTF_MQTT_LGen_CT

f_MQTT_eCtxReset

function f_MQTT_eCtxReset(in integer pl_eIdx) runs on EPTF_MQTT_LGen_CT

Purpose

The resources reserved during f_MQTT_eCtxBind are reinitalized (reset).  Called by the CLL.

Parameters

pl_eIdxin integer - the index of the entity instance on this load generator component instance

Related Type

EPTF_MQTT_LGen_CT

f_EPTF_MQTT_declareEvents

function f_EPTF_MQTT_declareEvents() runs on EPTF_MQTT_LGen_CT

Purpose

Declares the FSM events to the CLL framework implemented by EPTF_MQTT_LGen_CT

Related Types

EPTF_MQTT_LGen_CT

f_EPTF_MQTT_declareSteps

function f_EPTF_MQTT_declareSteps() runs on EPTF_MQTT_LGen_CT

Purpose

Declares the FSM steps to the CLL framework implemented by EPTF_MQTT_LGen_CT

Related Types

EPTF_MQTT_LGen_CT

f_EPTF_MQTT_LGen_receiveMessage

function f_EPTF_MQTT_LGen_receiveMessage(
   in EPTF_MQTT_PDU pl_message
) runs on EPTF_MQTT_LGen_CT

Purpose

The transport layer implementation EPTF_MQTT_Transport_Provider_CT can report received EPTF_MQTT_PDU message to the load generator layer EPTF_MQTT_Transport_User_CT extended by EPTF_MQTT_LGen_CT using this function.

Parameters

pl_messagein EPTF_MQTT_PDU - received message

Related Types

f_EPTF_MQTT_LGen_receiveEvent

function f_EPTF_MQTT_LGen_receiveEvent(
   in ASP_Event p_event
) runs on EPTF_MQTT_LGen_CT

Purpose

The transport layer implementation EPTF_MQTT_Transport_Provider_CT can report received <ASP_Event> events to the load generator layer EPTF_MQTT_Transport_User_CT extended by EPTF_MQTT_LGen_CT using this function.

Parameters

pl_messagein <ASP_Event> - received event

Related Types

f_EPTF_MQTT_LGen_transportApiResponse

function f_EPTF_MQTT_LGen_transportApiResponse(
   in EPTF_MQTT_Transport_Response pl_rsp
) runs on EPTF_MQTT_LGen_CT

Purpose

The transport layer implementation EPTF_MQTT_Transport_Provider_CT can report received EPTF_MQTT_Transport_Response responses to the load generator layer EPTF_MQTT_Transport_User_CT extended by EPTF_MQTT_LGen_CT using this function.

Parameters

pl_rspin EPTF_MQTT_Transport_Response - received transport api response

Related Types

f_EPTF_MQTT_LGen_send

function f_EPTF_MQTT_LGen_send(
   inout EPTF_MQTT_PDU p_msg
) runs on EPTF_MQTT_LGen_CT

Purpose

This function is used to send out a message of a EPTF_MQTT_PDU using the registered function fcb_EPTF_MQTT_Transport_sendMessage of the underlying transport layer instance.

Parameters

p_msgintout EPTF_MQTT_PDU - the message to be sent

Related Types

EPTF_MQTT_PDU

f_MQTT_step_init

function f_MQTT_step_init(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

Test Step to dynamically allocate and initialize the MQTT FSM context for the caller FSM.  Prerequisite to call any other MQTT test step.

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args

Related Constants

f_MQTT_step_cleanUp

function f_MQTT_step_cleanUp(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

Test Step to free up the MQTT FSM context for the caller FSM.  Frees up all allocated instances that were used by this FSM instance.

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args

Related Constants

f_MQTT_step_setLocalAddress

function f_MQTT_step_setLocalAddress(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

Test step to set the local address in the entity context.

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args
pl_ptr.refContext.fRefArgs[0]integer - Index of the socket to use as local address

Related Constants

f_MQTT_step_setLocalAddress_byVars

function f_MQTT_step_setLocalAddress_byVars(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

Test step to set the local address in the entity context.

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args (1st param: remoteHost: charstring, 2nd param: remotePort: integer)

Related Constants

f_MQTT_step_setRemoteAddress

function f_MQTT_step_setRemoteAddress(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

Test step to set the remote address in the FSM context.

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args
pl_ptr.refContext.fRefArgs[0]integer - Index of the socket to use as local address

Related Constants

f_MQTT_step_setRemoteAddress_byVars

function f_MQTT_step_setRemoteAddress_byVars(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

Test step to set the remote address in the FSM context.

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args (1st param: remoteHost: charstring, 2nd param: remotePort: integer)

Related Constants

f_MQTT_step_startListening

function f_MQTT_step_startListening(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

The test step expects that a transport endpoint is set in the addressDB as a local address.  The step will initiate allocating the local address associated with the current session in the MQTT context and call the callback function to start listening.

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args

Related Constants

Related Steps

Related Callback Function Type

fcb_EPTF_MQTT_Transport_apiRequest

f_MQTT_step_transportConnect

function f_MQTT_step_transportConnect(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

The test step expects that local and remote socket adresses are set in the addressDB.  The step will initiate allocating the local and remote addresses associated with the current session in the MQTT context and call the callback function to establish a connection.

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args

Related Constants

Related Events

Related Steps

Related Callback Function Type

fcb_EPTF_MQTT_Transport_apiRequest

f_MQTT_step_transportClose

function f_MQTT_step_transportClose(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

The test step expects that a transport endpoint is set in the addressDB as a local address.  The step will call the callback function to close the connection by the local address associated with the current session in the MQTT context.

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args (1st param int: expectResponse (optional))

Related Constants

Related Steps

Related Callback Function Type

fcb_EPTF_MQTT_Transport_apiRequest

f_MQTT_step_loadTemplate_byIntIdx

function f_MQTT_step_loadTemplate_byIntIdx(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

Test step to load a MQTT_Template from tsp_EPTF_MQTT_LGen_templates into v_MQTT_msgToSend (which can be sent using the send test step) by its integer index in test step args.

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args

Related Constants

Related Function

f_MQTT_step_send

f_MQTT_step_loadTemplate_byStringId

function f_MQTT_step_loadTemplate_byStringId(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

Test step to load a MQTT_Template from tsp_EPTF_MQTT_LGen_templates into v_MQTT_msgToSend (which can be sent using the send test step) by its string Id.

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args

Related Constants

Related Function

f_MQTT_step_send

f_MQTT_step_setTopic_stringParam

function f_MQTT_step_setTopic_stringParam(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

Test step to set the string value referred by the test step argument as the topic of the first subscription entry in SUBSCRIBE and PUBLISH messages.

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args(1st param: topic name charstring)

Related Constants

f_MQTT_step_setTopic_add_stringParam

function f_MQTT_step_setTopic_add_stringParam(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

Test step to add the string value referred by the test step argument to the topic of the first subscription entry in SUBSCRIBE and PUBLISH messages.

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args(1st param: topic name charstring)

Related Constants

Related Type

EPTF_MQTT_LGen_CT

f_MQTT_step_setTopic_add_varParams

function f_MQTT_step_setTopic_add_varParams(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

Test step to add the string value of variables referred by the test step argument to the topic of the first subscription entry in SUBSCRIBE and PUBLISH messages.

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args(params: variables)

Related Constants

Related Type

EPTF_MQTT_LGen_CT

f_MQTT_step_setTopic_add_clientId

function f_MQTT_step_setTopic_add_clientId(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

Test step to add client ID in the current session to the topic in the first subscription in SUBSCRIBE and to PUBLISH message.

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args(param: clientId)

Related Constants

Related Type

EPTF_MQTT_LGen_CT

f_MQTT_step_setQos_intParam

function f_MQTT_step_setQos_intParam(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

Test step to set the QoS level in SUBSCRIBE and PUBLISH messages using test step arguments

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args(1st param: qos level (0,1,2) integer)

Related Constants

Related Type

EPTF_MQTT_LGen_CT

f_MQTT_step_setPublishMessage_stringParam

function f_MQTT_step_setPublishMessage_stringParam(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

Test step to set the content of the payload in PUBLISH message.

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args(1st param: publish message charstring)

Related Constants

Related Type

EPTF_MQTT_LGen_CT

f_MQTT_step_setPublishMessage_add_stringParam

function f_MQTT_step_setPublishMessage_add_stringParam(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

Test step to concatenate a string to the content of the PUBLISH message

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args(1st param: publish message charstring)

Related Constants

Related Type

EPTF_MQTT_LGen_CT

f_MQTT_step_setPublishMessage_add_varParams

function f_MQTT_step_setPublishMessage_add_varParams(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

Test step to add the content of a set of variables to the payload of a PUBLISH message.

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args(params: variables)

Related Constants

Related Type

EPTF_MQTT_LGen_CT

f_MQTT_step_setPublishMessage_add_clientId

function f_MQTT_step_setPublishMessage_add_clientId(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

Test step to add client ID of the current session to the payload of a PUBLISH message.

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args(param: clientId)

Related Constants

Related Type

EPTF_MQTT_LGen_CT

f_MQTT_step_reportPingResponse

function f_MQTT_step_reportPingResponse(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

Test step to set the report ping response to enable/disable using using step arguments.

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args - 1:enable, 0:disable

Related Constants

Related Type

EPTF_MQTT_LGen_CT

f_MQTT_step_reportPublishResponse

function f_MQTT_step_reportPublishResponse(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

Test step to set the report publish response to enable/disable using step arguments

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args(1st param: enable (1)/disable (0): integer)

Related Constants

Related Type

EPTF_MQTT_LGen_CT

f_MQTT_step_send

function f_MQTT_step_send(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT

Purpose

Test step to send out an MQTT message from v_MQTT_msgToSend.  The message will be processed by the Applib’s MQTT stack The step expects the localAddress and the remoteAddress to be configured in addressDB.

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args

Related Constants

Related Functions

Related functions

f_EPTF_MQTT_stack_fromApp

f_EPTF_MQTT_addressDB_init

function f_EPTF_MQTT_addressDB_init() runs on EPTF_MQTT_LGen_CT

Purpose

Function to initialize the addressDB

Parameters

Related Type

MQTT_Address_DB

f_EPTF_MQTT_addressDB_cleanUp

function f_EPTF_MQTT_addressDB_cleanUp() runs on EPTF_MQTT_LGen_CT

Purpose

Function to clean up the address database and release its resources

Parameters

Related Type

MQTT_Address_DB

f_EPTF_MQTT_addressDB_add

function f_EPTF_MQTT_addressDB_add(
   in Socket p_addr,
   inout integer p_idx
) runs on EPTF_MQTT_LGen_CT

Purpose

Add a socket address to the addressDB and return its index if no such entry yet, or return its index if already exists

Parameters

p_addrin <Socket> - socket address
p_idxinout integer - index of the address entry

Related Type

MQTT_Address_DB

f_EPTF_MQTT_addressDB_get

function f_EPTF_MQTT_addressDB_get(
   inout Socket p_addr,
   in integer p_idx
) runs on EPTF_MQTT_LGen_CT

Purpose

Get a socket address from the addressDB by its index

Parameters

p_addrinout <Socket> - returned socket address
p_idxin integer - index of the address to get

Related Type

MQTT_Address_DB

f_EPTF_MQTT_addressDB_lookUp

function f_EPTF_MQTT_addressDB_lookUp(
   in Socket p_sock
) runs on EPTF_MQTT_LGen_CT return integer

Purpose

Get the index of a socket entry in addressDB

Parameters

p_sockin <Socket> - socket address

Return Type

*integer*The index of the socket entry

Related Type

MQTT_Address_DB

f_EPTF_MQTT_addressDB_Socket2String

function f_EPTF_MQTT_addressDB_Socket2String(Socket p_sock) return charstring

Purpose

Converts a socket address in <Socket> type format to the string format “<IP address>:<port number>” to be used as hash key

Parameters

p_sockinout <Socket> - socket address

Return Type

*charstring*Socket address in string format

Related Type

MQTT_Address_DB

f_EPTF_MQTT_templateDB_init

function f_EPTF_MQTT_templateDB_init() runs on EPTF_MQTT_LGen_CT

Purpose

Initializes the v_MQTT_templateDB MQTT_Template_DB database by adding the templates given in tsp_EPTF_MQTT_LGen_templates

Related Type

MQTT_Template_DB

f_EPTF_MQTT_templateDB_add

function f_EPTF_MQTT_templateDB_add(
   in MQTT_Template p_template
) runs on EPTF_MQTT_LGen_CT return integer

Purpose

Adds a new element to the v_MQTT_templateDB MQTT_Template_DB database

Parameters

p_templatein MQTT_Template - the element to be added

Returns

*integer*the index of the added element in the database

Related Type

MQTT_Template_DB

f_EPTF_MQTT_templateDB_lookUp

function f_EPTF_MQTT_templateDB_lookUp(
   in charstring p_id
) runs on EPTF_MQTT_LGen_CT return integer

Purpose

Gets the index of an MQTT_Template element in v_MQTT_templateDB MQTT_Template_DB database

Parameters

p_idin charstring - the id of the MQTT_Template

Returns

*integer*the index of the searched template in the database, or -1 if not found

Related Type

MQTT_Template_DB

f_EPTF_MQTT_templateDB_get

function f_EPTF_MQTT_templateDB_get(
   in integer p_idx,
   inout MQTT_v3_1_1_ReqResp p_pdu
) runs on EPTF_MQTT_LGen_CT

Purpose

Retrieves an element from the v_MQTT_templateDB MQTT_Template_DB database

Parameters

p_idxin integer - the index of the element to be retrieved
p_pduinout <MQTT_v3_1_1_ReqResp> - the retrieved element

Related Type

MQTT_Template_DB

f_EPTF_MQTT_templateDB_cleanUp

function f_EPTF_MQTT_templateDB_cleanUp() runs on EPTF_MQTT_LGen_CT

Purpose

Cleans up the reserved resources of the v_MQTT_templateDB MQTT_Template_DB database

Related Type

MQTT_Template_DB

f_EPTF_MQTT_sessionDB_init

function f_EPTF_MQTT_sessionDB_init() runs on EPTF_MQTT_LGen_CT

Purpose

Initializes the v_MQTT_sessionDB MQTT_Session_DB database and adds its hash to v_MQTT_sessionDB.hashRef

Related Type

MQTT_Session_DB

f_EPTF_MQTT_sessionDB_cleanUp

function f_EPTF_MQTT_sessionDB_cleanUp() runs on EPTF_MQTT_LGen_CT

Purpose

Cleans up the reserved resources of the v_MQTT_sessionDB MQTT_Session_DB database

Related Type

MQTT_Session_DB

f_EPTF_MQTT_sessionDB_add

function f_EPTF_MQTT_sessionDB_add(
   in MQTT_Session p_session
) runs on EPTF_MQTT_LGen_CT return integer

Purpose

Adds a new element to the v_MQTT_sessionDB MQTT_Session_DB database

Parameters

p_sessionin MQTT_Session - the element to be added

Returns

*integer*the index of the added element in the database

Related Type

MQTT_Session_DB

f_EPTF_MQTT_sessionDB_setKey

function f_EPTF_MQTT_sessionDB_setKey(
   in integer p_idx
) runs on EPTF_MQTT_LGen_CT

Purpose

Sets the hash of the local socket address of a session by the session index

Parameters

p_idxin integer - the session index

Related Type

MQTT_Session_DB

f_EPTF_MQTT_sessionDB_lookUp

function f_EPTF_MQTT_sessionDB_lookUp(
   in Socket p_sock
) runs on EPTF_MQTT_LGen_CT return integer

Purpose

Gets the index of a session in v_MQTT_sessionDB MQTT_Session_DB database by its socket address

Parameters

p_sockin <Socket> - the socket address to look up

Returns

*integer*the index of the added element in the database, or -1 if not found

Related Type

MQTT_Session_DB

f_EPTF_MQTT_sessionDB_get

function f_EPTF_MQTT_sessionDB_get(
   in integer p_idx,
   inout MQTT_Session p_session
) runs on EPTF_MQTT_LGen_CT return boolean

Purpose

Retrieves a session’s data from the v_MQTT_sessionDB MQTT_Session_DB database

Parameters

p_idxin integer - the index of the element to be retrieved
p_sessioninout MQTT_Session - the retrieved session context

Returns

*boolean*true if OK, false if no session element with this index

Related Type

MQTT_Session_DB

f_EPTF_MQTT_sessionDB_check

function f_EPTF_MQTT_sessionDB_check(
   in integer p_idx
) runs on EPTF_MQTT_LGen_CT return boolean

Purpose

Checks if a session element exists in the v_MQTT_sessionDB MQTT_Session_DB database

Parameters

p_idxin integer - the index of the element to be checked

Returns

booleantrue if the session exists

Related Type

MQTT_Session_DB

f_EPTF_MQTT_sessionDB_remove

function f_EPTF_MQTT_sessionDB_remove(
   in integer p_idx
) runs on EPTF_MQTT_LGen_CT

Purpose

Removes an element from the v_MQTT_sessionDB MQTT_Session_DB database and releases its resources

Parameters

p_idxin integer - the index of the element to be removed

Related Type

MQTT_Session_DB

f_EPTF_MQTT_sessionDB_addrHash

function f_EPTF_MQTT_sessionDB_addrHash(in Socket p_sock) return charstring

Purpose

Converts a socket address in <Socket> type format to the string format “<IP address>:<port number>” to be used as a hash key

Parameters

p_sockin <Socket> - socket address

Returns

charstringsocket address in string format

f_EPTF_MQTT_publishDB_init

function f_EPTF_MQTT_publishDB_init() runs on EPTF_MQTT_LGen_CT

Purpose

Initializes the v_MQTT_publishDB MQTT_Publish_DB database and creates its hashmap

Related Type

MQTT_Publish_DB

f_EPTF_MQTT_publishDB_cleanUp

function f_EPTF_MQTT_publishDB_cleanUp() runs on EPTF_MQTT_LGen_CT

Purpose

Cleans up the reserved resources of the v_MQTT_publishDB MQTT_Publish_DB database

Related Type

MQTT_Publish_DB

f_EPTF_MQTT_publishDB_add

function f_EPTF_MQTT_publishDB_add(
   in MQTT_Publish p_pub
) runs on EPTF_MQTT_LGen_CT return integer

Purpose

Adds a new element to the v_MQTT_publishDB MQTT_Publish_DB database

Parameters

p_pubin MQTT_Publish - the element to be added

Returns

*integer*the index of the added element in the database

Related Type

MQTT_Publish_DB

f_EPTF_MQTT_publishDB_lookUp

function f_EPTF_MQTT_publishDB_lookUp(
   in integer p_sessionIdx,
   in integer p_packetId
) runs on EPTF_MQTT_LGen_CT return integer

Purpose

Gets the index of an MQTT_Publish element in v_MQTT_publishDB MQTT_Publish_DB database by its session and packet id-s

Parameters

p_sessionIdxin integer - input session id
p_packetIdin integer - input packet id

Returns

*integer*the index of the searched element in the database, or -1 if not found

Related Type

MQTT_Publish_DB

f_EPTF_MQTT_publishDB_get

function f_EPTF_MQTT_publishDB_get(
   in integer p_idx,
   inout MQTT_Publish p_pub
) runs on EPTF_MQTT_LGen_CT return boolean

Purpose

Retrieves an element from the v_MQTT_publishDB MQTT_Publish_DB database

Parameters

p_idxin integer - the index of the element to be retrieved
p_pubinout MQTT_Publish - the retrieved element

Returns

booleantrue: success, false: no element with the index p_idx

Related Type

MQTT_Publish_DB

f_EPTF_MQTT_publishDB_check

function f_EPTF_MQTT_publishDB_check(
   in integer p_idx
) runs on EPTF_MQTT_LGen_CT return boolean

Purpose

Checks if an element exists in the v_MQTT_publishDB MQTT_Publish_DB database

Parameters

p_idxin integer - the index of the element to be checked

Returns

booleantrue: element present, false: element doesn’t exists

Related Type

MQTT_Publish_DB

f_EPTF_MQTT_publishDB_remove

function f_EPTF_MQTT_publishDB_remove(
   in integer p_idx
) runs on EPTF_MQTT_LGen_CT

Purpose

Removes an element from the v_MQTT_publishDB MQTT_Publish_DB database

Parameters

p_idxin integer - the index of the element to be Removed

Related Type

MQTT_Publish_DB

f_EPTF_MQTT_publishDB_packetIdHash

function f_EPTF_MQTT_publishDB_packetIdHash(
   in integer p_sessionIdx,
   in integer p_packetId
) return charstring

Purpose

Converts a pair of session ID & packet ID to the string format “session_<sessionId>:id_<packetId>” to be used as a hash key

Parameters

p_sessionIdxin integer - input session ID
p_packetIdin integer - input packet ID

Returns

charstringconverted IDs

Related Type

MQTT_Publish_DB EPTF_MQTT_LGen_CT

f_EPTF_MQTT_subscriptionDB_init

function f_EPTF_MQTT_subscriptionDB_init() runs on EPTF_MQTT_LGen_CT

Purpose

Initializes the v_MQTT_subscriptionDB MQTT_Subscription_DB database

Related Type

MQTT_Subscription_DB

f_EPTF_MQTT_subscriptionDB_cleanUp

function f_EPTF_MQTT_subscriptionDB_cleanUp() runs on EPTF_MQTT_LGen_CT

Purpose

Cleans up the reserved resources of the v_MQTT_subscriptionDB MQTT_Subscription_DB database

Related Type

MQTT_Subscription_DB

f_EPTF_MQTT_subscriptionDB_add

function f_EPTF_MQTT_subscriptionDB_add(
   in MQTT_Subscription p_sub
) runs on EPTF_MQTT_LGen_CT return integer

Purpose

Adds a new element to the v_MQTT_subscriptionDB MQTT_Subscription_DB database

Parameters

p_subin MQTT_Subscription - the element to be added

Returns

*integer*the index of the added element in the database

Related Type

MQTT_Subscription_DB

f_EPTF_MQTT_subscriptionDB_setKey_packetId

function f_EPTF_MQTT_subscriptionDB_setKey_packetId(
   in integer p_idx,
   in integer p_sessionIdx,
   in integer p_packetId
) runs on EPTF_MQTT_LGen_CT

Purpose

Insert an integer element to the subscription hashmap, key is composed from session ID and packet ID

Parameters

p_idxin integer - data to be inserted
p_sessionIdxin integer - input session ID, used in hashmap key
p_packetIdin integer - input packet ID, used in hashmap key

Related Type

MQTT_Subscription_DB

f_EPTF_MQTT_subscriptionDB_removeKey_packetId

function f_EPTF_MQTT_subscriptionDB_removeKey_packetId(
   in integer p_idx,
   in integer p_sessionIdx,
   in integer p_packetId
) runs on EPTF_MQTT_LGen_CT

Removes the element from the subscription hashmap identified by its session ID and packet ID

Parameters

p_idxin integer - NOT USED
p_sessionIdxin integer - input session ID, used in hashmap key
p_packetIdin integer - input packet ID, used in hashmap key

Related Type

MQTT_Subscription_DB

f_EPTF_MQTT_subscriptionDB_lookUp_packetId

function f_EPTF_MQTT_subscriptionDB_lookUp_packetId(
   in integer p_sessionIdx,
   in integer p_packetId
) runs on EPTF_MQTT_LGen_CT return integer

Purpose

Gets the index of an MQTT_Subscription element in v_MQTT_subscriptionDB MQTT_Subscription_DB database by a session ID and packet ID

Parameters

p_sessionIdxin integer - input session ID, used in hashmap key
p_packetIdin integer - input packet ID, used in hashmap key

Returns

*integer*the index of the searched element in the database, or -1 if not found

Related Type

MQTT_Subscription_DB

f_EPTF_MQTT_subscriptionDB_lookUp_topicName

function f_EPTF_MQTT_subscriptionDB_lookUp_topicName(
   in integer p_sessionIdx,
   in charstring p_topicName
) runs on EPTF_MQTT_LGen_CT return integer

Purpose

Gets the index of an MQTT_Subscription element in v_MQTT_subscriptionDB MQTT_Subscription_DB database by a session ID and packet ID

Parameters

p_sessionIdxin integer - input session ID, used in hashmap key
p_topicNamein charstring - input topic, used in hashmap key

Returns

*integer*the index of the searched element in the database, or -1 if not found

Related Type

MQTT_Subscription_DB

f_EPTF_MQTT_subscriptionDB_get

function f_EPTF_MQTT_subscriptionDB_get(
   in integer p_idx,
   inout MQTT_Subscription p_sub
) runs on EPTF_MQTT_LGen_CT return boolean

Purpose

Retrieves an element from the v_MQTT_subscriptionDB MQTT_Subscription_DB database

Parameters

p_idxin integer - the index of the element to be retrieved
p_subinout MQTT_Subscription - the retrieved element

Returns

*boolean*true: success, false: element with this index doesn’t exist

Related Type

MQTT_Subscription_DB

f_EPTF_MQTT_subscriptionDB_check

function f_EPTF_MQTT_subscriptionDB_check(
   in integer p_idx
) runs on EPTF_MQTT_LGen_CT return boolean

Purpose

Checks if an element at an index exists the v_MQTT_subscriptionDB MQTT_Subscription_DB database

Parameters

p_idxin integer - the index of the element to be checked

Returns

*boolean*true: success, false: element at this index is not present

Related Type

MQTT_Subscription_DB

f_EPTF_MQTT_subscriptionDB_remove

function f_EPTF_MQTT_subscriptionDB_remove(
   in integer p_idx
) runs on EPTF_MQTT_LGen_CT

Purpose

Removes an element from the v_MQTT_subscriptionDB MQTT_Subscription_DB database

Parameters

p_idxin integer - the index of the element to be removed

Related Type

MQTT_Subscription_DB

f_EPTF_MQTT_subscriptionDB_packetIdHash

function f_EPTF_MQTT_subscriptionDB_packetIdHash(
   in integer p_sessionIdx,
   in integer p_packetId
) return charstring

Purpose

Converts a pair of session ID & packet ID to the string format “session_<sessionId>:id_<packetId>” to be used as hash key

Parameters

p_sessionIdxin integer - input session ID
p_packetIdin integer - input packet ID

Returns

charstringconverted IDs

Related Type

MQTT_Subscription_DB

f_EPTF_MQTT_subscriptionDB_topicHash

function f_EPTF_MQTT_subscriptionDB_topicHash(
   in integer p_sessionIdx,
   in charstring p_topic
) return charstring

Purpose

Converts a pair of session ID & topic to the string format “session_<sessionId>:topic_<topic>” to be used as hash key

Parameters

p_sessionIdxin integer - input session ID
p_topicin charstring - input topic string

Returns

charstringconverted IDs

Related Type

MQTT_Subscription_DB

f_EPTF_MQTT_stack_fromApp

function f_EPTF_MQTT_stack_fromApp(
   inout EPTF_MQTT_PDU p_msg,
   in MQTT_StepCtx p_ctx
) runs on EPTF_MQTT_LGen_CT

Purpose

This is the main entry point for the MQTT stack realization of the EPTF_MQTT_LGen_CT component that handles messages received from the application layer (e.g.  FSMs)

Parameters

p_msginout EPTF_MQTT_PDU - message that enters into the stack (will be modified by the stack)
p_ctxin MQTT_StepCtx - pointers for the instances related to a particular simulated entity

Related Types

EPTF_MQTT_LGen_CT

f_EPTF_MQTT_stack_fromEnv

function f_EPTF_MQTT_stack_fromEnv(
   inout EPTF_MQTT_PDU p_msg
) runs on EPTF_MQTT_LGen_CT

Purpose

This is the main entry point for the MQTT stack realization of the EPTF_MQTT_LGen_CT component that handles messages received from the environment layer (e.g. transport layer)

Parameters

p_msginout EPTF_MQTT_PDU - message that enters into the stack (will be modified by the stack)

Related Types

EPTF_MQTT_LGen_CT

f_EPTF_MQTT_session_fromApp

function f_EPTF_MQTT_session_fromApp(
   inout EPTF_MQTT_PDU p_msg,
   in integer p_sIdx
) runs on EPTF_MQTT_LGen_CT

Purpose

This is the entry point for an MQTT session fsm handling events coming from the application layer (e.g. client/broker FSMs)

Parameters

p_msginout EPTF_MQTT_PDU - next transport message to be sent
p_sIdxin integer - session index

Related Types

MQTT_Session

FSM Diagram of a MQTT session

f_EPTF_MQTT_session_fromEnv

function f_EPTF_MQTT_session_fromEnv(
   inout EPTF_MQTT_PDU p_msg,
   in integer p_sIdx
) runs on EPTF_MQTT_LGen_CT

Purpose

This is the entry point for an MQTT session fsm from the environment layer (e.g. transport layer)

Parameters

p_msginout EPTF_MQTT_PDU - transport message received
p_sIdxin integer - session index

Related Types

MQTT_Session

FSM Diagram of a MQTT session

f_EPTF_MQTT_session_keepalive

function f_EPTF_MQTT_session_keepalive(
   in EPTF_ScheduledAction pl_action,
   in integer pl_eventIndex
) runs on EPTF_MQTT_LGen_CT return boolean

Purpose

Handles the T_keepalive timer event in the MQTT_Session FSM

Parameters

pl_actioninout <EPTF_ScheduledAction> - the scheduled action <>
pl_eventIndexin integer - eveny index in the scheduler

Returns

*boolean*true <always>

Related Types

MQTT_Session

f_EPTF_MQTT_session_startT_keepalive

function f_EPTF_MQTT_session_startT_keepalive(
   in integer pl_sIdx,
   in float pl_time
) runs on EPTF_MQTT_LGen_CT return boolean

Purpose

Starts the T_keepalive timer for an MQTT_Session FSM

Parameters

pl_sIdxin integer - session index (?)
pl_timein float - value of the keepalive timer

Returns

*boolean*true: succesful , false: 0 or negative timer value

Related Types

MQTT_Session

f_EPTF_MQTT_session_cancelT_keepalive

function f_EPTF_MQTT_session_cancelT_keepalive(
   in integer pl_sessionIdx
) runs on EPTF_MQTT_LGen_CT

Purpose

Cancels the T_keepalive timer of an MQTT_Session FSM

Parameters

pl_sessionIdxin integer - session index

Related Types

MQTT_Session

f_EPTF_MQTT_session_getNextPacketId

function f_EPTF_MQTT_session_getNextPacketId(
   in MQTT_StepCtx p_ctx
) runs on EPTF_MQTT_LGen_CT return integer

Purpose

Sets the value of the packet id field in the next message to be sent in a session

Parameters

p_ctxin MQTT_StepCtx - Pointer of the context embedding the session id.

Returns

*integer*packet id for the next message

Related Types

MQTT_Session

f_EPTF_MQTT_session_setState

function f_EPTF_MQTT_session_setState(
   in integer p_sessionIdx,
   in MQTT_Session_State p_nextState
) runs on EPTF_MQTT_LGen_CT

Purpose

Sets a new state for an MQTT_Session FSM

Parameters

p_sessionIdxin integer - index of session
p_nextStatein MQTT_Session_State - new state of the state machine

Related Types

MQTT_Session

f_EPTF_MQTT_session_send

function f_EPTF_MQTT_session_send(
   in integer p_sessionIdx,
   inout EPTF_MQTT_PDU p_msg
) runs on EPTF_MQTT_LGen_CT

Purpose

Sends a message to the transort layer with type EPTF_MQTT_PDU and the provided session index

Parameters

p_sessionIdxin integer - session index
p_msgintout EPTF_MQTT_PDU - the message to be sent

Related Types

MQTT_Session

f_EPTF_MQTT_session_registerSubscription

function f_EPTF_MQTT_session_registerSubscription(
   in integer p_sessionIdx,
   in integer p_subIdx
) runs on EPTF_MQTT_LGen_CT

Purpose

Adds a subscription index to an MQTT_Session

Parameters

p_sessionIdxin integer - session index
p_subIdxin integer - subscription index to add

Related Types

MQTT_Session

f_EPTF_MQTT_session_deregisterSubscription

function f_EPTF_MQTT_session_deregisterSubscription(
   in integer p_sessionIdx,
   in integer p_subIdx
) runs on EPTF_MQTT_LGen_CT

Purpose

Removes a subscription index from MQTT_Session

Parameters

p_sessionIdxin integer - session index
p_subIdxin integer - subscription index to remove

Related Types

MQTT_Session

f_EPTF_MQTT_session_registerPublish

function f_EPTF_MQTT_session_registerPublish(
   in integer p_sessionIdx,
   in integer p_pubIdx
) runs on EPTF_MQTT_LGen_CT

Purpose

Adds a publish index to an MQTT_Session

Parameters

p_sessionIdxin integer - session index
p_subIdxin integer - publish index to add

Related Types

MQTT_Session

f_EPTF_MQTT_session_deregisterPublish

function f_EPTF_MQTT_session_deregisterPublish(
   in integer p_sessionIdx,
   in integer p_pubIdx
) runs on EPTF_MQTT_LGen_CT

Purpose

Removes a publish index from an MQTT_Session

Parameters

p_sessionIdxin integer - session index
p_subIdxin integer - publish index to add

Related Types

MQTT_Session

f_EPTF_MQTT_session_remove

function f_EPTF_MQTT_session_remove(
   in integer p_sessionIdx
) runs on EPTF_MQTT_LGen_CT

Purpose

Releases all resources related to an MQTT_Session and removes it from the MQTT_Session_DB

Parameters

p_sessionIdxin integer - session index

Related Types

MQTT_Session

f_EPTF_MQTT_subscription_fromSession

function f_EPTF_MQTT_subscription_fromSession(
   inout EPTF_MQTT_PDU p_msg,
   in integer p_subIdx
) runs on EPTF_MQTT_LGen_CT

Purpose

Implements part of the MQTT_Subscription FSM that handles the events coming from the MQTT_Session

Parameters

p_msginout EPTF_MQTT_PDU - message that
p_subIdxin integer - subscription index

Related Types

MQTT_Subscription

FSM Diagram of a MQTT subscription

f_EPTF_MQTT_subscription_fromEnv

function f_EPTF_MQTT_subscription_fromEnv(
   inout EPTF_MQTT_PDU p_msg,
   in integer p_subIdx
) runs on EPTF_MQTT_LGen_CT

Purpose

Implements part of the MQTT_Subscription FSM that handles the events coming from the environment

Parameters

p_msginout EPTF_MQTT_PDU - received transport message
p_subIdxin integer - subscription index

Related Types

MQTT_Subscription

FSM Diagram of a MQTT subscription

f_EPTF_MQTT_subscription_watchdog

function f_EPTF_MQTT_subscription_watchdog(
   in EPTF_ScheduledAction pl_action,
   in integer pl_eventIndex
) runs on EPTF_MQTT_LGen_CT return boolean

Purpose

Handles the T_watchdog event in the <MQTT_Subscribe> FSM

Parameters

pl_actionin <EPTF_ScheduledAction> - scheduled action
pl_eventIndexin integer - event index

Returns

*boolean*true <always>

Related Types

<MQTT_Subscribe>

f_EPTF_MQTT_subscription_startT_watchdog

function f_EPTF_MQTT_subscription_startT_watchdog(
   in integer pl_sIdx,
   in float pl_time
) runs on EPTF_MQTT_LGen_CT return boolean

Purpose

Start a T_watchdog timer in the MQTT_Subscription FSM

Parameters

pl_sIdxin integer - subscription transaction index
pl_timein float - time from now when the action takes place

Returns

*boolean*true: action scheduled , false: 0 or negative timer value is passed

Related Types

MQTT_Subscription

f_EPTF_MQTT_subscription_cancelT_watchdog

function f_EPTF_MQTT_subscription_cancelT_watchdog(
   in integer pl_sIdx
) runs on EPTF_MQTT_LGen_CT

Purpose

Cancels the T_watchdog timer of an MQTT_Subscription FSM

Parameters

pl_sIdxin integer - index of the subscription FSM in subscriptionDB

Related Types

MQTT_Subscription

f_EPTF_MQTT_subscription_setState

function f_EPTF_MQTT_subscription_setState(
   in integer p_subIdx,
   in MQTT_Subscription_State p_nextState
) runs on EPTF_MQTT_LGen_CT

Purpose

Sets a new state of a MQTT_Subscription FSM

Parameters

p_subIdxin integer - subscription index
p_nextStatein MQTT_Subscription_State - new state in the state machine

Related Types

MQTT_Subscription

f_EPTF_MQTT_subscription_remove

function f_EPTF_MQTT_subscription_remove(
   in integer p_subIdx
) runs on EPTF_MQTT_LGen_CT

Purpose

Removing resources related to MQTT_Subscription FSM

Parameters

p_subIdxin integer - subscription index

Related Types

MQTT_Subscription

f_EPTF_MQTT_publish_fromSession

function f_EPTF_MQTT_publish_fromSession(
   inout EPTF_MQTT_PDU p_msg,
   in integer p_pubIdx
) runs on EPTF_MQTT_LGen_CT

Purpose

Handles a publish transaction in case of QoS 1 and QoS 2 fsm requested by the application layer (e.g. client/broker FSMs)

Parameters

p_msginout EPTF_MQTT_PDU - transport message
p_pubIdxin integer - publish index

Related Types

MQTT_Publish

FSM Diagram of a MQTT publish

f_EPTF_MQTT_publish_fromEnv

function f_EPTF_MQTT_publish_fromEnv(
   inout EPTF_MQTT_PDU p_msg,
   in integer p_pubIdx
) runs on EPTF_MQTT_LGen_CT

Purpose

Handles PUBLISH and publish response (PUB REC/PUB REL/PUB COMP) messages received from the peer (i.e. from transport layer) based on its QoS and originator

Parameters

p_msginout EPTF_MQTT_PDU - received transport message
p_pubIdxin integer - publish index

Related Types

MQTT_Publish

FSM Diagram of a MQTT publish

f_EPTF_MQTT_publish_watchdog

function f_EPTF_MQTT_publish_watchdog(
   in EPTF_ScheduledAction pl_action,
   in integer pl_eventIndex
) runs on EPTF_MQTT_LGen_CT return boolean

Purpose

Handles the T_watchdog event in the MQTT_Publish FSM

Parameters

pl_actionin <EPTF_ScheduledAction> - scheduled action
pl_eventIndexin integer - event index

Returns

*boolean*true <always>

Related Types

MQTT_Publish

f_EPTF_MQTT_publish_startT_watchdog

function f_EPTF_MQTT_publish_startT_watchdog(
   in integer pl_pIdx,
   in float pl_time
) runs on EPTF_MQTT_LGen_CT return boolean

Purpose

Start a T_watchdog timer in the MQTT_Publish FSM

Parameters

pl_pIdxin integer - publish transaction index
pl_timein float - time from now when the action takes place

Returns

*boolean*true: action scheduled , false: 0 or negative timer value is passed

Related Types

MQTT_Publish

f_EPTF_MQTT_publish_cancelT_watchdog

function f_EPTF_MQTT_publish_cancelT_watchdog(
   in integer pl_publishIdx
) runs on EPTF_MQTT_LGen_CT

Purpose

Cancels the T_watchdog timer of an MQTT_Publish FSM

Parameters

pl_publishIdxin integer - index of the publish FSM in publishDB

Related Types

MQTT_Publish

f_EPTF_MQTT_publish_setState

function f_EPTF_MQTT_publish_setState(
   in integer p_pubIdx,
   in MQTT_Publish_State p_nextState
) runs on EPTF_MQTT_LGen_CT

Purpose

Sets the new state of a MQTT_Publish FSM

Parameters

p_pubIdxin integer - index of the publish FSM in publishDB
p_nextStatein MQTT_Publish_State - new state of the state machine

Related Types

MQTT_Publish

f_EPTF_MQTT_publish_remove

function f_EPTF_MQTT_publish_remove(
   in integer p_pubIdx
) runs on EPTF_MQTT_LGen_CT

Purpose

Releaseing resources of an MQTT_Publish FSM

Parameters

p_pubIdxin integer - publish index

Related Types

MQTT_Publish

f_EPTF_MQTT_setStepCtx

function f_EPTF_MQTT_setStepCtx(
   in EPTF_LGenBase_TestStepArgs pl_ptr,
   inout MQTT_StepCtx p_ctx
) runs on EPTF_MQTT_LGen_CT return boolean

Purpose

Sets the entity and FSM indexes in the MQTT step context

Parameters

pl_ptrin <EPTF_LGenBase_TestStepArgs> - test step args
p_ctxinout MQTT_StepCtx - returns MQTT step context

Return Type

*boolean*was the operation successful?

Related Function

f_MQTT_step_init

f_EPTF_MQTT_setCtx

function f_EPTF_MQTT_setCtx(
   in integer p_eIdx,
   in integer p_fsmIdx,
   inout MQTT_StepCtx p_ctx
) runs on EPTF_MQTT_LGen_CT return boolean

Purpose

Sets the instance pointers of MQTT_StepCtx to the related instances of a simulated device (entity) and FSM

Parameters

p_eIdxin integer - entity index
p_fsmIdxin integer - FSM index
p_ctxinout MQTT_StepCtx - returned context value

Related Functions

f_MQTT_step_init

Related Types

MQTT_StepCtx

f_EPTF_MQTT_isFsmInitialized

function f_EPTF_MQTT_isFsmInitialized(
   in integer pl_eIdx,
   in integer pl_fsmIdx,
   inout integer pl_sessionIdx
) runs on EPTF_MQTT_LGen_CT return boolean

Purpose

Checks if an FSM instance has already been initialized

Parameters

p_eIdxin integer - entity index
p_fsmIdxin integer - FSM index
pl_sessionIdxinout integer - returns session index if initialized, -1 if not

Returns

booleantrue: initialized, false: not initialized

Related Types

MQTT_Session

f_EPTF_MQTT_getIntValue

function f_EPTF_MQTT_getIntValue(
   in EPTF_IntegerList pl_intList,
   in integer pl_number,
   inout integer pl_value
) return boolean

Purpose

Retreives an element of an <EPTF_IntegerList> if it exists

Parameters

pl_intListin <EPTF_IntegerList> - list of integers
pl_numberin integer - index of the integer to be retrieved
pl_valueinout integer - returns the value of the retrieved integer

Returns

*boolean*true if the element exists in the integer list

f_EPTF_MQTT_Logging_VERBOSE

function f_EPTF_MQTT_Logging_VERBOSE(
   in @lazy charstring pl_message
) runs on EPTF_MQTT_LGen_CT

Purpose

Logging functions for the VERBOSE log level

Parameters

pl_messagein charstring - string to be logged

Related Types

EPTF_MQTT_LGen_CT

f_EPTF_MQTT_Logging_DEBUG

function f_EPTF_MQTT_Logging_DEBUG(
   in @lazy charstring pl_message
) runs on EPTF_MQTT_LGen_CT

Purpose

Logging functions for the DEBUG log level

Parameters

pl_messagein charstring - string to be logged

Related Types

EPTF_MQTT_LGen_CT

f_EPTF_MQTT_Logging_WARNING

function f_EPTF_MQTT_Logging_WARNING(
   in @lazy charstring pl_message
) runs on EPTF_MQTT_LGen_CT

Purpose

Logging functions for the WARNING log level

Parameters

pl_messagein charstring - string to be logged

Related Types

EPTF_MQTT_LGen_CT

f_EPTF_MQTT_Logging_ERROR

function f_EPTF_MQTT_Logging_ERROR(
   in @lazy charstring pl_message
) runs on EPTF_MQTT_LGen_CT

Purpose

Logging functions for the ERROR log level

Parameters

pl_messagein charstring - string to be logged

Related Types

EPTF_MQTT_LGen_CT

f_EPTF_MQTT_dispatchEvent

function f_EPTF_MQTT_dispatchEvent(
   in integer pl_eventIdx,
   in integer pl_eIdx,
   in integer pl_fsmCtx,
   in EPTF_IntegerList pl_reportedArgs
) runs on EPTF_MQTT_LGen_CT

Purpose

Dispatches events to an entity/fsm

Parameters

pl_eventIdxin integer - index of the event
pl_eIdxin integer - the index of the entity
pl_fsmCtxin integer - the index of FSM
pl_reportedArgsin <EPTF_IntegerList> - additional arguments to be reported to the entity/FSM

Related Types

EPTF_MQTT_LGen_CT

f_EPTF_MQTT_qos_int2enum

function f_EPTF_MQTT_qos_int2enum(in integer p_qos) return QoS

Purpose

Converts the integer value of QoS to its enumerated value

Parameters

p_qosin integer - integer QoS value

Return Type

<QoS>enumerated value of the input QoS

Related Types

EPTF_MQTT_LGen_CT

f_EPTF_MQTT_publishResponseType

function f_EPTF_MQTT_publishResponseType(
   in MQTT_v3_1_1_ReqResp p_msg
) return boolean

Purpose

Checks if an MQTT message is a response to a PUBLISH

Parameters

p_msgin <MQTT_v3_1_1_ReqResp> - the MQTT message to be checked

Return Type

*boolean*true: message is a publish response type message

Related Types

EPTF_MQTT_LGen_CT

f_EPTF_MQTT_publishResponsePacketId

function f_EPTF_MQTT_publishResponsePacketId(
   in MQTT_v3_1_1_ReqResp p_msg
) return integer

Purpose

Get the packet identifier of an MQTT message, if it is a response to a PUBLISH

Parameters

p_msgin <MQTT_v3_1_1_ReqResp> - the input MQTT message

Return Type

*integer*Packet identifier value if the message was of a PUBLISH response type, -1 in other cases
function f_EPTF_MQTT_LGen_init(in charstring pl_name) runs on EPTF_MQTT_LGen_CT
The main initialization function for the EPTF_MQTT_LGen_CT component type
type component EPTF_MQTT_LGen_CT extends EPTF_MQTT_Transport_User_CT, EPTF_LGenBase_CT, EPTF_Logging_CT
MQTT load generator component
function f_EPTF_MQTT_LGen_initLogging() runs on EPTF_MQTT_LGen_CT
Initializing CLL’s logging feature on the EPTF_MQTT_LGen_CT component type
function f_MQTT_cleanUp() runs on EPTF_MQTT_LGen_CT
The main clean up function for the EPTF_MQTT_LGen_CT component type
function f_MQTT_eCtxBind(
   in integer pl_eIdx
) runs on EPTF_MQTT_LGen_CT return EPTF_IntegerList
This function is called by the CLL for each entity instance created on a particular instace of EPTF_MQTT_LGen_CT
function f_MQTT_eCtxUnbind(in integer pl_eIdx) runs on EPTF_MQTT_LGen_CT
The reverse operation of f_MQTT_eCtxBind.
function f_MQTT_eCtxReset(in integer pl_eIdx) runs on EPTF_MQTT_LGen_CT
The resources reserved during f_MQTT_eCtxBind are reinitalized (reset).
function f_EPTF_MQTT_declareEvents() runs on EPTF_MQTT_LGen_CT
Declares the FSM events to the CLL framework implemented by EPTF_MQTT_LGen_CT
function f_EPTF_MQTT_declareSteps() runs on EPTF_MQTT_LGen_CT
Declares the FSM steps to the CLL framework implemented by EPTF_MQTT_LGen_CT
function f_EPTF_MQTT_LGen_receiveMessage(
   in EPTF_MQTT_PDU pl_message
) runs on EPTF_MQTT_LGen_CT
The transport layer implementation EPTF_MQTT_Transport_Provider_CT can report received EPTF_MQTT_PDU message to the load generator layer EPTF_MQTT_Transport_User_CT extended by EPTF_MQTT_LGen_CT using this function.
type component EPTF_MQTT_Transport_Provider_CT
Base component type for a MQTT transport realization, declares variables to register the transport user functions
type record EPTF_MQTT_PDU
Encapsulates a MQTT PDU with the corresponding entity (and FSM) indices and transport information
type component EPTF_MQTT_Transport_User_CT
Base component type for a MQTT transport user realization
function f_EPTF_MQTT_LGen_receiveEvent(
   in ASP_Event p_event
) runs on EPTF_MQTT_LGen_CT
The transport layer implementation EPTF_MQTT_Transport_Provider_CT can report received ASP_Event events to the load generator layer EPTF_MQTT_Transport_User_CT extended by EPTF_MQTT_LGen_CT using this function.
function f_EPTF_MQTT_LGen_transportApiResponse(
   in EPTF_MQTT_Transport_Response pl_rsp
) runs on EPTF_MQTT_LGen_CT
The transport layer implementation EPTF_MQTT_Transport_Provider_CT can report received EPTF_MQTT_Transport_Response responses to the load generator layer EPTF_MQTT_Transport_User_CT extended by EPTF_MQTT_LGen_CT using this function.
type record EPTF_MQTT_Transport_Response
Type for transport response
function f_EPTF_MQTT_LGen_send(
   inout EPTF_MQTT_PDU p_msg
) runs on EPTF_MQTT_LGen_CT
This function is used to send out a message of a EPTF_MQTT_PDU using the registered function fcb_EPTF_MQTT_Transport_sendMessage of the underlying transport layer instance.
type function fcb_EPTF_MQTT_Transport_sendMessage(
   in EPTF_MQTT_PDU pl_msg
) runs on self
Call-back function type for sending a EPTF_MQTT_PDU MQTT message
function f_MQTT_step_init(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
Test Step to dynamically allocate and initialize the MQTT FSM context for the caller FSM.
function f_MQTT_step_cleanUp(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
Test Step to free up the MQTT FSM context for the caller FSM.
function f_MQTT_step_setLocalAddress(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
Test step to set the local address in the entity context.
function f_MQTT_step_setLocalAddress_byVars(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
Test step to set the local address in the entity context.
function f_MQTT_step_setRemoteAddress(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
Test step to set the remote address in the FSM context.
function f_MQTT_step_setRemoteAddress_byVars(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
Test step to set the remote address in the FSM context.
function f_MQTT_step_startListening(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
The test step expects that a transport endpoint is set in the addressDB as a local address.
function f_MQTT_step_transportConnect(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
The test step expects that local and remote socket adresses are set in the addressDB.
function f_MQTT_step_transportClose(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
The test step expects that a transport endpoint is set in the addressDB as a local address.
function f_MQTT_step_loadTemplate_byIntIdx(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
Test step to load a MQTT_Template from tsp_EPTF_MQTT_LGen_templates into v_MQTT_msgToSend (which can be sent using the send test step) by its integer index in test step args.
type record MQTT_Template
Grouping a MQTT_v3_1_1_ReqResp with an id
MQTT message template definitions for sending
function f_MQTT_step_loadTemplate_byStringId(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
Test step to load a MQTT_Template from tsp_EPTF_MQTT_LGen_templates into v_MQTT_msgToSend (which can be sent using the send test step) by its string Id.
function f_MQTT_step_setTopic_stringParam(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
Test step to set the string value referred by the test step argument as the topic of the first subscription entry in SUBSCRIBE and PUBLISH messages.
function f_MQTT_step_setTopic_add_stringParam(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
Test step to add the string value referred by the test step argument to the topic of the first subscription entry in SUBSCRIBE and PUBLISH messages.
function f_MQTT_step_setTopic_add_varParams(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
Test step to add the string value of variables referred by the test step argument to the topic of the first subscription entry in SUBSCRIBE and PUBLISH messages.
function f_MQTT_step_setTopic_add_clientId(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
Test step to add client ID in the current session to the topic in the first subscription in SUBSCRIBE and to PUBLISH message.
function f_MQTT_step_setQos_intParam(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
Test step to set the QoS level in SUBSCRIBE and PUBLISH messages using test step arguments
function f_MQTT_step_setPublishMessage_stringParam(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
Test step to set the content of the payload in PUBLISH message.
function f_MQTT_step_setPublishMessage_add_stringParam(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
Test step to concatenate a string to the content of the PUBLISH message
function f_MQTT_step_setPublishMessage_add_varParams(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
Test step to add the content of a set of variables to the payload of a PUBLISH message.
function f_MQTT_step_setPublishMessage_add_clientId(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
Test step to add client ID of the current session to the payload of a PUBLISH message.
function f_MQTT_step_reportPingResponse(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
Test step to set the report ping response to enable/disable using using step arguments.
function f_MQTT_step_reportPublishResponse(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
Test step to set the report publish response to enable/disable using step arguments
function f_MQTT_step_send(
   in EPTF_LGenBase_TestStepArgs pl_ptr
) runs on EPTF_MQTT_LGen_CT
Test step to send out an MQTT message from v_MQTT_msgToSend.
function f_EPTF_MQTT_addressDB_init() runs on EPTF_MQTT_LGen_CT
Function to initialize the addressDB
function f_EPTF_MQTT_addressDB_cleanUp() runs on EPTF_MQTT_LGen_CT
Function to clean up the address database and release its resources
function f_EPTF_MQTT_addressDB_add(
   in Socket p_addr,
   inout integer p_idx
) runs on EPTF_MQTT_LGen_CT
Add a socket address to the addressDB and return its index if no such entry yet, or return its index if already exists
function f_EPTF_MQTT_addressDB_get(
   inout Socket p_addr,
   in integer p_idx
) runs on EPTF_MQTT_LGen_CT
Get a socket address from the addressDB by its index
function f_EPTF_MQTT_addressDB_lookUp(
   in Socket p_sock
) runs on EPTF_MQTT_LGen_CT return integer
Get the index of a socket entry in addressDB
function f_EPTF_MQTT_addressDB_Socket2String(Socket p_sock) return charstring
Converts a socket address in Socket type format to the string format “IP address:<port number>” to be used as hash key
function f_EPTF_MQTT_templateDB_init() runs on EPTF_MQTT_LGen_CT
Initializes the v_MQTT_templateDB MQTT_Template_DB database by adding the templates given in tsp_EPTF_MQTT_LGen_templates
type record MQTT_Template_DB
Storing MQTT_Template instances
function f_EPTF_MQTT_templateDB_add(
   in MQTT_Template p_template
) runs on EPTF_MQTT_LGen_CT return integer
Adds a new element to the v_MQTT_templateDB MQTT_Template_DB database
function f_EPTF_MQTT_templateDB_lookUp(
   in charstring p_id
) runs on EPTF_MQTT_LGen_CT return integer
Gets the index of an MQTT_Template element in v_MQTT_templateDB MQTT_Template_DB database
function f_EPTF_MQTT_templateDB_get(
   in integer p_idx,
   inout MQTT_v3_1_1_ReqResp p_pdu
) runs on EPTF_MQTT_LGen_CT
Retrieves an element from the v_MQTT_templateDB MQTT_Template_DB database
function f_EPTF_MQTT_templateDB_cleanUp() runs on EPTF_MQTT_LGen_CT
Cleans up the reserved resources of the v_MQTT_templateDB MQTT_Template_DB database
function f_EPTF_MQTT_sessionDB_init() runs on EPTF_MQTT_LGen_CT
Initializes the v_MQTT_sessionDB MQTT_Session_DB database and adds its hash to v_MQTT_sessionDB.hashRef
type record MQTT_Session_DB
Storing MQTT_Session instances
function f_EPTF_MQTT_sessionDB_cleanUp() runs on EPTF_MQTT_LGen_CT
Cleans up the reserved resources of the v_MQTT_sessionDB MQTT_Session_DB database
function f_EPTF_MQTT_sessionDB_add(
   in MQTT_Session p_session
) runs on EPTF_MQTT_LGen_CT return integer
Adds a new element to the v_MQTT_sessionDB MQTT_Session_DB database
function f_EPTF_MQTT_sessionDB_setKey(
   in integer p_idx
) runs on EPTF_MQTT_LGen_CT
Sets the hash of the local socket address of a session by the session index
function f_EPTF_MQTT_sessionDB_lookUp(
   in Socket p_sock
) runs on EPTF_MQTT_LGen_CT return integer
Gets the index of a session in v_MQTT_sessionDB MQTT_Session_DB database by its socket address
function f_EPTF_MQTT_sessionDB_get(
   in integer p_idx,
   inout MQTT_Session p_session
) runs on EPTF_MQTT_LGen_CT return boolean
Retrieves a session’s data from the v_MQTT_sessionDB MQTT_Session_DB database
function f_EPTF_MQTT_sessionDB_check(
   in integer p_idx
) runs on EPTF_MQTT_LGen_CT return boolean
Checks if a session element exists in the v_MQTT_sessionDB MQTT_Session_DB database
function f_EPTF_MQTT_sessionDB_remove(
   in integer p_idx
) runs on EPTF_MQTT_LGen_CT
Removes an element from the v_MQTT_sessionDB MQTT_Session_DB database and releases its resources
function f_EPTF_MQTT_sessionDB_addrHash(in Socket p_sock) return charstring
Converts a socket address in Socket type format to the string format “IP address:<port number>” to be used as a hash key
function f_EPTF_MQTT_publishDB_init() runs on EPTF_MQTT_LGen_CT
Initializes the v_MQTT_publishDB MQTT_Publish_DB database and creates its hashmap
type record MQTT_Publish_DB
Storing MQTT_Publish instances
function f_EPTF_MQTT_publishDB_cleanUp() runs on EPTF_MQTT_LGen_CT
Cleans up the reserved resources of the v_MQTT_publishDB MQTT_Publish_DB database
function f_EPTF_MQTT_publishDB_add(
   in MQTT_Publish p_pub
) runs on EPTF_MQTT_LGen_CT return integer
Adds a new element to the v_MQTT_publishDB MQTT_Publish_DB database
function f_EPTF_MQTT_publishDB_lookUp(
   in integer p_sessionIdx,
   in integer p_packetId
) runs on EPTF_MQTT_LGen_CT return integer
Gets the index of an MQTT_Publish element in v_MQTT_publishDB MQTT_Publish_DB database by its session and packet id-s
type record MQTT_Publish
Models an MQTT publish
function f_EPTF_MQTT_publishDB_get(
   in integer p_idx,
   inout MQTT_Publish p_pub
) runs on EPTF_MQTT_LGen_CT return boolean
Retrieves an element from the v_MQTT_publishDB MQTT_Publish_DB database
function f_EPTF_MQTT_publishDB_check(
   in integer p_idx
) runs on EPTF_MQTT_LGen_CT return boolean
Checks if an element exists in the v_MQTT_publishDB MQTT_Publish_DB database
function f_EPTF_MQTT_publishDB_remove(
   in integer p_idx
) runs on EPTF_MQTT_LGen_CT
Removes an element from the v_MQTT_publishDB MQTT_Publish_DB database
function f_EPTF_MQTT_publishDB_packetIdHash(
   in integer p_sessionIdx,
   in integer p_packetId
) return charstring
Converts a pair of session ID & packet ID to the string format “session_sessionId:id_packetId” to be used as a hash key
function f_EPTF_MQTT_subscriptionDB_init() runs on EPTF_MQTT_LGen_CT
Initializes the v_MQTT_subscriptionDB MQTT_Subscription_DB database
type record MQTT_Subscription_DB
Storing MQTT_Subscription instances
function f_EPTF_MQTT_subscriptionDB_cleanUp() runs on EPTF_MQTT_LGen_CT
Cleans up the reserved resources of the v_MQTT_subscriptionDB MQTT_Subscription_DB database
function f_EPTF_MQTT_subscriptionDB_add(
   in MQTT_Subscription p_sub
) runs on EPTF_MQTT_LGen_CT return integer
Adds a new element to the v_MQTT_subscriptionDB MQTT_Subscription_DB database
function f_EPTF_MQTT_subscriptionDB_setKey_packetId(
   in integer p_idx,
   in integer p_sessionIdx,
   in integer p_packetId
) runs on EPTF_MQTT_LGen_CT
Insert an integer element to the subscription hashmap, key is composed from session ID and packet ID
function f_EPTF_MQTT_subscriptionDB_removeKey_packetId(
   in integer p_idx,
   in integer p_sessionIdx,
   in integer p_packetId
) runs on EPTF_MQTT_LGen_CT
Removes the element from the subscription hashmap identified by its session ID and packet ID
function f_EPTF_MQTT_subscriptionDB_lookUp_packetId(
   in integer p_sessionIdx,
   in integer p_packetId
) runs on EPTF_MQTT_LGen_CT return integer
Gets the index of an MQTT_Subscription element in v_MQTT_subscriptionDB MQTT_Subscription_DB database by a session ID and packet ID
type record MQTT_Subscription
Models an MQTT subscription
function f_EPTF_MQTT_subscriptionDB_lookUp_topicName(
   in integer p_sessionIdx,
   in charstring p_topicName
) runs on EPTF_MQTT_LGen_CT return integer
Gets the index of an MQTT_Subscription element in v_MQTT_subscriptionDB MQTT_Subscription_DB database by a session ID and packet ID
function f_EPTF_MQTT_subscriptionDB_get(
   in integer p_idx,
   inout MQTT_Subscription p_sub
) runs on EPTF_MQTT_LGen_CT return boolean
Retrieves an element from the v_MQTT_subscriptionDB MQTT_Subscription_DB database
function f_EPTF_MQTT_subscriptionDB_check(
   in integer p_idx
) runs on EPTF_MQTT_LGen_CT return boolean
Checks if an element at an index exists the v_MQTT_subscriptionDB MQTT_Subscription_DB database
function f_EPTF_MQTT_subscriptionDB_remove(
   in integer p_idx
) runs on EPTF_MQTT_LGen_CT
Removes an element from the v_MQTT_subscriptionDB MQTT_Subscription_DB database
function f_EPTF_MQTT_subscriptionDB_packetIdHash(
   in integer p_sessionIdx,
   in integer p_packetId
) return charstring
Converts a pair of session ID & packet ID to the string format “session_sessionId:id_packetId” to be used as hash key
function f_EPTF_MQTT_subscriptionDB_topicHash(
   in integer p_sessionIdx,
   in charstring p_topic
) return charstring
Converts a pair of session ID & topic to the string format “session_sessionId:topic_topic” to be used as hash key
function f_EPTF_MQTT_stack_fromApp(
   inout EPTF_MQTT_PDU p_msg,
   in MQTT_StepCtx p_ctx
) runs on EPTF_MQTT_LGen_CT
This is the main entry point for the MQTT stack realization of the EPTF_MQTT_LGen_CT component that handles messages received from the application layer (e.g.
function f_EPTF_MQTT_stack_fromEnv(
   inout EPTF_MQTT_PDU p_msg
) runs on EPTF_MQTT_LGen_CT
This is the main entry point for the MQTT stack realization of the EPTF_MQTT_LGen_CT component that handles messages received from the environment layer (e.g.
function f_EPTF_MQTT_session_fromApp(
   inout EPTF_MQTT_PDU p_msg,
   in integer p_sIdx
) runs on EPTF_MQTT_LGen_CT
This is the entry point for an MQTT session fsm handling events coming from the application layer (e.g.
function f_EPTF_MQTT_session_fromEnv(
   inout EPTF_MQTT_PDU p_msg,
   in integer p_sIdx
) runs on EPTF_MQTT_LGen_CT
This is the entry point for an MQTT session fsm from the environment layer (e.g.
function f_EPTF_MQTT_session_keepalive(
   in EPTF_ScheduledAction pl_action,
   in integer pl_eventIndex
) runs on EPTF_MQTT_LGen_CT return boolean
Handles the T_keepalive timer event in the MQTT_Session FSM
type record MQTT_Session
Models and MQTT session
function f_EPTF_MQTT_session_startT_keepalive(
   in integer pl_sIdx,
   in float pl_time
) runs on EPTF_MQTT_LGen_CT return boolean
Starts the T_keepalive timer for an MQTT_Session FSM
function f_EPTF_MQTT_session_cancelT_keepalive(
   in integer pl_sessionIdx
) runs on EPTF_MQTT_LGen_CT
Cancels the T_keepalive timer of an MQTT_Session FSM
function f_EPTF_MQTT_session_getNextPacketId(
   in MQTT_StepCtx p_ctx
) runs on EPTF_MQTT_LGen_CT return integer
Sets the value of the packet id field in the next message to be sent in a session
function f_EPTF_MQTT_session_setState(
   in integer p_sessionIdx,
   in MQTT_Session_State p_nextState
) runs on EPTF_MQTT_LGen_CT
Sets a new state for an MQTT_Session FSM
function f_EPTF_MQTT_session_send(
   in integer p_sessionIdx,
   inout EPTF_MQTT_PDU p_msg
) runs on EPTF_MQTT_LGen_CT
Sends a message to the transort layer with type EPTF_MQTT_PDU and the provided session index
function f_EPTF_MQTT_session_registerSubscription(
   in integer p_sessionIdx,
   in integer p_subIdx
) runs on EPTF_MQTT_LGen_CT
Adds a subscription index to an MQTT_Session
function f_EPTF_MQTT_session_deregisterSubscription(
   in integer p_sessionIdx,
   in integer p_subIdx
) runs on EPTF_MQTT_LGen_CT
Removes a subscription index from MQTT_Session
function f_EPTF_MQTT_session_registerPublish(
   in integer p_sessionIdx,
   in integer p_pubIdx
) runs on EPTF_MQTT_LGen_CT
Adds a publish index to an MQTT_Session
function f_EPTF_MQTT_session_deregisterPublish(
   in integer p_sessionIdx,
   in integer p_pubIdx
) runs on EPTF_MQTT_LGen_CT
Removes a publish index from an MQTT_Session
function f_EPTF_MQTT_session_remove(
   in integer p_sessionIdx
) runs on EPTF_MQTT_LGen_CT
Releases all resources related to an MQTT_Session and removes it from the MQTT_Session_DB
function f_EPTF_MQTT_subscription_fromSession(
   inout EPTF_MQTT_PDU p_msg,
   in integer p_subIdx
) runs on EPTF_MQTT_LGen_CT
Implements part of the MQTT_Subscription FSM that handles the events coming from the MQTT_Session
function f_EPTF_MQTT_subscription_fromEnv(
   inout EPTF_MQTT_PDU p_msg,
   in integer p_subIdx
) runs on EPTF_MQTT_LGen_CT
Implements part of the MQTT_Subscription FSM that handles the events coming from the environment
function f_EPTF_MQTT_subscription_watchdog(
   in EPTF_ScheduledAction pl_action,
   in integer pl_eventIndex
) runs on EPTF_MQTT_LGen_CT return boolean
Handles the T_watchdog event in the MQTT_Subscribe FSM
function f_EPTF_MQTT_subscription_startT_watchdog(
   in integer pl_sIdx,
   in float pl_time
) runs on EPTF_MQTT_LGen_CT return boolean
Start a T_watchdog timer in the MQTT_Subscription FSM
function f_EPTF_MQTT_subscription_cancelT_watchdog(
   in integer pl_sIdx
) runs on EPTF_MQTT_LGen_CT
Cancels the T_watchdog timer of an MQTT_Subscription FSM
function f_EPTF_MQTT_subscription_setState(
   in integer p_subIdx,
   in MQTT_Subscription_State p_nextState
) runs on EPTF_MQTT_LGen_CT
Sets a new state of a MQTT_Subscription FSM
function f_EPTF_MQTT_subscription_remove(
   in integer p_subIdx
) runs on EPTF_MQTT_LGen_CT
Removing resources related to MQTT_Subscription FSM
function f_EPTF_MQTT_publish_fromSession(
   inout EPTF_MQTT_PDU p_msg,
   in integer p_pubIdx
) runs on EPTF_MQTT_LGen_CT
Handles a publish transaction in case of QoS 1 and QoS 2 fsm requested by the application layer (e.g.
function f_EPTF_MQTT_publish_fromEnv(
   inout EPTF_MQTT_PDU p_msg,
   in integer p_pubIdx
) runs on EPTF_MQTT_LGen_CT
Handles PUBLISH and publish response (PUB REC/PUB REL/PUB COMP) messages received from the peer (i.e.
function f_EPTF_MQTT_publish_watchdog(
   in EPTF_ScheduledAction pl_action,
   in integer pl_eventIndex
) runs on EPTF_MQTT_LGen_CT return boolean
Handles the T_watchdog event in the MQTT_Publish FSM
function f_EPTF_MQTT_publish_startT_watchdog(
   in integer pl_pIdx,
   in float pl_time
) runs on EPTF_MQTT_LGen_CT return boolean
Start a T_watchdog timer in the MQTT_Publish FSM
function f_EPTF_MQTT_publish_cancelT_watchdog(
   in integer pl_publishIdx
) runs on EPTF_MQTT_LGen_CT
Cancels the T_watchdog timer of an MQTT_Publish FSM
function f_EPTF_MQTT_publish_setState(
   in integer p_pubIdx,
   in MQTT_Publish_State p_nextState
) runs on EPTF_MQTT_LGen_CT
Sets the new state of a MQTT_Publish FSM
function f_EPTF_MQTT_publish_remove(
   in integer p_pubIdx
) runs on EPTF_MQTT_LGen_CT
Releaseing resources of an MQTT_Publish FSM
function f_EPTF_MQTT_setStepCtx(
   in EPTF_LGenBase_TestStepArgs pl_ptr,
   inout MQTT_StepCtx p_ctx
) runs on EPTF_MQTT_LGen_CT return boolean
Sets the entity and FSM indexes in the MQTT step context
function f_EPTF_MQTT_setCtx(
   in integer p_eIdx,
   in integer p_fsmIdx,
   inout MQTT_StepCtx p_ctx
) runs on EPTF_MQTT_LGen_CT return boolean
Sets the instance pointers of MQTT_StepCtx to the related instances of a simulated device (entity) and FSM
type record MQTT_StepCtx
Type that stores the most important pointers
function f_EPTF_MQTT_isFsmInitialized(
   in integer pl_eIdx,
   in integer pl_fsmIdx,
   inout integer pl_sessionIdx
) runs on EPTF_MQTT_LGen_CT return boolean
Checks if an FSM instance has already been initialized
function f_EPTF_MQTT_getIntValue(
   in EPTF_IntegerList pl_intList,
   in integer pl_number,
   inout integer pl_value
) return boolean
Retreives an element of an EPTF_IntegerList if it exists
function f_EPTF_MQTT_Logging_VERBOSE(
   in @lazy charstring pl_message
) runs on EPTF_MQTT_LGen_CT
Logging functions for the VERBOSE log level
function f_EPTF_MQTT_Logging_DEBUG(
   in @lazy charstring pl_message
) runs on EPTF_MQTT_LGen_CT
Logging functions for the DEBUG log level
function f_EPTF_MQTT_Logging_WARNING(
   in @lazy charstring pl_message
) runs on EPTF_MQTT_LGen_CT
Logging functions for the WARNING log level
function f_EPTF_MQTT_Logging_ERROR(
   in @lazy charstring pl_message
) runs on EPTF_MQTT_LGen_CT
Logging functions for the ERROR log level
function f_EPTF_MQTT_dispatchEvent(
   in integer pl_eventIdx,
   in integer pl_eIdx,
   in integer pl_fsmCtx,
   in EPTF_IntegerList pl_reportedArgs
) runs on EPTF_MQTT_LGen_CT
Dispatches events to an entity/fsm
function f_EPTF_MQTT_qos_int2enum(in integer p_qos) return QoS
Converts the integer value of QoS to its enumerated value
function f_EPTF_MQTT_publishResponseType(
   in MQTT_v3_1_1_ReqResp p_msg
) return boolean
Checks if an MQTT message is a response to a PUBLISH
function f_EPTF_MQTT_publishResponsePacketId(
   in MQTT_v3_1_1_ReqResp p_msg
) return integer
Get the packet identifier of an MQTT message, if it is a response to a PUBLISH
This module contains the definitions for the MQTT load generator component
type function fcb_EPTF_MQTT_Transport_receiveMessage(
   in EPTF_MQTT_PDU pl_message
) runs on self
Call-back function type for reporting received EPTF_MQTT_PDU MQTT message
type function fcb_EPTF_MQTT_Transport_receiveEvent(
   in ASP_Event p_event
) runs on self
Call-back function type for reporting received ASP_Event MQTT event
type function fcb_EPTF_MQTT_Transport_apiResponse(
   in EPTF_MQTT_Transport_Response pl_rsp
) runs on self
Call-back function type for reporting a EPTF_MQTT_Transport_Response MQTT transport response
const integer c_MQTT_stepIdx_init := 0
Integer constant for the MQTT init test step
const charstring c_MQTT_stepName_init := "MQTT Applib: init"
Charstring constant for the MQTT init test step
const integer c_MQTT_stepIdx_cleanUp := 1
Integer constant for the MQTT clean up test step
const charstring c_MQTT_stepName_cleanUp := "MQTT Applib: cleanUp"
Charstring constant for the MQTT clean up test step
const integer c_MQTT_stepIdx_setLocalAddress := 2
Integer constant for the MQTT set local address
const charstring c_MQTT_stepName_setLocalAddress := "MQTT Applib: setLocalAddress"
Integer constant for the MQTT set local address
const integer c_MQTT_stepIdx_setLocalAddress_byVars := 3
Integer constant for the MQTT set local address by variables test step
const charstring c_MQTT_stepName_setLocalAddress_byVars := "MQTT Applib: setLocalAddress_byVars"
Integer constant for the MQTT set local address by variables test step
const integer c_MQTT_stepIdx_setRemoteAddress := 4
Integer constant for the MQTT set remote address
const charstring c_MQTT_stepName_setRemoteAddress := "MQTT Applib: setRemoteAddress"
Integer constant for the MQTT set remote address
const integer c_MQTT_stepIdx_setRemoteAddress_byVars := 5
Integer constant for the MQTT set remote address by variables test step
const charstring c_MQTT_stepName_setRemoteAddress_byVars := "MQTT Applib: setRemoteAddress_byVars"
Integer constant for the MQTT set remote address by variables test step
const integer c_MQTT_stepIdx_startListening := 8
Integer constant for the MQTT start listening test step
const charstring c_MQTT_stepName_startListening := "MQTT Applib: startListening"
Charstring constant for the MQTT start listening test step
type function fcb_EPTF_MQTT_Transport_apiRequest(
   in EPTF_MQTT_Transport_Request pl_req
) runs on self
Call-back function type for sending a EPTF_MQTT_Transport_Request MQTT transport request
const integer c_MQTT_stepIdx_transportConnect := 6
Integer constant for the MQTT transport connect test step
const charstring c_MQTT_stepName_transportConnect := "MQTT Applib: transportConnect"
Charstring constant for the MQTT transport connect test step
const integer c_MQTT_eventIdx_transportSucc := 0
Integer constant for the MQTT transport succesful indication
const integer c_MQTT_eventIdx_transportFail := 1
Integer constant for the MQTT transport fail indication
const integer c_MQTT_stepIdx_transportClose := 7
Integer constant for the MQTT transport close test step
const charstring c_MQTT_stepName_transportClose := "MQTT Applib: transportClose"
Charstring constant for the MQTT transport close test step
const integer c_MQTT_stepIdx_loadTemplate_byIntIdx := 9
Integer constant for the MQTT load template by integer idx pointer test step
const charstring c_MQTT_stepName_loadTemplate_byIntIdx := "MQTT Applib: loadTemplate_byIntIdx"
Charstring constant for the MQTT load template by integer idx pointer test step
const integer c_MQTT_stepIdx_loadTemplate_byStringId := 10
Integer constant for the MQTT load template by string id test step
const charstring c_MQTT_stepName_loadTemplate_byStringId := "MQTT Applib: loadTemplate_byStringId"
Charstring constant for the MQTT load template by string id test step
const integer c_MQTT_stepIdx_setTopic_stringParam := 12
Integer constant for the MQTT set topic by string parameter test step
const charstring c_MQTT_stepName_setTopic_stringParam := "MQTT Applib: setTopic_stringParam"
Charstring constant for the MQTT set topic by string parameter test step
const integer c_MQTT_stepIdx_setTopic_add_stringParam := 13
Integer constant for the MQTT set topic by adding a string test step
const charstring c_MQTT_stepName_setTopic_add_stringParam := "MQTT Applib: setTopic_add_stringParam"
Charstring constant for the MQTT set topic by adding a string test step
const integer c_MQTT_stepIdx_setTopic_add_varParams := 14
Integer constant for the MQTT set topic by adding variable parameters test step
const charstring c_MQTT_stepName_setTopic_add_varParams := "MQTT Applib: setTopic_add_varParams"
Charstring constant for the MQTT set topic by adding variable parameters test step
const integer c_MQTT_stepIdx_setTopic_add_clientId := 15
Integer constant for the MQTT set topic by adding the client id test step
const charstring c_MQTT_stepName_setTopic_add_clientId := "MQTT Applib: setTopic_add_clientId"
Charstring constant for the MQTT set topic by adding the client id test step
const integer c_MQTT_stepIdx_setQos_intParam := 16
Integer constant for the MQTT set QoS using integer parameter test step
const charstring c_MQTT_stepName_setQos_intParam := "MQTT Applib: setQos_intParam"
Charstring constant for the MQTT set QoS using integer parameter test step
const integer c_MQTT_stepIdx_setPublishMessage_stringParam := 17
Integer constant for the MQTT set publish message using a string parameter test step
const charstring c_MQTT_stepName_setPublishMessage_stringParam := "MQTT Applib: setPublishMessage_stringParam"
Charstring constant for the MQTT set publish message using a string parameter test step
const integer c_MQTT_stepIdx_setPublishMessage_add_stringParam := 18
Integer constant for the MQTT set publish by adding a string parameter test step
const charstring c_MQTT_stepName_setPublishMessage_add_stringParam := "MQTT Applib: setPublishMessage_add_stringParam"
Charstring constant for the MQTT set publish by adding a string parameter test step
const integer c_MQTT_stepIdx_setPublishMessage_add_varParams := 19
Integer constant for the MQTT set publish by adding variable parameters test step
const charstring c_MQTT_stepName_setPublishMessage_add_varParams := "MQTT Applib: setPublishMessage_add_varParams"
Charstring constant for the MQTT set publish by adding variable parameters test step
const integer c_MQTT_stepIdx_setPublishMessage_add_clientId := 20
Integer constant for the MQTT set publish by adding the client id test step
const charstring c_MQTT_stepName_setPublishMessage_add_clientId := "MQTT Applib: setPublishMessage_add_clientId"
Charstring constant for the MQTT set publish by adding the client id test step
const integer c_MQTT_stepIdx_reportPingResponse := 21
Integer constant for the MQTT enabling/disabling the reporting of a ping response test step
const charstring c_MQTT_stepName_reportPingResponse := "MQTT Applib: reportPingResponse"
Charstring constant for the MQTT enabling/disabling the reporting of a ping response test step
const integer c_MQTT_stepIdx_reportPublishResponse := 22
Integer constant for the MQTT enabling/disabling the reporting of a publish response test step
const charstring c_MQTT_stepName_reportPublishResponse := "MQTT Applib: reportPublishResponse"
Charstring constant for the MQTT enabling/disabling the reporting of a publish response test step
const integer c_MQTT_stepIdx_send := 11
Integer constant for the MQTT send test step
const charstring c_MQTT_stepName_send := "MQTT Applib: send"
Charstring constant for the MQTT send test step
type record MQTT_Address_DB
Storing Socket instances
States of an MQTT_Session state machine
States of an MQTT_Subscription state machine
type union MQTT_Publish_State
State of an MQTT_Publish