| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133 | /********************************* (C) РОТЕК *********************************** * @module  snmp_api * @file    snmp_api.h * @version 1.0.0 * @date    XX.XX.XXXX * $brief   snmp_api ******************************************************************************* * @history     Version  Author         Comment * XX.XX.XXXX   1.0.0    Telenkov D.A.  First release. ******************************************************************************* *//* Define to prevent recursive  ----------------------------------------------*/#ifndef SNMP_API_H#define SNMP_API_H#include "settings_api.h"#include "control_symbol.h"/**  * @brief  Инициализация параметров SNMP  */void SNMP_Init(void);  void SNMP_SysUpTimeTask(void *arg);/**  * @brief  Тестовый таск для проверки отправки трапов  */void snmp_trap_tread(void *arg);/**  * @brief  Инициализация SNMP агента  */void SNMP_AgentInit(void);/**  * @brief  Пользовательская функция для отправки трапа из массива traps[]   *         Трап помещается в очередь. Работа с очередью происходит по принципу  *         FIFO буфера.   *         Если в настройках трапа отправка отключена, то трап игнорируется.  */void SNMP_SendUserTrap(uint8_t trapName);/**  * @brief  Установить SNMP Descriptor  */void SNMP_SetObjDescr(void);/**  * @brief  Установить SNMP Community для чтения  */void SNMP_SetReadCommunity(char *comm);/**  * @brief  Установить SNMP Community для записи  */void SNMP_SetWriteCommunity(char *comm);/**  * @brief  Установить SNMP Community отправки трапов  */void SNMP_SetTrapCommunity(char *comm);/**  * @brief  Установить SNMP SysContact  */void SNMP_SetSysContact(SNMP_SYS_CONTACT_t *con);/**  * @brief  Установить SNMP SysName  */void SNMP_SetSysName(SNMP_SYS_NAME_t *name);/**  * @brief  Установить SNMP SysLocation  */void SNMP_SetSysLocation(SNMP_SYS_LOCATION_t *loc);/**  * @brief  Установить SNMP SysManagerIP  */void SNMP_SetManagerIP(char *ip);/**  * @brief  Установить SNMP Object ID  */void SNMP_SetObjID(void);/**  * @brief  Вкл/выкл трапы  */void SNMP_SetTrapOnOff(uint8_t state);/**  * @brief  Установить IP адрес для отправки трапов  */void SNMP_SetTrapDestination(char *ip);/**  * @brief  Текущее TRAP community  */void SNMP_GetTrapCommunity(char *str, uint8_t *len);/**  * @brief  Текущее community для чтения  */void SNMP_GetReadCommunity(char *str, uint8_t *len);/**  * @brief  Текущее community для записи  */void SNMP_GetWriteCommunity(char *str, uint8_t *len);/**  * @brief  IP SNMP менеджера  */void SNMP_GetManagerIp(char *str, uint8_t *len);/**  * @brief  Сохранение настроек контроллера через SNMP  */void SNMP_SettingsSave(void);#define SNMP_SYS_PARAM_SAVE() SNMP_SettingsSave()#define SNMP_SYS_PARAM_CHECK(value, len) control_string_en_digit(value, len)#endif /* #ifndef SNMP_API_H *//********************************* (C) РОТЕК **********************************/
 |