void copyMQTTConnectData | ( | MQTTPacket_connectData * | destination, |
MQTTPacket_connectData * | source | ||
) |
References MQTTPacket_connectData::cleansession, MQTTPacket_connectData::clientID, MQTTString::cstring, MQTTPacket_connectData::keepAliveInterval, MQTTPacket_willOptions::message, MQTTPacket_connectData::MQTTVersion, NULL, MQTTPacket_connectData::password, MQTTPacket_willOptions::qos, MQTTPacket_willOptions::retained, MQTTPacket_willOptions::topicName, MQTTPacket_connectData::username, MQTTPacket_connectData::will, and MQTTPacket_connectData::willFlag.
Referenced by MQTTClient(), and MQTTConnect().
MQTTReturnCode cycle | ( | Client * | c, |
Timer * | timer, | ||
uint8_t * | packet_type | ||
) |
References CONNACK, countdown(), handlePublish(), handlePubrec(), Client::isPingOutstanding, Client::keepAliveInterval, MQTT_BUFFER_RX_MESSAGE_INVALID, MQTT_NOTHING_TO_READ, MQTT_NULL_VALUE_ERROR, NULL, PINGRESP, Client::pingTimer, PUBACK, PUBCOMP, PUBLISH, PUBREC, readPacket(), SUBACK, SUCCESS, and UNSUBACK.
MQTTReturnCode decodePacket | ( | Client * | c, |
uint32_t * | value, | ||
uint32_t | timeout | ||
) |
References FAILURE, i, len, MAX_NO_OF_REMAINING_LENGTH_BYTES, MQTT_NULL_VALUE_ERROR, MQTTPACKET_READ_ERROR, Network::mqttread, Client::networkStack, NULL, and SUCCESS.
Referenced by readPacket().
MQTTReturnCode deliverMessage | ( | Client * | c, |
MQTTString * | topicName, | ||
MQTTMessage * | message | ||
) |
References Client::MessageHandlers::applicationHandler, Client::defaultMessageHandler, FAILURE, Client::MessageHandlers::fp, i, isTopicMatched(), MAX_MESSAGE_HANDLERS, Client::messageHandlers, MQTT_NULL_VALUE_ERROR, MQTTPacket_equals(), NewMessageData(), NULL, SUCCESS, and Client::MessageHandlers::topicFilter.
uint32_t GetFreeMessageHandlerIndex | ( | Client * | c | ) |
References MAX_MESSAGE_HANDLERS, Client::messageHandlers, NULL, and Client::MessageHandlers::topicFilter.
Referenced by MQTTResubscribe(), and MQTTSubscribe().
uint16_t getNextPacketId | ( | Client * | c | ) |
References MAX_PACKET_ID, and Client::nextPacketId.
Referenced by MQTTPublish(), MQTTResubscribe(), MQTTSubscribe(), and MQTTUnsubscribe().
MQTTReturnCode handleDisconnect | ( | Client * | c | ) |
References Client::disconnectHandler, MQTT_NETWORK_DISCONNECTED_ERROR, MQTT_NULL_VALUE_ERROR, MQTTDisconnect(), MQTTForceDisconnect(), NULL, SUCCESS, and Client::wasManuallyDisconnected.
Referenced by keepalive().
MQTTReturnCode handlePublish | ( | Client * | c, |
Timer * | timer | ||
) |
References Client::buf, Client::bufSize, deliverMessage(), MQTTMessage::dup, MQTTMessage::id, len, MQTTDeserialize_publish(), MQTTSerialize_ack(), MQTTMessage::payload, MQTTMessage::payloadlen, PUBACK, PUBREC, MQTTMessage::qos, QOS0, QOS1, Client::readbuf, Client::readBufSize, MQTTMessage::retained, sendPacket(), and SUCCESS.
Referenced by cycle().
MQTTReturnCode handlePubrec | ( | Client * | c, |
Timer * | timer | ||
) |
References Client::buf, Client::bufSize, len, MQTTDeserialize_ack(), MQTTSerialize_ack(), PUBREL, Client::readbuf, Client::readBufSize, sendPacket(), and SUCCESS.
Referenced by cycle().
MQTTReturnCode handleReconnect | ( | Client * | c | ) |
References countdown_ms(), Client::currentReconnectWaitInterval, expired(), Network::isConnected, MQTT_ATTEMPTING_RECONNECT, MQTT_NETWORK_RECONNECTED, MQTT_NULL_VALUE_ERROR, MQTT_RECONNECT_TIMED_OUT, MQTTAttemptReconnect(), Client::networkStack, NULL, and Client::reconnectDelayTimer.
Referenced by MQTTYield().
char isTopicMatched | ( | char * | topicFilter, |
MQTTString * | topicName | ||
) |
References MQTTLenString::data, MQTTLenString::len, MQTTString::lenstring, MQTT_NULL_VALUE_ERROR, and NULL.
Referenced by deliverMessage().
MQTTReturnCode keepalive | ( | Client * | c | ) |
MQTTReturnCode MQTTAttemptReconnect | ( | Client * | c | ) |
References Client::isConnected, MQTT_ATTEMPTING_RECONNECT, MQTT_NETWORK_ALREADY_CONNECTED_ERROR, MQTT_NETWORK_RECONNECTED, MQTT_NULL_VALUE_ERROR, MQTTConnect(), MQTTResubscribe(), NULL, and SUCCESS.
Referenced by aws_iot_mqtt_attempt_reconnect(), and handleReconnect().
MQTTReturnCode MQTTClient | ( | Client * | c, |
uint32_t | commandTimeoutMs, | ||
unsigned char * | buf, | ||
size_t | bufSize, | ||
unsigned char * | readbuf, | ||
size_t | readBufSize, | ||
uint8_t | enableAutoReconnect, | ||
networkInitHandler_t | networkInitHandler, | ||
TLSConnectParams * | tlsConnectParams | ||
) |
References Client::MessageHandlers::applicationHandler, Client::buf, buf, Client::bufSize, Client::commandTimeoutMs, copyMQTTConnectData(), Client::counterNetworkDisconnected, Client::defaultMessageHandler, TLSConnectParams::DestinationPort, Client::disconnectHandler, Client::MessageHandlers::fp, i, InitTimer(), Client::isAutoReconnectEnabled, Client::isConnected, Client::isPingOutstanding, MAX_MESSAGE_HANDLERS, Client::messageHandlers, MQTT_NULL_VALUE_ERROR, MQTTPacket_connectData_initializer, Client::networkInitHandler, NULL, Client::options, TLSConnectParams::pDestinationURL, TLSConnectParams::pDeviceCertLocation, TLSConnectParams::pDevicePrivateKeyLocation, Client::pingTimer, TLSConnectParams::pRootCALocation, Client::MessageHandlers::qos, Client::readbuf, readbuf, Client::readBufSize, Client::reconnectDelayTimer, TLSConnectParams::ServerVerificationFlag, SUCCESS, TLSConnectParams::timeout_ms, Client::tlsConnectParams, Client::MessageHandlers::topicFilter, and Client::wasManuallyDisconnected.
MQTTReturnCode MQTTConnect | ( | Client * | c, |
MQTTPacket_connectData * | options | ||
) |
References Client::buf, Client::bufSize, Client::commandTimeoutMs, CONNACK, Network::connect, copyMQTTConnectData(), countdown(), countdown_ms(), FAILURE, InitTimer(), Client::isConnected, Client::isPingOutstanding, Client::keepAliveInterval, MQTTPacket_connectData::keepAliveInterval, len, MQTT_CONNACK_CONNECTION_ACCEPTED, MQTT_NETWORK_ALREADY_CONNECTED_ERROR, MQTT_NULL_VALUE_ERROR, MQTTDeserialize_connack(), MQTTSerialize_connect(), Client::networkInitHandler, Client::networkStack, NULL, Client::options, Client::pingTimer, Client::readbuf, Client::readBufSize, sendPacket(), SUCCESS, Client::tlsConnectParams, waitfor(), and Client::wasManuallyDisconnected.
MQTTReturnCode MQTTDisconnect | ( | Client * | c | ) |
References Client::buf, Client::bufSize, Client::commandTimeoutMs, countdown_ms(), Network::destroy, Network::disconnect, FAILURE, InitTimer(), Client::isConnected, MQTT_NETWORK_DISCONNECTED_ERROR, MQTT_NULL_VALUE_ERROR, MQTTSerialize_disconnect(), Client::networkStack, NULL, sendPacket(), SUCCESS, and Client::wasManuallyDisconnected.
|
static |
This is for the case when the sendPacket Fails.
References Network::destroy, Network::disconnect, Client::isConnected, and Client::networkStack.
Referenced by handleDisconnect().
uint32_t MQTTGetNetworkDisconnectedCount | ( | Client * | c | ) |
References Client::counterNetworkDisconnected.
uint8_t MQTTIsAutoReconnectEnabled | ( | Client * | c | ) |
References Client::isAutoReconnectEnabled, and NULL.
Referenced by aws_iot_is_autoreconnect_enabled().
uint8_t MQTTIsConnected | ( | Client * | c | ) |
References Client::isConnected, and NULL.
Referenced by aws_iot_is_mqtt_connected().
MQTTReturnCode MQTTPublish | ( | Client * | c, |
const char * | topicName, | ||
MQTTMessage * | message | ||
) |
References Client::buf, Client::bufSize, Client::commandTimeoutMs, countdown_ms(), MQTTString::cstring, FAILURE, getNextPacketId(), MQTTMessage::id, InitTimer(), Client::isConnected, len, MQTT_NETWORK_DISCONNECTED_ERROR, MQTT_NULL_VALUE_ERROR, MQTTDeserialize_ack(), MQTTSerialize_publish(), MQTTString_initializer, NULL, MQTTMessage::payload, MQTTMessage::payloadlen, PUBACK, PUBCOMP, MQTTMessage::qos, QOS1, QOS2, Client::readbuf, Client::readBufSize, MQTTMessage::retained, sendPacket(), SUCCESS, and waitfor().
void MQTTResetNetworkDisconnectedCount | ( | Client * | c | ) |
References Client::counterNetworkDisconnected.
MQTTReturnCode MQTTResubscribe | ( | Client * | c | ) |
References Client::buf, Client::bufSize, Client::commandTimeoutMs, count, countdown_ms(), MQTTString::cstring, FAILURE, GetFreeMessageHandlerIndex(), getNextPacketId(), InitTimer(), Client::isConnected, len, Client::messageHandlers, MQTT_NETWORK_DISCONNECTED_ERROR, MQTT_NULL_VALUE_ERROR, MQTTDeserialize_suback(), MQTTSerialize_subscribe(), MQTTString_initializer, NULL, Client::MessageHandlers::qos, QOS0, Client::readbuf, Client::readBufSize, sendPacket(), SUBACK, SUCCESS, Client::MessageHandlers::topicFilter, and waitfor().
Referenced by MQTTAttemptReconnect().
MQTTReturnCode MQTTSubscribe | ( | Client * | c, |
const char * | topicFilter, | ||
QoS | qos, | ||
messageHandler | messageHandler, | ||
pApplicationHandler_t | applicationHandler | ||
) |
References Client::MessageHandlers::applicationHandler, Client::buf, Client::bufSize, Client::commandTimeoutMs, count, countdown_ms(), MQTTString::cstring, FAILURE, Client::MessageHandlers::fp, GetFreeMessageHandlerIndex(), getNextPacketId(), InitTimer(), Client::isConnected, len, MAX_MESSAGE_HANDLERS, Client::messageHandlers, MQTT_MAX_SUBSCRIPTIONS_REACHED_ERROR, MQTT_NETWORK_DISCONNECTED_ERROR, MQTT_NULL_VALUE_ERROR, MQTTDeserialize_suback(), MQTTSerialize_subscribe(), MQTTString_initializer, NULL, Client::MessageHandlers::qos, QOS0, Client::readbuf, Client::readBufSize, sendPacket(), SUBACK, SUCCESS, Client::MessageHandlers::topicFilter, and waitfor().
MQTTReturnCode MQTTUnsubscribe | ( | Client * | c, |
const char * | topicFilter | ||
) |
References Client::buf, Client::bufSize, Client::commandTimeoutMs, countdown_ms(), MQTTString::cstring, FAILURE, getNextPacketId(), i, InitTimer(), Client::isConnected, len, MAX_MESSAGE_HANDLERS, Client::messageHandlers, MQTT_NETWORK_DISCONNECTED_ERROR, MQTT_NULL_VALUE_ERROR, MQTTDeserialize_unsuback(), MQTTSerialize_unsubscribe(), MQTTString_initializer, NULL, Client::readbuf, Client::readBufSize, sendPacket(), SUCCESS, Client::MessageHandlers::topicFilter, UNSUBACK, and waitfor().
MQTTReturnCode MQTTYield | ( | Client * | c, |
uint32_t | timeout_ms | ||
) |
References countdown_ms(), Client::counterNetworkDisconnected, Client::currentReconnectWaitInterval, cycle(), expired(), handleReconnect(), InitTimer(), Client::isAutoReconnectEnabled, Client::isConnected, keepalive(), MIN_RECONNECT_WAIT_INTERVAL, MQTT_ATTEMPTING_RECONNECT, MQTT_NETWORK_DISCONNECTED_ERROR, MQTT_NETWORK_MANUALLY_DISCONNECTED, MQTT_NULL_VALUE_ERROR, MQTT_RECONNECT_TIMED_OUT, NULL, Client::reconnectDelayTimer, SUCCESS, and Client::wasManuallyDisconnected.
void NewMessageData | ( | MessageData * | md, |
MQTTString * | aTopicName, | ||
MQTTMessage * | aMessage, | ||
pApplicationHandler_t | applicationHandler | ||
) |
References MessageData::applicationHandler, MessageData::message, and MessageData::topicName.
Referenced by deliverMessage().
MQTTReturnCode readPacket | ( | Client * | c, |
Timer * | timer, | ||
uint8_t * | packet_type | ||
) |
References MQTTHeader::bits, MQTTHeader::byte, decodePacket(), FAILURE, header, left_ms(), len, MQTT_NOTHING_TO_READ, MQTT_NULL_VALUE_ERROR, MQTTPACKET_BUFFER_TOO_SHORT, MQTTPacket_encode(), Network::mqttread, Client::networkStack, NULL, Client::readbuf, Client::readBufSize, SUCCESS, and MQTTHeader::type.
Referenced by cycle().
MQTTReturnCode sendPacket | ( | Client * | c, |
uint32_t | length, | ||
Timer * | timer | ||
) |
References Client::buf, Client::bufSize, expired(), FAILURE, left_ms(), MQTT_NULL_VALUE_ERROR, MQTTPACKET_BUFFER_TOO_SHORT, Network::mqttwrite, Client::networkStack, NULL, and SUCCESS.
Referenced by handlePublish(), handlePubrec(), keepalive(), MQTTConnect(), MQTTDisconnect(), MQTTPublish(), MQTTResubscribe(), MQTTSubscribe(), and MQTTUnsubscribe().
MQTTReturnCode setAutoReconnectEnabled | ( | Client * | c, |
uint8_t | value | ||
) |
References FAILURE, Client::isAutoReconnectEnabled, NULL, and SUCCESS.
Referenced by aws_iot_mqtt_autoreconnect_set_status().
MQTTReturnCode setDisconnectHandler | ( | Client * | c, |
disconnectHandler_t | disconnectHandler | ||
) |
References Client::disconnectHandler, MQTT_NULL_VALUE_ERROR, NULL, and SUCCESS.
Referenced by aws_iot_mqtt_connect().
MQTTReturnCode waitfor | ( | Client * | c, |
uint8_t | packet_type, | ||
Timer * | timer | ||
) |
References cycle(), expired(), FAILURE, MQTT_NETWORK_DISCONNECTED_ERROR, MQTT_NULL_VALUE_ERROR, and NULL.