snmp_api.h 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. /********************************* (C) РОТЕК ***********************************
  2. * @module snmp_api
  3. * @file snmp_api.h
  4. * @version 1.0.0
  5. * @date XX.XX.XXXX
  6. * $brief snmp_api
  7. *******************************************************************************
  8. * @history Version Author Comment
  9. * XX.XX.XXXX 1.0.0 Telenkov D.A. First release.
  10. *******************************************************************************
  11. */
  12. /* Define to prevent recursive ----------------------------------------------*/
  13. #ifndef SNMP_API_H
  14. #define SNMP_API_H
  15. #include "settings_api.h"
  16. /**
  17. * @brief Инициализация параметров SNMP
  18. */
  19. void SNMP_Init(void);
  20. void SNMP_SysUpTimeTask(void *arg);
  21. /**
  22. * @brief Тестовый таск для проверки отправки трапов
  23. */
  24. void snmp_trap_tread(void *arg);
  25. /**
  26. * @brief Инициализация SNMP агента
  27. */
  28. void SNMP_AgentInit(void);
  29. /**
  30. * @brief Пользовательская функция для отправки трапа из массива traps[]
  31. * Трап помещается в очередь. Работа с очередью происходит по принципу
  32. * FIFO буфера.
  33. * Если в настройках трапа отправка отключена, то трап игнорируется.
  34. */
  35. void SNMP_SendUserTrap(uint8_t trapName);
  36. /**
  37. * @brief Установить SNMP Descriptor
  38. */
  39. void SNMP_SetObjDescr(void);
  40. /**
  41. * @brief Установить SNMP Community для чтения
  42. */
  43. void SNMP_SetReadCommunity(char *comm);
  44. /**
  45. * @brief Установить SNMP Community для записи
  46. */
  47. void SNMP_SetWriteCommunity(char *comm);
  48. /**
  49. * @brief Установить SNMP Community отправки трапов
  50. */
  51. void SNMP_SetTrapCommunity(char *comm);
  52. /**
  53. * @brief Установить SNMP SysContact
  54. */
  55. void SNMP_SetSysContact(SNMP_SYS_CONTACT_t *con);
  56. /**
  57. * @brief Установить SNMP SysName
  58. */
  59. void SNMP_SetSysName(SNMP_SYS_NAME_t *name);
  60. /**
  61. * @brief Установить SNMP SysLocation
  62. */
  63. void SNMP_SetSysLocation(SNMP_SYS_LOCATION_t *loc);
  64. /**
  65. * @brief Установить SNMP SysManagerIP
  66. */
  67. void SNMP_SetManagerIP(char *ip);
  68. /**
  69. * @brief Установить SNMP Object ID
  70. */
  71. void SNMP_SetObjID(void);
  72. /**
  73. * @brief Вкл/выкл трапы
  74. */
  75. void SNMP_SetTrapOnOff(uint8_t state);
  76. /**
  77. * @brief Установить IP адрес для отправки трапов
  78. */
  79. void SNMP_SetTrapDestination(char *ip);
  80. /**
  81. * @brief Текущее TRAP community
  82. */
  83. void SNMP_GetTrapCommunity(char *str, uint8_t *len);
  84. /**
  85. * @brief Текущее community для чтения
  86. */
  87. void SNMP_GetReadCommunity(char *str, uint8_t *len);
  88. /**
  89. * @brief Текущее community для записи
  90. */
  91. void SNMP_GetWriteCommunity(char *str, uint8_t *len);
  92. /**
  93. * @brief IP SNMP менеджера
  94. */
  95. void SNMP_GetManagerIp(char *str, uint8_t *len);
  96. #endif /* #ifndef SNMP_API_H */
  97. /********************************* (C) РОТЕК **********************************/