123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142 |
- /********************************* (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)
- /**
- * @brief Установка sysObjectID согласно логике МТС (данное решение согласовано с заказчиком)
- */
- const struct snmp_obj_id* SNMP_GetSysObjectIDforMTS(void);
- #ifdef HARDWARE_BT6709_MTS || HARDWARE_BT6710
- #define SNMP_GET_SYSOBJECTID_MTS() SNMP_GetSysObjectIDforMTS();
- #endif
- #endif /* #ifndef SNMP_API_H */
- /********************************* (C) РОТЕК **********************************/
|