#
# Copyright (c) 2021 Nordic Semiconductor
#
# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
#

menuconfig CLOUD_CODEC
	bool "Application cloud codec"
	default y

if CLOUD_CODEC

choice
	prompt "Application cloud codec backend"
	default CLOUD_CODEC_NRF_CLOUD if NRF_CLOUD_MQTT
	default CLOUD_CODEC_AWS_IOT if AWS_IOT
	default CLOUD_CODEC_AZURE_IOT_HUB if AZURE_IOT_HUB
	default CLOUD_CODEC_LWM2M if LWM2M_INTEGRATION

config CLOUD_CODEC_NRF_CLOUD
	bool "Enable nRF Cloud codec backend"
	help
	  The nRF Cloud codec backend uses the nRF Cloud cell position library to
	  generate a JSON cell position request based on neighbor cell measurements.

config CLOUD_CODEC_AWS_IOT
	bool "Enable AWS IoT codec backend"

config CLOUD_CODEC_AZURE_IOT_HUB
	bool "Enable Azure IoT Hub codec backend"

config CLOUD_CODEC_LWM2M
	bool "Enable lwM2M codec backend"

endchoice

config CLOUD_CODEC_LWM2M_PATH_LIST_ENTRIES_MAX
	int "Maximum size of path list"
	default LWM2M_COMPOSITE_PATH_LIST_SIZE if LWM2M
	default 1
	help
	  Maximum number of entries in the path list constructed when writing to objects.

config CLOUD_CODEC_LWM2M_PATH_ENTRY_SIZE_MAX
	int "Size of each path list entry"
	default 12 if LWM2M
	default 1
	help
	  Maximum size of a lwm2m path entry

config CLOUD_CODEC_APN_LEN_MAX
	int "Maximum length of APN"
	default 30
	help
	  Maximum length of APN (Access Point Name).

if CLOUD_CODEC_LWM2M

config CLOUD_CODEC_MANUFACTURER
	string "Manufacturer name"
	default "Nordic Semiconductor ASA"

config CLOUD_CODEC_LWM2M_THINGY91_SENSORS
	bool "Enable support for Thingy:91 sensors"
	default y if BOARD_THINGY91_NRF9160_NS
	select LWM2M_IPSO_PRESSURE_SENSOR
	select LWM2M_IPSO_HUMIDITY_SENSOR
	select LWM2M_IPSO_TEMP_SENSOR

# Set object v1.1 object versions for sensor objects.
if LWM2M_IPSO_PRESSURE_SENSOR
choice LWM2M_IPSO_PRESSURE_SENSOR_VERSION
	default LWM2M_IPSO_PRESSURE_SENSOR_VERSION_1_1
endchoice
endif # LWM2M_IPSO_PRESSURE_SENSOR

if LWM2M_IPSO_HUMIDITY_SENSOR
choice LWM2M_IPSO_HUMIDITY_SENSOR_VERSION
	default LWM2M_IPSO_HUMIDITY_SENSOR_VERSION_1_1
endchoice
endif # LWM2M_IPSO_HUMIDITY_SENSOR

if LWM2M_IPSO_TEMP_SENSOR
choice LWM2M_IPSO_TEMP_SENSOR_VERSION
	default LWM2M_IPSO_TEMP_SENSOR_VERSION_1_1
endchoice
endif # LWM2M_IPSO_TEMP_SENSOR

endif # CLOUD_CODEC_LWM2M

module = CLOUD_CODEC
module-str = Cloud codec
source "subsys/logging/Kconfig.template.log_config"

endif # CLOUD_CODEC #
