Added a separate config value to allow disable the keepalive mechanism (and keep the existing API the same)
Internally though, the keepalive value (in connect_info) is in line with 3.1.2.10 Keep Alive from mqtt spec:
* keepalive=0: Keep alive mechanism disabled (server not to disconnect the client on its inactivity)
* period in seconds to send a Control packet if inactive
Closes https://github.com/espressif/esp-mqtt/issues/179
Previously, uint32_t and size_t were used interchangeably. These types are
interchangeable on Xtensa gcc (uint32_t == size_t == unsigned int), but not on most
other 32-bit gcc architectures (where uint32_t == unsigned long, size_t ==
unsigned int).
Add config option for selecting protocol version at runtime.
This also fixed MQTT protocol version 3.1 which wasnt working with the original implementation
Closes https://github.com/espressif/esp-idf/issues/4448
Closes IDFGH-2311
Closes IDF-1320
This commit adds an event information "connect_return_code" that is written
when the client state is MQTT_STATE_INIT, and the connection fails.
This event info can then be written by the user app to find out the reason
of the fail connection.
Merges https://github.com/espressif/esp-mqtt/pull/100
The time for retransmitting a message was set before transfer was done. This ment that if the transfer speed is slow or the message is big then it would be possible to trigger a retransmit too early.
Closes https://github.com/espressif/esp-mqtt/issues/131
- Some PUBLISHED events would not be posted due to outbox messages being deleted before receiving PUBCOMP.
- Current pending_message is no longer used to check for acknowledgements, as it doesn't work with multiple or out of order messages.
Closes https://github.com/espressif/esp-mqtt/issues/132