Commit Graph

126 Commits

Author SHA1 Message Date
Riccardo Binetti
d2bcdd84a1 Add mutual SSL auth config to mqtt_client
picked from master
2018-10-16 08:29:47 +02:00
david-cermak
52cb6980b0 Merge pull request #77 from rbino/session-present
Expose the session_present flag in the CONNACK packet
2018-10-16 08:28:55 +02:00
david-cermak
d8b2c77ec5 Merge pull request #75 from rbino/fix-buffer-length
Fix buffer length during connection read
2018-10-16 08:25:16 +02:00
Riccardo Binetti
4db9918220 mqtt_client: add session_present field to mqtt_event
Populate it using the CONNACK packet
2018-10-15 11:31:46 +02:00
Riccardo Binetti
8bd8583216 Add mqtt_get_connect_session_present 2018-10-15 11:29:47 +02:00
Riccardo Binetti
a9e796025a Fix buffer length during connection read
Use the in_buffer length instead of the out msg length
2018-10-15 11:26:51 +02:00
david-cermak
439a2eb481 Merge pull request #78 from rbino/fix-publish-enqueue
Fix bug in esp_mqtt_client_publish message enqueueing
2018-10-12 08:26:54 +02:00
Riccardo Binetti
c2f3b9f4b4 Fix bug in esp_mqtt_client_publish message enqueueing
We have to enqueue first and then assign to outbound/pending variables,
otherwise the previous pending message is lost and the publish message
is present twice
2018-10-10 14:48:32 +02:00
David Čermák
ab357e3ae3 Merge branch 'bugfix/client_stop_only_if_started' into 'idf'
client to stop only if started

See merge request idf/esp-mqtt!7
2018-10-09 13:25:38 +08:00
David Cermak
e26764502a mqtt_client_stop stops only if started, fixed tabs->spaces, updated README, removed unused config
closes #62
2018-10-05 16:01:29 +02:00
David Čermák
ddca82d553 Merge branch 'feature/transpost_methods_renamed_no_collision' into 'idf'
transport: renamed transport headers to avoid compilation collisions

See merge request idf/esp-mqtt!5
2018-10-03 14:12:58 +08:00
David Cermak
85ee406d03 tcp_transport: renamed possibly generic function names to be esp_ prefixed and not to colide with user namespace 2018-10-02 14:18:03 +02:00
David Cermak
d344f928ca transport: renamed transport headers to avoid compilation collisions 2018-10-02 14:17:54 +02:00
Angus Gratton
ba35d2de56 Merge branch 'revert-99093849' into 'idf'
Revert "Merge branch 'feature/idf_transport_API_change' into 'idf'"

See merge request idf/esp-mqtt!4
2018-09-24 14:58:36 +08:00
Angus Gratton
61f411c1f9 Revert "Merge branch 'feature/idf_transport_API_change' into 'idf'"
This reverts merge request !3
2018-09-24 13:25:04 +08:00
Angus Gratton
990938491c Merge branch 'feature/idf_transport_API_change' into 'idf'
esp-mqtt: Add support for modified transport_set_func() API from esp-idf/component/tcp_transport

