обновление ШПС вебки: добавление новых полей, удаление полей из мониторинга и обновление страницы настроек

This commit is contained in:
2025-09-05 16:09:37 +03:00
parent 7cd096a269
commit b580ac6b37
6 changed files with 91 additions and 46 deletions

View File

@@ -354,19 +354,23 @@ void api_driver::obj::TerminalState::updateCallback(proxy::CpProxy& cp) {
}
fRxState = demod.locks.sym_sync_lock && demod.locks.freq_lock && demod.locks.afc_lock && demod.locks.pkt_sync;
#ifndef MODEM_IS_SHPS
fRxSymSyncLock = demod.locks.sym_sync_lock;
fRxFreqSearchLock = demod.locks.freq_lock;
fRxAfcLock = demod.locks.afc_lock;
fRxPktSync = demod.locks.pkt_sync;
#endif
fRxSnr = demod.snr;
fRxRssi = demod.rssi;
#ifndef MODEM_IS_SHPS
fRxModcod = demod.modcod;
fRxFrameSizeNormal = !demod.is_short;
fRxIsPilots = demod.is_pilots;
fRxSymError = demod.sym_err;
fRxFreqErr = demod.crs_freq_err;
#endif
fRxFreqErrAcc = demod.fine_freq_err;
fRxInputSignalLevel = demod.if_overload;
fRxPllError = demod.afc_err;
@@ -374,9 +378,10 @@ void api_driver::obj::TerminalState::updateCallback(proxy::CpProxy& cp) {
fRxSpeedOnIifKbit = static_cast<double>(demod.speed_in_bytes_rx_iface) / 128.0;
fRxPacketsOk = demod.packet_ok_cnt;
fRxPacketsBad = demod.packet_bad_cnt;
#ifndef MODEM_IS_SHPS
fRxPacketsDummy = demod.dummy_cnt;
fTxModcod = mod.modcod;
#endif
fTxSpeedOnTxKbit = static_cast<double>(mod.speed_in_bytes_tx) / 128.0;
fTxSpeedOnIifKbit = static_cast<double>(mod.speed_in_bytes_tx_iface) / 128.0;
#ifdef MODEM_IS_SCPC
@@ -404,19 +409,23 @@ nlohmann::json api_driver::obj::TerminalState::asJson() {
#endif
res["rx"]["state"] = fRxState;
#ifndef MODEM_IS_SHPS
res["rx"]["sym_sync_lock"] = fRxSymSyncLock;
res["rx"]["freq_search_lock"] = fRxFreqSearchLock;
res["rx"]["afc_lock"] = fRxAfcLock;
res["rx"]["pkt_sync"] = fRxPktSync;
#endif
res["rx"]["snr"] = fRxSnr;
res["rx"]["rssi"] = fRxRssi;
#ifndef MODEM_IS_SHPS
res["rx"]["modcod"] = fRxModcod;
res["rx"]["frameSizeNormal"] = fRxFrameSizeNormal;
res["rx"]["isPilots"] = fRxIsPilots;
res["rx"]["symError"] = fRxSymError;
res["rx"]["freqErr"] = fRxFreqErr;
#endif
res["rx"]["freqErrAcc"] = fRxFreqErrAcc;
res["rx"]["inputSignalLevel"] = fRxInputSignalLevel;
res["rx"]["pllError"] = fRxPllError;
@@ -424,9 +433,10 @@ nlohmann::json api_driver::obj::TerminalState::asJson() {
res["rx"]["speedOnIifKbit"] = fRxSpeedOnIifKbit;
res["rx"]["packetsOk"] = fRxPacketsOk;
res["rx"]["packetsBad"] = fRxPacketsBad;
#ifndef MODEM_IS_SHPS
res["rx"]["packetsDummy"] = fRxPacketsDummy;
res["tx"]["modcod"] = fTxModcod;
#endif
res["tx"]["state"] = fTxState;
res["tx"]["speedOnTxKbit"] = fTxSpeedOnTxKbit;
res["tx"]["speedOnIifKbit"] = fTxSpeedOnIifKbit;
@@ -657,6 +667,7 @@ void api_driver::obj::TerminalRxTxSettings::updateMainSettings(const nlohmann::j
#endif
#ifdef MODEM_IS_SHPS
mod.koef_spread = data.value("txSpreadCoef", mod.koef_spread);
mod.txFieldsDataPreamble = data.value("txFieldsDataPreamble", mod.txFieldsDataPreamble);
#endif
// демодулятор
@@ -671,6 +682,7 @@ void api_driver::obj::TerminalRxTxSettings::updateMainSettings(const nlohmann::j
#endif
#ifdef MODEM_IS_SHPS
dem.koef_spread = data.value("rxSpreadCoef", dem.koef_spread);
dem.rxFftShift = data.value("rxFftShift", dem.rxFftShift);
#endif
#ifdef API_STRUCT_ACM_ENABLE
@@ -837,6 +849,7 @@ nlohmann::json api_driver::obj::TerminalRxTxSettings::asJson() const {
rxtx["txAttenuation"] = mod.attenuation;
#ifdef MODEM_IS_SHPS
rxtx["txSpreadCoef"] = mod.koef_spread;
rxtx["txFieldsDataPreamble"] = mod.txFieldsDataPreamble;
#endif
#if defined(MODEM_IS_SCPC) || defined(MODEM_IS_SHPS)
@@ -861,8 +874,8 @@ nlohmann::json api_driver::obj::TerminalRxTxSettings::asJson() const {
rxtx["rxGoldan"] = dem.gold_seq_is_active ? 1 : 0;
#endif
#ifdef MODEM_IS_SHPS
rxtx["txSpreadCoef"] = mod.koef_spread;
rxtx["rxSpreadCoef"] = dem.koef_spread;
rxtx["rxFftShift"] = dem.rxFftShift;
#endif
#ifdef API_STRUCT_ACM_ENABLE