/********************************* (C) РОТЕК ***********************************
 * @module  web_params_api
 * @file    web_params_api.h
 * @version 1.0.0
 * @date    XX.XX.XXXX
 * $brief   template
 *******************************************************************************
 * @history     Version  Author         Comment
 * XX.XX.XXXX   1.0.0    Telenkov D.A.  First release.
 *******************************************************************************
 */

/* Define to prevent recursive  ----------------------------------------------*/
#ifndef WEB_PARAMS_API_H
#define WEB_PARAMS_API_H

#include "stdbool.h"

/**
  * @brief  Заполнение JSON строки параметров
  */
char *HTTP_GetParamsPage(uint32_t reqNum, char *bufIn, char *bufOut, uint16_t lenBufIn, uint16_t *lenBufOut);
  
/**
  * @brief  Возвращяет строку с настройками на второй странице
  */
char *HTTP_GetSettingsPage(uint32_t reqNum, char *bufIn, char *bufOut, uint16_t lenBufIn, uint16_t *lenBufOut);

#ifdef HARDWARE_BT6709
/**
  * @brief  Возвращяет строку с настройками уведомлений (есть/нет отправка)
  * @retval None
  */
char *HTTP_GetTrapAccess(char *params, uint16_t len_params, char *buf, uint16_t *len_out);
#endif

/**
  * @brief  Возвращяет строку с информацией об устройстве
  */
char *HTTP_GetInfo(uint32_t reqNum, char *bufIn, char *bufOut, uint16_t lenBufIn, uint16_t *lenBufOut);

void HTTP_GetHistoryPage(char* buf, uint32_t pageNumber);

void HTTP_GetUpsHistoryPage(char* buf, uint32_t pageNumber);

/**
  * @brief  Возвращает uptime, freq, dutycicle
  */
void HTTP_GetProgonParams(char *buf);

/**
  * @brief  Сброс настроек
  */
void HTTP_ResetSettings(void);
	
/**
  * @brief  Сброс настроек
  */
void HTTP_SaveSettings(void);

/**
  * @brief  Перезагрузка контроллера
  */
char *HTTP_Reboot(uint32_t reqNum, char *bufIn, char *bufOut, uint16_t lenBufIn, uint16_t *lenBufOut);

/**
  * @brief  
  */
void HTTP_StartResetTask(bool fBootMode);

/**
  * @brief  
  */
void vTaskReboot(void * pvParameters);

#endif /* #ifndef WEB_PARAMS_API_H */

/********************************* (C) РОТЕК **********************************/