See merge request idf/esp-mqtt!3
2018-09-24 11:54:13 +08:00
Jitin George
cbeaf67fe3 esp-mqtt: Add support for modified transport_set_func() API from esp-idf/component/tcp_transport 2018-09-18 17:49:41 +05:30
David Cermak
bcb38e45f5 deleted Kconfig as this is used as component in esp-idf 2018-09-13 11:33:52 +02:00
David Cermak
abaab2abcc Moved examples with tests to idf, renamed Kconfig to be included from component config in idf,
All these changes are necessary to support new CMake based build system and documentation generation so that this version of esp-mqtt is no longer usable as standalone component, but a standart component of esp-idf
2018-09-11 11:33:10 +02:00
David Cermak
c1ce30f693 Added doxygen tags for API reference documentation 2018-08-21 15:31:10 +02:00
David Cermak
3bbdebcca9 bugfix for longer data on ws transport 2018-08-21 11:55:36 +02:00
David Cermak
0c25441fdd support for custom implementation of msg outbox 2018-08-21 11:55:36 +02:00
David Cermak
fa7ade77b1 IDF integration: Refactored to common tcp transport component, fixed warnings 2018-08-21 11:55:36 +02:00
Manuel Wick
9e2f69cc17 Fixed QoS2 publishing (#58)
- Fixed message type check: Previously, it checked for PUBREL, but the
enqueued packet is the PUBLISH packet, hence check for this type in
is_valid_mqtt_msg().

- Moved mqtt_enqueue after the preparation of the packet, so that the
correct message id gets stored (also relevant for QoS1).
2018-08-06 13:19:23 +07:00
Andrej
cd7d321842 Add mbedtls to dependencies (#59) 2018-08-06 13:18:49 +07:00
Tony
4c19674b16 Adding disconnection if no PINGRESP (#54)
* Adding disconnection if no pingresp

* Initializing wait_for_ping_resp to false

* Setting wait_for_ping_resp to false if aborting connection or when sending connect
2018-08-06 13:18:12 +07:00
Tony
da573b482b Adding ESP32 core selection for MQTT task (#53)
* Adding core selection in KConfig and starting thread with those parameters

* Updating for code consistency
2018-07-25 13:58:38 +07:00
Tuan PM
c26f1dc607 Add emitter client example 2018-06-08 10:47:47 +07:00
Ivan Aponte
87ef46a9b4 fix some keepalives issues (#51)
* merge some changes

* fix blocking issue
2018-06-01 23:06:53 +07:00
Tuan
b2916ccaf9 Update license 2018-06-01 22:29:28 +07:00
esinayana
677db77415 Fix C++ build, add extern "C" to header file. (#49) 2018-05-27 08:50:31 +07:00
Dominikus Gierlach
f3f223e031 Add cmake support (#42)
The new esp-idf build system is based on cmake.
Components require their own CMakeLists.txt with their dependencies.
2018-05-08 12:04:09 +07:00
Tuan PM
75d3c65cb6 Add error handling for mqtt, fixed some issues 2018-05-03 21:50:24 +07:00
Christian Gawron
4bc37bb8db fix handling of large messages (#40) 2018-05-03 20:46:06 +07:00
XuanZe
c837f9cc5f fix: add header "esp_err.h" (#31)
use type esp_err_t but you not include it's header
2018-03-26 16:07:20 +08:00
oldgreen
55f04a8e61 Abort MQTT connection if sending of ping fails (#30)
* Remove unused code: the state here is always MQTT_STATE_CONNECTED.

Under the assumption that only the esp_mqtt_task can change the client state
(otherwise we are missing a lock around the state usage everywhere).

* Change the return type of esp_mqtt_client_ping from int to esp_err_t.

* Abort the MQTT connection if we can't send ping.

Try to handle the situation when the underlying connection changes and the
sockets have wrong status (see esp-idf/docs/api-guides/wifi.rst).
2018-03-16 19:25:34 +08:00
agmuntianu
5c46be5ada Crash fixes and ssl connection (#29)
* add missing config for setting default port for SSL in Kconfig

* free the TCP only after closing the connection , not before

* set the config in the client before we access the schema in the client

* fix typo

* dispatch also Publish event
2018-03-09 22:04:33 +07:00
Tijn Kooijmans
6d8a6c79bd Fixed length of binary lwt message (#28)
* changed reconnect timeout to 5 seconds

* changed reconnect timeout to 5 sec

* fixed binary lwt message

* stop reconnect timer to block CPU

* reduced task stack and network timeout

* fixed length of non-string lwt message
2018-03-06 18:12:51 +07:00
Tuan PM
60567cb238 Add vTaskDelay in STATE_WAIT_TIMEOUT, resolve #27 2018-03-02 11:24:27 +07:00
Tuan PM
12c6c293bb Update document 2018-03-01 23:32:36 +07:00
Tuan PM
54e76011bc Update README with svg build icon, mention about kconfig 2018-03-01 23:14:11 +07:00
Tuan PM
0d4d269dc3 Add Kconfig, make easy to custom configurations 2018-03-01 23:07:26 +07:00
Tuan PM
7090311476 Merge branch 'master' into feature/kconfig 2018-03-01 22:34:02 +07:00
Tuan PM
c06c24a947 fixed default protocol is 3.11 2018-03-01 22:30:15 +07:00
Tuan PM
2c0db6a669 correct length and malloc storate for lwt binary message 2018-03-01 22:30:25 +07:00
Tuan PM
8fe50dda5f add Kconfig 2018-02-27 23:32:31 +07:00
Tuan PM
7e3e296581 reset state when stop 2018-02-27 23:14:09 +07:00
Tuan PM
c9e55caa5b Merge branch 'master' of https://github.com/tuanpmt/espmqtt 2018-02-27 23:02:40 +07:00
Tuan PM
a5ef145163 check transport before use & close the connection if it connects failed 2018-02-27 23:02:35 +07:00
Tuan
fbf592dec3 Merge pull request #24 from StudioSophisti/master
Allow non-string lwt message
2018-02-27 23:00:43 +07:00