// // Created by xemon on 09.01.23. // #include "MainModesArbiter_Private.h" #include #define LOG_SIGN "Главн. sms" #define LOGGER &env->slog.logger void Mma_CheckIncomingSms(tMma *env) { if ((env->lastSmsCheckTime + 3000) > SystemGetMs()) { return; } env->lastSmsCheckTime = SystemGetMs(); uint8_t binaryData[255]; memset(binaryData, 0, sizeof(binaryData)); uint16_t binaryDataSize; if (AtGsmSms_UtilsReadPduData(&env->gsmWithGnss.gsmAt, binaryData, &binaryDataSize, sizeof(binaryData)) == AT_OK) { LoggerInfoStatic(LOGGER, LOG_SIGN, "Получена команда посредствам СМС"); if (binaryDataSize) { LoggerInfoStatic(LOGGER, LOG_SIGN, "Команда содержит EGTS пакет"); Mma_NetworkAndAudioRequire(env); Mma_EcallPrepare(env); EraGlonassUveos_ProcessEgtsPacket(&env->uveos, binaryData, binaryDataSize); } else { LoggerInfoStatic(LOGGER, LOG_SIGN, "Команда не содержит EGTS пакета"); } } }