// // Created by cfif on 20.03.23. // #ifndef GONEC_GSM_MODEMGONECFUNC_H #define GONEC_GSM_MODEMGONECFUNC_H #include "SerialPortIO.h" #include "LoggerInterface.h" #include "BaseTypes.h" #include "AtCmdCommonProtected.h" #include "AtModemGonec.h" #include "ModemMain.h" bool SlotClearNoStartTask(tModemMain *env, char *id); bool SlotClearNoStopTask(tModemMain *env, char *id); bool SetRoutingRestrictSc(tModemMain *env, char *banned); // Загрузка ключей с проверкой idPostResult_t ModemLoadKey(tModemMain *env, uint32_t key_num, char *buf, size_t buf_len); // Прошивка криптоплаты idPostResult_t ModemCryptoWrite(tModemMain *env, uint8_t *pBuf, uint32_t crc, uint32_t offset, uint32_t size); idPostResult_t ModemGetInitAt(tModemMain *env, bool *isWriteMem, bool grp1, bool grp2, bool grp3, bool grp25); idPostResult_t ModemInitAt(tModemMain *env, bool grp1, bool grp2, bool grp3, bool grp25); // Переход в основной режим работы idPostResult_t ModemStartAt(tModemMain *env); // Запрос состояния получения альманаха bool AlmaStatus(tModemMain *env, uint8_t *status); // Чтение альманаха bool AlmaRead(tModemMain *env); // Очистка данных пакета альманаха bool AlmaClear(tModemMain *env); // Останов регистрации bool StopRegTask(tModemMain *env); // Запуск прошивки bool RunModemOrCrypto(tModemMain *env); bool ModemGetLog(tModemMain *env, int32_t *rssi, int32_t *temp, uint32_t *pwramp, uint32_t *state, uint32_t *wasreboot, uint32_t *size, uint8_t *pBuf); bool ModemGetSlot(tModemMain *env, uint8_t id[], uint8_t status[], uint8_t count); bool ModemDateTime(tModemMain *env, time_t *timestamp); // Чтение данных из пакета bool SlotRecvRead(tModemMain *env, uint8_t id); // Очистка данных из пакета приема bool SlotRecvClear(tModemMain *env, char *id); // Получение состояния слотов приема bool ModemGetRecvSlot(tModemMain *env, uint8_t id[], uint8_t status[], uint8_t count); // Запуск получения альманаха bool AlmaRun(tModemMain *env); // Останов получения альманаха bool AlmaStop(tModemMain *env); // Запрос чтения состояния получения альманаха bool AlmaGetRun(tModemMain *env, uint8_t *status); // Запись данных в пакет bool SlotWrite(tModemMain *env, uint8_t id, uint32_t addressAT, uint32_t addressEND, uint32_t urgency, uint32_t confirmation, uint32_t lenTransPaket); // Очистка данных из пакета bool SlotClear(tModemMain *env, char *id); bool ModemStopSend(tModemMain *env); bool ModemStartSend(tModemMain *env); // Запрос версий bool Modem_Get_Version_Modem(tModemMain *env, char *versionModem, uint8_t *sizeModem, char *versionCrypto, uint8_t *sizeCrypto); // Запуск регистрации bool StartRegTask(tModemMain *env); // Запрос статуса регистрации bool ModemGetRegStatus(tModemMain *env, uint8_t *status); // Установка координат bool ModemSet_Coord(tModemMain *env, int latitude, int longitude); bool TestAFU(tModemMain *env); bool TestAPO(tModemMain *env); #endif //GONEC_GSM_MODEMGONECFUNC_H