settings_api_bt6709.c 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194
  1. /********************************* (C) ROTEK ***********************************
  2. * @module settings_api
  3. * @file settings_api.c
  4. * @version 1.0.0
  5. * @date XX.XX.XXXX
  6. * $brief Settings
  7. *******************************************************************************
  8. * @history Version Author Comment
  9. * XX.XX.XXXX 1.0.0 Telenkov D.A. First release.
  10. *******************************************************************************
  11. */
  12. #ifdef HARDWARE_BT6709
  13. #include "stm32f4xx.h"
  14. #include "settings_api.h"
  15. #include "common_config.h"
  16. #ifndef BT6702_SERVICE
  17. #include "snmp_api.h"
  18. #include "trap_api.h"
  19. #include "log.h"
  20. #endif
  21. #include "sys_api.h"
  22. #include "main.h"
  23. #include "parameters.h"
  24. #include <string.h>
  25. #include <stdlib.h>
  26. #ifdef PRINTF_STDLIB
  27. #include <stdio.h>
  28. #endif
  29. #ifdef PRINTF_CUSTOM
  30. #include "tinystdio.h"
  31. #endif
  32. //#define DBG if(0)
  33. /**
  34. * @brief Установить параметры SNMP по умолчанию
  35. */
  36. void SETTINGS_SetSnmpDef(void)
  37. {
  38. strcpy(sSettings.sSnmp.sysDesc.description, "");
  39. sSettings.sSnmp.sysDesc.len = 0;
  40. strcpy(sSettings.sSnmp.readCommunity, "public");
  41. strcpy(sSettings.sSnmp.writeCommunity, "public");
  42. strcpy(sSettings.sSnmp.sysContact.contact, "");
  43. sSettings.sSnmp.sysContact.len = 0;
  44. strcpy(sSettings.sSnmp.sysName.name, "");
  45. sSettings.sSnmp.sysName.len = 0;
  46. strcpy(sSettings.sSnmp.sysLocation.location, "");
  47. sSettings.sSnmp.sysLocation.len = 0;
  48. strcpy(sSettings.sSnmp.managerIP, "0.0.0.0");
  49. strcpy(sSettings.sSnmp.managerIP2, "0.0.0.0");
  50. strcpy(sSettings.sSnmp.managerIP3, "0.0.0.0");
  51. strcpy(sSettings.sSnmp.managerIP4, "0.0.0.0");
  52. strcpy(sSettings.sSnmp.managerIP5, "0.0.0.0");
  53. }
  54. /**
  55. * @brief Настройки ИБП по умолчанию
  56. */
  57. void SETTINGS_SetUPSSettingsDef(void)
  58. {
  59. sSettings.UPS_Setting.Ucellmin = 1.67;
  60. sSettings.UPS_Setting.Ucellmax = 2.27;
  61. sSettings.UPS_Setting.Uakb = 24;
  62. sSettings.UPS_Setting.ups_power = 1000;
  63. sSettings.UPS_Setting.set_data = 0;
  64. sSettings.UPS_Setting.life_time = 5;
  65. sSettings.UPS_Setting.common_capacity = 9;
  66. sSettings.UPS_Setting.type_ups = ups_kestar;
  67. }
  68. /**
  69. * @brief Установить наcтройки менеджера Аварий по умолчанию
  70. */
  71. void SETTINGS_SetAlarmManagerDef(void)
  72. {
  73. sSettings.sAlarmManager.load_range.high = 70.0;
  74. sSettings.sAlarmManager.load_range.low = 0;
  75. sSettings.sAlarmManager.load_range.hyst = 1;
  76. sSettings.sAlarmManager.ac_output_range.high = 250.0;
  77. sSettings.sAlarmManager.ac_output_range.low = 150.0;
  78. sSettings.sAlarmManager.ac_output_range.hyst = 20.0;
  79. sSettings.sAlarmManager.Temprature_range.high = 70.0;
  80. sSettings.sAlarmManager.Temprature_range.low = -40.0;
  81. sSettings.sAlarmManager.Temprature_range.hyst = 1;
  82. }
  83. /**
  84. * @brief Установить значение сервисных настроек по умолчанию
  85. */
  86. void SETTINGS_SetServiceDef(void)
  87. {
  88. uint8_t user_id;
  89. for (user_id = 0; user_id < MAX_WEB_USERS; user_id++) {
  90. switch (user_id) {
  91. /* First users in the system is always ADMIN.
  92. * Others are USER */
  93. case 0:
  94. sSettings.sAuth[user_id].level = ADMIN;
  95. strcpy(sSettings.sAuth[user_id].login, "admin");
  96. strcpy(sSettings.sAuth[user_id].password, "12345");
  97. break;
  98. case 1:
  99. default:
  100. sSettings.sAuth[user_id].level = USER;
  101. strcpy(sSettings.sAuth[user_id].login, "user");
  102. strcpy(sSettings.sAuth[user_id].password, "1234");
  103. break;
  104. }
  105. }
  106. }
  107. /**
  108. * @brief Установить параметры SNTP по умолчанию
  109. */
  110. void SETTINGS_SetSntpDef(void)
  111. {
  112. sSettings.sSNTP.sntpEnable = true;
  113. strcpy(sSettings.sSNTP.ip, "88.147.254.235");
  114. sSettings.sSNTP.timeZone = 3.0;
  115. strcpy(sSettings.sSNTP.data, "none");
  116. }
  117. /**
  118. * @brief Установить параметры настроек сухих контактов / реле по умолчанию
  119. */
  120. void SETTINGS_SetINOUTSDef(void)
  121. {
  122. }
  123. /**
  124. * @brief Установить параметры RADIUS по умолчанию
  125. */
  126. void SETTINGS_SetRADIUSDef(void)
  127. {
  128. }
  129. /**
  130. * @brief Установить параметры сертификата сервера по умолчанию
  131. */
  132. void SETTINGS_SetSSLcrtDef(void){
  133. }
  134. /**
  135. * @brief Установить параметры Telnet
  136. */
  137. void SETTINGS_SetTelnetDef(void){
  138. sSettings.sTelnet.TelnetEnable = true;
  139. sSettings.sTelnet.port = 23;
  140. }
  141. /**
  142. * @brief Установить параметры SSH
  143. */
  144. void SETTINGS_SetSSHDef(void){
  145. sSettings.sSSH.SSHEnable = true;
  146. sSettings.sSSH.port = 22;
  147. }
  148. /**
  149. * @brief Установить параметры списка доверительных хостов
  150. */
  151. void SETTINGS_SetWhiteListDef(void){
  152. for(uint8_t i = 0; i < MAX_WHITE_LIST; i++){
  153. strcpy(sSettings.sWhiteListTemp[i].ip_range, "");
  154. SetWhiteListSTR(sSettings.sWhiteListTemp[i].ip_range, i);
  155. strcpy(sSettings.sWhiteList[i].ip_range, sSettings.sWhiteListTemp[i].ip_range);
  156. sSettings.sWhiteList[i].ip = sSettings.sWhiteListTemp[i].ip;
  157. sSettings.sWhiteList[i].mask = sSettings.sWhiteListTemp[i].mask;
  158. }
  159. }
  160. /**
  161. * @brief Установить параметры разрешения уведомлений по умолчанию
  162. */
  163. void SETTINGS_SetFlagNotificationDef(void)
  164. {
  165. uint8_t i;
  166. for(i = 0; i < ALL_TRAPS; i++ ) {
  167. sSettings.sFlagNotification[i] = 1;
  168. }
  169. }
  170. #endif
  171. /********************************* (C) ROTEK **********************************/