1# Socket MQTT Library for Zephyr
2
3# Copyright (c) 2018 Nordic Semiconductor ASA
4# SPDX-License-Identifier: Apache-2.0
5
6config MQTT_LIB
7	bool "Socket MQTT Library Support"
8	select NET_SOCKETS
9	help
10	  Enable the Zephyr MQTT Library
11
12if MQTT_LIB
13
14module=MQTT
15module-dep=NET_LOG
16module-str=Log level for MQTT
17module-help=Enables mqtt debug messages.
18source "subsys/net/Kconfig.template.log_config.net"
19
20config MQTT_KEEPALIVE
21	int "Maximum number of clients Keep alive time for MQTT (in seconds)"
22	default 60
23	help
24	  Keep alive time for MQTT (in seconds). Sending of Ping Requests to
25	  keep the connection alive are governed by this value.
26
27config MQTT_LIB_TLS
28	bool "TLS support for socket MQTT Library"
29	help
30	  Enable TLS support for socket MQTT Library
31
32config MQTT_LIB_TLS_USE_ALPN
33	bool "ALPN support for MQTT"
34	depends on MQTT_LIB_TLS
35	help
36	  Enable ALPN protocol for socket MQTT Library.
37
38config MQTT_LIB_WEBSOCKET
39	bool "Websocket support for socket MQTT Library"
40	help
41	  Enable Websocket support for socket MQTT Library.
42
43config MQTT_LIB_CUSTOM_TRANSPORT
44	bool "Custom transport support for socket MQTT Library"
45	help
46	  Enable custom transport support for socket MQTT Library.
47	  User must provide implementation for transport procedure.
48
49config MQTT_CLEAN_SESSION
50	bool "MQTT Clean Session Flag."
51	help
52	  When a client connects to a MQTT broker using a persistent session,
53	  the message broker saves all subscriptions. When the client
54	  disconnects, the message broker stores unacknowledged QoS 1 messages
55	  and new QoS 1 messages published to topics to which the client is
56	  subscribed. When the client reconnects to the persistent session,
57	  all subscriptions are reinstated and all stored messages are sent to
58	  the client. Setting this flag to 0 allows the client to create a
59	  persistent session.
60
61endif # MQTT_LIB
62