mirror of
https://github.com/DJ2LS/FreeDATA
synced 2024-05-14 08:04:33 +00:00
adjustment to footer info bar
This commit is contained in:
parent
d41a9acbad
commit
2b7cb3c428
6 changed files with 285 additions and 355 deletions
|
@ -34,11 +34,7 @@ function connectDAEMON() {
|
||||||
//clear message buffer after reconnecting or initial connection
|
//clear message buffer after reconnecting or initial connection
|
||||||
socketchunk = "";
|
socketchunk = "";
|
||||||
|
|
||||||
if (config.tnclocation == "localhost") {
|
daemon.connect(config.daemon_port, config.daemon_host);
|
||||||
daemon.connect(3001, "127.0.0.1");
|
|
||||||
} else {
|
|
||||||
daemon.connect(daemon_port, daemon_host);
|
|
||||||
}
|
|
||||||
|
|
||||||
//client.setTimeout(5000);
|
//client.setTimeout(5000);
|
||||||
}
|
}
|
||||||
|
|
|
@ -343,8 +343,8 @@ function changeGuiDesign(design) {
|
||||||
class="progress-bar progress-bar-striped bg-primary force-gpu"
|
class="progress-bar progress-bar-striped bg-primary force-gpu"
|
||||||
id="noise_level"
|
id="noise_level"
|
||||||
role="progressbar"
|
role="progressbar"
|
||||||
style="width: 0%"
|
style="width: {{state.s_meter_strength_percent}}%;"
|
||||||
aria-valuenow="0"
|
aria-valuenow="{{state.s_meter_strength_percent}}"
|
||||||
aria-valuemin="0"
|
aria-valuemin="0"
|
||||||
aria-valuemax="100"
|
aria-valuemax="100"
|
||||||
></div>
|
></div>
|
||||||
|
@ -352,7 +352,7 @@ function changeGuiDesign(design) {
|
||||||
class="justify-content-center d-flex position-absolute w-100"
|
class="justify-content-center d-flex position-absolute w-100"
|
||||||
id="noise_level_value"
|
id="noise_level_value"
|
||||||
>
|
>
|
||||||
S-Meter (dB)
|
S-Meter: {{state.s_meter_strength_raw}} dB
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="progress mb-0" style="height: 8px">
|
<div class="progress mb-0" style="height: 8px">
|
||||||
|
|
|
@ -9,6 +9,8 @@ setActivePinia(pinia);
|
||||||
import { useSettingsStore } from '../store/settingsStore.js';
|
import { useSettingsStore } from '../store/settingsStore.js';
|
||||||
const settings = useSettingsStore(pinia);
|
const settings = useSettingsStore(pinia);
|
||||||
|
|
||||||
|
import { useStateStore } from '../store/stateStore.js';
|
||||||
|
const state = useStateStore(pinia);
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -63,7 +65,7 @@ const settings = useSettingsStore(pinia);
|
||||||
<div class="me-2">
|
<div class="me-2">
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<span class="input-group-text" id="basic-addon3">Frequency</span>
|
<span class="input-group-text" id="basic-addon3">Frequency</span>
|
||||||
<input type="text" class="form-control" id="basic-url" aria-describedby="basic-addon3 basic-addon4">
|
<input type="text" class="form-control" id="basic-url" aria-describedby="basic-addon3 basic-addon4" v-model="state.frequency">
|
||||||
<span class="input-group-text" id="basic-addon3">Hz</span>
|
<span class="input-group-text" id="basic-addon3">Hz</span>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
@ -73,11 +75,11 @@ const settings = useSettingsStore(pinia);
|
||||||
<div class="me-2">
|
<div class="me-2">
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<span class="input-group-text" id="basic-addon3">Mode</span>
|
<span class="input-group-text" id="basic-addon3">Mode</span>
|
||||||
<select class="form-control">
|
<select class="form-control" v-model="settings.hamlib_rigctld_ip">
|
||||||
<option>USB</option>
|
<option value="USB">USB</option>
|
||||||
<option>LSB</option>
|
<option value="LSB">LSB</option>
|
||||||
<option>AM</option>
|
<option value="AM">AM</option>
|
||||||
<option>FM</option>
|
<option value="FM">FM</option>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -6,6 +6,9 @@ import { setActivePinia } from 'pinia';
|
||||||
import pinia from '../store/index';
|
import pinia from '../store/index';
|
||||||
setActivePinia(pinia);
|
setActivePinia(pinia);
|
||||||
|
|
||||||
|
import { useStateStore } from '../store/stateStore.js';
|
||||||
|
const state = useStateStore(pinia);
|
||||||
|
|
||||||
import { useSettingsStore } from '../store/settingsStore.js';
|
import { useSettingsStore } from '../store/settingsStore.js';
|
||||||
const settings = useSettingsStore(pinia);
|
const settings = useSettingsStore(pinia);
|
||||||
|
|
||||||
|
@ -18,11 +21,12 @@ const settings = useSettingsStore(pinia);
|
||||||
style="margin-left: 87px"
|
style="margin-left: 87px"
|
||||||
>
|
>
|
||||||
|
|
||||||
<div class="col-sm-2">
|
<div class="col">
|
||||||
<div class="btn-toolbar" role="toolbar" style="margin-left: 2px">
|
<div class="btn-toolbar" role="toolbar" style="margin-left: 2px">
|
||||||
<div class="btn-group btn-group-sm me-1" role="group">
|
<div class="btn-group btn-group-sm me-1" role="group">
|
||||||
<button
|
<button
|
||||||
class="btn btn-sm btn-secondary me-1"
|
class="btn btn-sm btn-secondary me-1"
|
||||||
|
v-bind:class="{ 'bg-danger' : state.ptt_state === 'True', 'bg-success' : state.ptt_state === 'False'}"
|
||||||
id="ptt_state"
|
id="ptt_state"
|
||||||
type="button"
|
type="button"
|
||||||
data-bs-placement="top"
|
data-bs-placement="top"
|
||||||
|
@ -42,6 +46,7 @@ const settings = useSettingsStore(pinia);
|
||||||
data-bs-toggle="tooltip"
|
data-bs-toggle="tooltip"
|
||||||
data-bs-trigger="hover"
|
data-bs-trigger="hover"
|
||||||
data-bs-html="true"
|
data-bs-html="true"
|
||||||
|
v-bind:class="{ 'bg-danger' : state.busy_state === 'IDLE', 'bg-success' : state.busy_state === 'BUSY'}"
|
||||||
title="TNC busy state: <strong class='text-success'>IDLE</strong> / <strong class='text-danger'>BUSY</strong>"
|
title="TNC busy state: <strong class='text-success'>IDLE</strong> / <strong class='text-danger'>BUSY</strong>"
|
||||||
>
|
>
|
||||||
<i class="bi bi-cpu" style="font-size: 0.8rem"></i>
|
<i class="bi bi-cpu" style="font-size: 0.8rem"></i>
|
||||||
|
@ -61,7 +66,7 @@ const settings = useSettingsStore(pinia);
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
<button
|
<button
|
||||||
class="btn btn-sm btn-secondary me-1"
|
class="btn btn-sm btn-secondary me-4"
|
||||||
id="arq_state"
|
id="arq_state"
|
||||||
type="button"
|
type="button"
|
||||||
data-bs-placement="top"
|
data-bs-placement="top"
|
||||||
|
@ -90,218 +95,116 @@ const settings = useSettingsStore(pinia);
|
||||||
</button>
|
</button>
|
||||||
-->
|
-->
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-sm-3">
|
|
||||||
<div class="input-group input-group-sm">
|
|
||||||
<div class="btn-group dropup me-1">
|
<div class="btn-group btn-group-sm me-1" role="group">
|
||||||
<button
|
<button
|
||||||
|
class="btn btn-sm btn-secondary me-4"
|
||||||
type="button"
|
type="button"
|
||||||
class="btn btn-sm btn-secondary dropdown-toggle"
|
data-bs-placement="top"
|
||||||
data-bs-toggle="dropdown"
|
|
||||||
aria-expanded="false"
|
|
||||||
id="frequency"
|
|
||||||
>
|
|
||||||
---
|
|
||||||
</button>
|
|
||||||
<form class="dropdown-menu p-2">
|
|
||||||
<div class="input-group input-group-sm">
|
|
||||||
<input
|
|
||||||
type="text"
|
|
||||||
class="form-control"
|
|
||||||
style="max-width: 6rem"
|
|
||||||
placeholder="7053000"
|
|
||||||
pattern="[0-9]*"
|
|
||||||
id="newFrequency"
|
|
||||||
maxlength="11"
|
|
||||||
aria-label="Input group"
|
|
||||||
aria-describedby="btnGroupAddon"
|
|
||||||
/>
|
|
||||||
<span class="input-group-text">Hz</span>
|
|
||||||
<button
|
|
||||||
class="btn btn-sm btn-success"
|
|
||||||
id="saveFrequency"
|
|
||||||
type="button"
|
|
||||||
data-bs-placement="bottom"
|
|
||||||
data-bs-toggle="tooltip"
|
data-bs-toggle="tooltip"
|
||||||
data-bs-trigger="hover"
|
data-bs-trigger="hover"
|
||||||
data-bs-html="false"
|
data-bs-html="true"
|
||||||
title="save frequency"
|
|
||||||
>
|
>
|
||||||
<i class="bi bi-check-lg" style="font-size: 0.8rem"></i>
|
{{state.frequency}} Hz
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
<!--
|
|
||||||
<div class="btn-group dropup me-1">
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="btn btn-sm btn-secondary dropdown-toggle"
|
|
||||||
data-bs-toggle="dropdown"
|
|
||||||
aria-expanded="false"
|
|
||||||
id="mode"
|
|
||||||
>
|
|
||||||
---
|
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
|
|
||||||
<form class="dropdown-menu p-2">
|
</div>
|
||||||
<button
|
|
||||||
type="button"
|
<div class="btn-group btn-group-sm me-1" role="group">
|
||||||
class="btn btn-sm btn-secondary"
|
|
||||||
data-bs-placement="bottom"
|
|
||||||
data-bs-toggle="tooltip"
|
|
||||||
data-bs-trigger="hover"
|
|
||||||
data-bs-html="false"
|
|
||||||
title="set FM"
|
|
||||||
id="saveModeFM"
|
|
||||||
>
|
|
||||||
FM
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="btn btn-sm btn-secondary"
|
|
||||||
data-bs-placement="bottom"
|
|
||||||
data-bs-toggle="tooltip"
|
|
||||||
data-bs-trigger="hover"
|
|
||||||
data-bs-html="false"
|
|
||||||
title="set AM"
|
|
||||||
id="saveModeAM"
|
|
||||||
>
|
|
||||||
AM
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="btn btn-sm btn-secondary"
|
|
||||||
data-bs-placement="bottom"
|
|
||||||
data-bs-toggle="tooltip"
|
|
||||||
data-bs-trigger="hover"
|
|
||||||
data-bs-html="false"
|
|
||||||
title="set LSB"
|
|
||||||
id="saveModeLSB"
|
|
||||||
>
|
|
||||||
LSB
|
|
||||||
</button>
|
|
||||||
<hr />
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="btn btn-sm btn-secondary"
|
|
||||||
data-bs-placement="bottom"
|
|
||||||
data-bs-toggle="tooltip"
|
|
||||||
data-bs-trigger="hover"
|
|
||||||
data-bs-html="false"
|
|
||||||
title="set USB"
|
|
||||||
id="saveModeUSB"
|
|
||||||
>
|
|
||||||
USB
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="btn btn-sm btn-secondary"
|
|
||||||
data-bs-placement="bottom"
|
|
||||||
data-bs-toggle="tooltip"
|
|
||||||
data-bs-trigger="hover"
|
|
||||||
data-bs-html="false"
|
|
||||||
title="set PKTUSB"
|
|
||||||
id="saveModePKTUSB"
|
|
||||||
>
|
|
||||||
PKTUSB
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="btn btn-sm btn-secondary"
|
|
||||||
data-bs-placement="bottom"
|
|
||||||
data-bs-toggle="tooltip"
|
|
||||||
data-bs-trigger="hover"
|
|
||||||
data-bs-html="false"
|
|
||||||
title="set DIGU"
|
|
||||||
id="saveModeDIGU"
|
|
||||||
>
|
|
||||||
DIGU
|
|
||||||
</button>
|
|
||||||
|
|
||||||
<button
|
<button
|
||||||
|
class="btn btn-sm btn-secondary me-0"
|
||||||
type="button"
|
type="button"
|
||||||
class="btn btn-sm btn-secondary"
|
data-bs-placement="top"
|
||||||
data-bs-placement="bottom"
|
|
||||||
data-bs-toggle="tooltip"
|
data-bs-toggle="tooltip"
|
||||||
data-bs-trigger="hover"
|
data-bs-trigger="hover"
|
||||||
data-bs-html="false"
|
data-bs-html="true"
|
||||||
title="set DIGL"
|
|
||||||
id="saveModeDIGL"
|
|
||||||
>
|
>
|
||||||
DIGL
|
|
||||||
</button>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
-->
|
|
||||||
|
|
||||||
<!--
|
|
||||||
<div class="btn-group dropup">
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="btn btn-sm btn-secondary dropdown-toggle"
|
|
||||||
data-bs-toggle="dropdown"
|
|
||||||
aria-expanded="false"
|
|
||||||
id="bandwidth"
|
|
||||||
>
|
|
||||||
---
|
|
||||||
</button>
|
|
||||||
<form class="dropdown-menu p-2">
|
|
||||||
<div class="input-group input-group-sm">...soon...</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
-->
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-sm-3">
|
|
||||||
<div class="input-group input-group-sm">
|
|
||||||
<span class="input-group-text">
|
|
||||||
<i class="bi bi-speedometer2" style="font-size: 1rem"></i>
|
<i class="bi bi-speedometer2" style="font-size: 1rem"></i>
|
||||||
</span>
|
</button>
|
||||||
<span
|
|
||||||
class="input-group-text"
|
|
||||||
data-bs-placement="bottom"
|
<button
|
||||||
|
class="btn btn-sm btn-secondary me-4"
|
||||||
|
type="button"
|
||||||
|
data-bs-placement="top"
|
||||||
data-bs-toggle="tooltip"
|
data-bs-toggle="tooltip"
|
||||||
data-bs-trigger="hover"
|
data-bs-trigger="hover"
|
||||||
data-bs-html="false"
|
data-bs-html="true"
|
||||||
title="actual speed level"
|
|
||||||
>
|
>
|
||||||
<i
|
|
||||||
id="speed_level"
|
|
||||||
class="bi bi-reception-0"
|
<i class="bi " style="font-size: 1rem"
|
||||||
style="font-size: 1rem"
|
v-bind:class="{ 'bi-reception-0' : state.speed_level === '0',
|
||||||
|
'bi-reception-1' : state.speed_level === '1',
|
||||||
|
'bi-reception-2' : state.speed_level === '2',
|
||||||
|
'bi-reception-3' : state.speed_level === '3',
|
||||||
|
'bi-reception-4' : state.speed_level === '4',
|
||||||
|
}"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
></i>
|
></i>
|
||||||
</span>
|
</button>
|
||||||
<span class="input-group-text">
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="btn-group btn-group-sm me-1" role="group">
|
||||||
|
|
||||||
|
<button
|
||||||
|
class="btn btn-sm btn-secondary me-0"
|
||||||
|
type="button"
|
||||||
|
data-bs-placement="top"
|
||||||
|
data-bs-toggle="tooltip"
|
||||||
|
data-bs-trigger="hover"
|
||||||
|
data-bs-html="true"
|
||||||
|
>
|
||||||
<i class="bi bi-file-earmark-binary" style="font-size: 1rem"></i>
|
<i class="bi bi-file-earmark-binary" style="font-size: 1rem"></i>
|
||||||
</span>
|
</button>
|
||||||
<span
|
|
||||||
class="input-group-text"
|
|
||||||
id="total_bytes"
|
<button
|
||||||
data-bs-placement="bottom"
|
class="btn btn-sm btn-secondary me-4"
|
||||||
|
type="button"
|
||||||
|
data-bs-placement="top"
|
||||||
data-bs-toggle="tooltip"
|
data-bs-toggle="tooltip"
|
||||||
data-bs-trigger="hover"
|
data-bs-trigger="hover"
|
||||||
data-bs-html="false"
|
data-bs-html="true"
|
||||||
title="total bytes processed"
|
|
||||||
>---</span
|
|
||||||
>
|
>
|
||||||
<span
|
{{state.arq_total_bytes}}
|
||||||
class="input-group-text"
|
</button>
|
||||||
|
</div>
|
||||||
|
<div class="btn-group btn-group-sm me-1" role="group">
|
||||||
|
<button
|
||||||
|
class="btn btn-sm btn-secondary me-0"
|
||||||
|
type="button"
|
||||||
|
data-bs-placement="top"
|
||||||
data-bs-toggle="tooltip"
|
data-bs-toggle="tooltip"
|
||||||
data-bs-trigger="hover"
|
data-bs-trigger="hover"
|
||||||
title="Indicates if a session is active"
|
data-bs-html="true"
|
||||||
><span class="bi bi-chat-fill" id="spnConnectedWith"></span
|
|
||||||
></span>
|
|
||||||
<span
|
|
||||||
class="input-group-text"
|
|
||||||
id="txtConnectedWith"
|
|
||||||
data-bs-toggle="tooltip"
|
|
||||||
data-bs-trigger="hover"
|
|
||||||
title="Connected with"
|
|
||||||
>------</span
|
|
||||||
>
|
>
|
||||||
|
<i class="bi bi-file-earmark-binary" style="font-size: 1rem"></i>
|
||||||
|
</button>
|
||||||
|
|
||||||
|
|
||||||
|
<button
|
||||||
|
class="btn btn-sm btn-secondary me-1"
|
||||||
|
type="button"
|
||||||
|
data-bs-placement="top"
|
||||||
|
data-bs-toggle="tooltip"
|
||||||
|
data-bs-trigger="hover"
|
||||||
|
data-bs-html="true"
|
||||||
|
>
|
||||||
|
------
|
||||||
|
</button>
|
||||||
|
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-4">
|
<div class="col-lg-4">
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
var net = require("net");
|
var net = require("net");
|
||||||
const path = require("path");
|
const path = require("path");
|
||||||
const { ipcRenderer } = require("electron");
|
|
||||||
const FD = require("./src/js/freedata.js");
|
const FD = require("./src/js/freedata.js");
|
||||||
//import FD from './freedata.js';
|
//import FD from './freedata.js';
|
||||||
|
|
||||||
|
@ -166,28 +165,39 @@ client.on("data", function (socketdata) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (data["command"] == "tnc_state") {
|
if (data["command"] == "tnc_state") {
|
||||||
//console.log(data)
|
console.log(data)
|
||||||
// set length of RX Buffer to global variable
|
// set length of RX Buffer to global variable
|
||||||
rxBufferLengthTnc = data["rx_buffer_length"];
|
rxBufferLengthTnc = data["rx_buffer_length"];
|
||||||
//rxMsgBufferLengthTnc = data["rx_msg_buffer_length"];
|
//rxMsgBufferLengthTnc = data["rx_msg_buffer_length"];
|
||||||
|
|
||||||
|
stateStore.frequency = data["frequency"]
|
||||||
|
stateStore.busy_state = data["tnc_state"]
|
||||||
|
stateStore.arq_state = data["arq_state"]
|
||||||
|
stateStore.mode = data["mode"]
|
||||||
|
stateStore.bandwidth = data["bandwidth"]
|
||||||
|
stateStore.dbfs_level = data["audio_dbfs"]
|
||||||
|
stateStore.ptt_state = data["ptt_state"]
|
||||||
|
stateStore.speed_level = data["speed_level"]
|
||||||
|
stateStore.fft = data["fft"]
|
||||||
|
stateStore.channel_busy = data["channel_busy"]
|
||||||
|
stateStore.channel_busy_slot = data["channel_busy_slot"]
|
||||||
|
stateStore.scatter = data["scatter"]
|
||||||
|
// s meter strength
|
||||||
|
stateStore.s_meter_strength_raw = data["strength"]
|
||||||
|
// https://www.moellerstudios.org/converting-amplitude-representations/
|
||||||
|
var noise_level = Math.round(Math.pow(10, stateStore.s_meter_strength_raw / 20) * 100);
|
||||||
|
stateStore.s_meter_strength_percent = noise_level
|
||||||
|
|
||||||
|
stateStore.arq_total_bytes = data["total_bytes"]
|
||||||
|
|
||||||
|
|
||||||
|
// TODO: Remove ported objects
|
||||||
let Data = {
|
let Data = {
|
||||||
mycallsign: data["mycallsign"],
|
mycallsign: data["mycallsign"],
|
||||||
mygrid: data["mygrid"],
|
mygrid: data["mygrid"],
|
||||||
ptt_state: data["ptt_state"],
|
|
||||||
busy_state: data["tnc_state"],
|
|
||||||
arq_state: data["arq_state"],
|
|
||||||
arq_session: data["arq_session"],
|
arq_session: data["arq_session"],
|
||||||
//channel_state: data['CHANNEL_STATE'],
|
//channel_state: data['CHANNEL_STATE'],
|
||||||
frequency: data["frequency"],
|
|
||||||
speed_level: data["speed_level"],
|
|
||||||
mode: data["mode"],
|
|
||||||
bandwidth: data["bandwidth"],
|
|
||||||
dbfs_level: data["audio_dbfs"],
|
|
||||||
fft: data["fft"],
|
|
||||||
channel_busy: data["channel_busy"],
|
|
||||||
channel_busy_slot: data["channel_busy_slot"],
|
|
||||||
scatter: data["scatter"],
|
|
||||||
info: data["info"],
|
info: data["info"],
|
||||||
rx_buffer_length: data["rx_buffer_length"],
|
rx_buffer_length: data["rx_buffer_length"],
|
||||||
rx_msg_buffer_length: data["rx_msg_buffer_length"],
|
rx_msg_buffer_length: data["rx_msg_buffer_length"],
|
||||||
|
@ -213,12 +223,11 @@ client.on("data", function (socketdata) {
|
||||||
listen: data["listen"],
|
listen: data["listen"],
|
||||||
audio_recording: data["audio_recording"],
|
audio_recording: data["audio_recording"],
|
||||||
speed_list: data["speed_list"],
|
speed_list: data["speed_list"],
|
||||||
strength: data["strength"],
|
|
||||||
is_codec2_traffic: data["is_codec2_traffic"],
|
is_codec2_traffic: data["is_codec2_traffic"],
|
||||||
//speed_table: [{"bpm" : 5200, "snr": -3, "timestamp":1673555399},{"bpm" : 2315, "snr": 12, "timestamp":1673555500}],
|
//speed_table: [{"bpm" : 5200, "snr": -3, "timestamp":1673555399},{"bpm" : 2315, "snr": 12, "timestamp":1673555500}],
|
||||||
};
|
};
|
||||||
|
|
||||||
ipcRenderer.send("request-update-tnc-state", Data);
|
//ipcRenderer.send("request-update-tnc-state", Data);
|
||||||
//continue to next for loop iteration, nothing else needs to be done here
|
//continue to next for loop iteration, nothing else needs to be done here
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
@ -228,9 +237,9 @@ client.on("data", function (socketdata) {
|
||||||
switch (data["fec"]) {
|
switch (data["fec"]) {
|
||||||
case "is_writing":
|
case "is_writing":
|
||||||
// RX'd FECiswriting
|
// RX'd FECiswriting
|
||||||
ipcRenderer.send("request-show-fec-toast-iswriting", {
|
//ipcRenderer.send("request-show-fec-toast-iswriting", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "broadcast":
|
case "broadcast":
|
||||||
|
@ -246,81 +255,81 @@ client.on("data", function (socketdata) {
|
||||||
let Messages = {
|
let Messages = {
|
||||||
data: messageArray,
|
data: messageArray,
|
||||||
};
|
};
|
||||||
ipcRenderer.send("request-new-msg-received", Messages);
|
//ipcRenderer.send("request-new-msg-received", Messages);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (data["cq"]) {
|
switch (data["cq"]) {
|
||||||
case "transmitting":
|
case "transmitting":
|
||||||
// CQ TRANSMITTING
|
// CQ TRANSMITTING
|
||||||
ipcRenderer.send("request-show-cq-toast-transmitting", {
|
//ipcRenderer.send("request-show-cq-toast-transmitting", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "received":
|
case "received":
|
||||||
// CQ RECEIVED
|
// CQ RECEIVED
|
||||||
ipcRenderer.send("request-show-cq-toast-received", {
|
//ipcRenderer.send("request-show-cq-toast-received", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (data["qrv"]) {
|
switch (data["qrv"]) {
|
||||||
case "transmitting":
|
case "transmitting":
|
||||||
// QRV TRANSMITTING
|
// QRV TRANSMITTING
|
||||||
ipcRenderer.send("request-show-qrv-toast-transmitting", {
|
//ipcRenderer.send("request-show-qrv-toast-transmitting", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "received":
|
case "received":
|
||||||
// QRV RECEIVED
|
// QRV RECEIVED
|
||||||
ipcRenderer.send("request-show-qrv-toast-received", {
|
//ipcRenderer.send("request-show-qrv-toast-received", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (data["beacon"]) {
|
switch (data["beacon"]) {
|
||||||
case "transmitting":
|
case "transmitting":
|
||||||
// BEACON TRANSMITTING
|
// BEACON TRANSMITTING
|
||||||
ipcRenderer.send("request-show-beacon-toast-transmitting", {
|
//ipcRenderer.send("request-show-beacon-toast-transmitting", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "received":
|
case "received":
|
||||||
// BEACON RECEIVED
|
// BEACON RECEIVED
|
||||||
ipcRenderer.send("request-show-beacon-toast-received", {
|
//ipcRenderer.send("request-show-beacon-toast-received", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
ipcRenderer.send("request-new-msg-received", { data: [data] });
|
//ipcRenderer.send("request-new-msg-received", { data: [data] });
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (data["ping"]) {
|
switch (data["ping"]) {
|
||||||
case "transmitting":
|
case "transmitting":
|
||||||
// PING TRANSMITTING
|
// PING TRANSMITTING
|
||||||
ipcRenderer.send("request-show-ping-toast-transmitting", {
|
//ipcRenderer.send("request-show-ping-toast-transmitting", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "received":
|
case "received":
|
||||||
// PING RECEIVED
|
// PING RECEIVED
|
||||||
ipcRenderer.send("request-show-ping-toast-received", {
|
//ipcRenderer.send("request-show-ping-toast-received", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
ipcRenderer.send("request-new-msg-received", { data: [data] });
|
//ipcRenderer.send("request-new-msg-received", { data: [data] });
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "acknowledge":
|
case "acknowledge":
|
||||||
// PING ACKNOWLEDGE
|
// PING ACKNOWLEDGE
|
||||||
ipcRenderer.send("request-show-ping-toast-received-ack", {
|
//ipcRenderer.send("request-show-ping-toast-received-ack", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
ipcRenderer.send("request-new-msg-received", { data: [data] });
|
//ipcRenderer.send("request-new-msg-received", { data: [data] });
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -329,37 +338,37 @@ client.on("data", function (socketdata) {
|
||||||
switch (data["status"]) {
|
switch (data["status"]) {
|
||||||
case "connecting":
|
case "connecting":
|
||||||
// ARQ Open
|
// ARQ Open
|
||||||
ipcRenderer.send("request-show-arq-toast-session-connecting", {
|
//ipcRenderer.send("request-show-arq-toast-session-connecting", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "connected":
|
case "connected":
|
||||||
// ARQ Opening
|
// ARQ Opening
|
||||||
ipcRenderer.send("request-show-arq-toast-session-connected", {
|
//ipcRenderer.send("request-show-arq-toast-session-connected", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "waiting":
|
case "waiting":
|
||||||
// ARQ Opening
|
// ARQ Opening
|
||||||
ipcRenderer.send("request-show-arq-toast-session-waiting", {
|
//ipcRenderer.send("request-show-arq-toast-session-waiting", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "close":
|
case "close":
|
||||||
// ARQ Closing
|
// ARQ Closing
|
||||||
ipcRenderer.send("request-show-arq-toast-session-close", {
|
//ipcRenderer.send("request-show-arq-toast-session-close", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "failed":
|
case "failed":
|
||||||
// ARQ Failed
|
// ARQ Failed
|
||||||
ipcRenderer.send("request-show-arq-toast-session-failed", {
|
//ipcRenderer.send("request-show-arq-toast-session-failed", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -368,81 +377,86 @@ client.on("data", function (socketdata) {
|
||||||
switch (data["status"]) {
|
switch (data["status"]) {
|
||||||
case "opened":
|
case "opened":
|
||||||
// ARQ Open
|
// ARQ Open
|
||||||
ipcRenderer.send("request-show-arq-toast-datachannel-opened", {
|
//ipcRenderer.send("request-show-arq-toast-datachannel-opened", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "opening":
|
case "opening":
|
||||||
// ARQ Opening IRS/ISS
|
// ARQ Opening IRS/ISS
|
||||||
if (data["irs"] == "False") {
|
if (data["irs"] == "False") {
|
||||||
ipcRenderer.send("request-show-arq-toast-datachannel-opening", {
|
//ipcRenderer.send("request-show-arq-toast-datachannel-opening", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
ipcRenderer.send("request-update-transmission-status", {
|
//ipcRenderer.send("request-update-transmission-status", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
|
break;
|
||||||
} else {
|
} else {
|
||||||
ipcRenderer.send(
|
//ipcRenderer.send(
|
||||||
"request-show-arq-toast-datachannel-received-opener",
|
// "request-show-arq-toast-datachannel-received-opener",
|
||||||
{ data: [data] },
|
// { data: [data] },
|
||||||
);
|
//);
|
||||||
ipcRenderer.send("request-update-reception-status", {
|
//ipcRenderer.send("request-update-reception-status", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
|
break;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "waiting":
|
case "waiting":
|
||||||
// ARQ waiting
|
// ARQ waiting
|
||||||
ipcRenderer.send("request-show-arq-toast-datachannel-waiting", {
|
//ipcRenderer.send("request-show-arq-toast-datachannel-waiting", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "receiving":
|
case "receiving":
|
||||||
// ARQ RX
|
// ARQ RX
|
||||||
ipcRenderer.send("request-update-reception-status", {
|
//ipcRenderer.send("request-update-reception-status", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "failed":
|
case "failed":
|
||||||
// ARQ TX Failed
|
// ARQ TX Failed
|
||||||
if (data["reason"] == "protocol version missmatch") {
|
if (data["reason"] == "protocol version missmatch") {
|
||||||
ipcRenderer.send(
|
//ipcRenderer.send(
|
||||||
"request-show-arq-toast-transmission-failed-ver",
|
// "request-show-arq-toast-transmission-failed-ver",
|
||||||
{ data: [data] },
|
// { data: [data] },
|
||||||
);
|
break;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
ipcRenderer.send("request-show-arq-toast-transmission-failed", {
|
//ipcRenderer.send("request-show-arq-toast-transmission-failed", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
switch (data["irs"]) {
|
switch (data["irs"]) {
|
||||||
case "True":
|
case "True":
|
||||||
ipcRenderer.send("request-update-reception-status", {
|
//ipcRenderer.send("request-update-reception-status", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
ipcRenderer.send("request-update-transmission-status", {
|
//ipcRenderer.send("request-update-transmission-status", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "received":
|
case "received":
|
||||||
// ARQ Received
|
// ARQ Received
|
||||||
ipcRenderer.send("request-show-arq-toast-transmission-received", {
|
//ipcRenderer.send("request-show-arq-toast-transmission-received", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
|
|
||||||
ipcRenderer.send("request-update-reception-status", {
|
//ipcRenderer.send("request-update-reception-status", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
|
|
||||||
dataArray = [];
|
dataArray = [];
|
||||||
messageArray = [];
|
messageArray = [];
|
||||||
|
@ -466,41 +480,42 @@ client.on("data", function (socketdata) {
|
||||||
let Files = {
|
let Files = {
|
||||||
data: dataArray,
|
data: dataArray,
|
||||||
};
|
};
|
||||||
ipcRenderer.send("request-update-rx-buffer", Files);
|
//ipcRenderer.send("request-update-rx-buffer", Files);
|
||||||
ipcRenderer.send("request-new-msg-received", Files);
|
//ipcRenderer.send("request-new-msg-received", Files);
|
||||||
|
|
||||||
//rxMsgBufferLengthGui = messageArray.length;
|
//rxMsgBufferLengthGui = messageArray.length;
|
||||||
let Messages = {
|
let Messages = {
|
||||||
data: messageArray,
|
data: messageArray,
|
||||||
};
|
};
|
||||||
ipcRenderer.send("request-new-msg-received", Messages);
|
//ipcRenderer.send("request-new-msg-received", Messages);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "transmitting":
|
case "transmitting":
|
||||||
// ARQ transmitting
|
// ARQ transmitting
|
||||||
ipcRenderer.send(
|
//ipcRenderer.send(
|
||||||
"request-show-arq-toast-transmission-transmitting",
|
// "request-show-arq-toast-transmission-transmitting",
|
||||||
{ data: [data] },
|
// { data: [data] },
|
||||||
);
|
//);
|
||||||
ipcRenderer.send("request-update-transmission-status", {
|
//ipcRenderer.send("request-update-transmission-status", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "transmitted":
|
case "transmitted":
|
||||||
// ARQ transmitted
|
// ARQ transmitted
|
||||||
ipcRenderer.send(
|
//ipcRenderer.send(
|
||||||
"request-show-arq-toast-transmission-transmitted",
|
// "request-show-arq-toast-transmission-transmitted",
|
||||||
{ data: [data] },
|
// { data: [data] },
|
||||||
);
|
//);
|
||||||
ipcRenderer.send("request-update-transmission-status", {
|
//ipcRenderer.send("request-update-transmission-status", {
|
||||||
data: [data],
|
// data: [data],
|
||||||
});
|
//});
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// ----------- catch tnc info messages END -----------
|
// ----------- catch tnc info messages END -----------
|
||||||
|
|
||||||
// if we manually checking for the rx buffer we are getting an array of multiple data
|
// if we manually checking for the rx buffer we are getting an array of multiple data
|
||||||
|
@ -533,20 +548,21 @@ client.on("data", function (socketdata) {
|
||||||
let Files = {
|
let Files = {
|
||||||
data: dataArray,
|
data: dataArray,
|
||||||
};
|
};
|
||||||
ipcRenderer.send("request-update-rx-buffer", Files);
|
//ipcRenderer.send("request-update-rx-buffer", Files);
|
||||||
|
|
||||||
//rxMsgBufferLengthGui = messageArray.length;
|
//rxMsgBufferLengthGui = messageArray.length;
|
||||||
let Messages = {
|
let Messages = {
|
||||||
data: messageArray,
|
data: messageArray,
|
||||||
};
|
};
|
||||||
//ipcRenderer.send('request-update-rx-msg-buffer', Messages);
|
////ipcRenderer.send('request-update-rx-msg-buffer', Messages);
|
||||||
ipcRenderer.send("request-new-msg-received", Messages);
|
//ipcRenderer.send("request-new-msg-received", Messages);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//finally delete message buffer
|
//finally delete message buffer
|
||||||
socketchunk = "";
|
socketchunk = "";
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
function hexToBytes(hex) {
|
function hexToBytes(hex) {
|
||||||
|
@ -922,7 +938,8 @@ function set_mode(mode){
|
||||||
writeTncCommand(command);
|
writeTncCommand(command);
|
||||||
};
|
};
|
||||||
|
|
||||||
ipcRenderer.on("action-update-tnc-ip", (event, arg) => {
|
/*
|
||||||
|
//ipcRenderer.on("action-update-tnc-ip", (event, arg) => {
|
||||||
client.destroy();
|
client.destroy();
|
||||||
let Data = {
|
let Data = {
|
||||||
busy_state: "-",
|
busy_state: "-",
|
||||||
|
@ -933,11 +950,13 @@ ipcRenderer.on("action-update-tnc-ip", (event, arg) => {
|
||||||
bandwidth: "-",
|
bandwidth: "-",
|
||||||
dbfs_level: 0,
|
dbfs_level: 0,
|
||||||
};
|
};
|
||||||
ipcRenderer.send("request-update-tnc-state", Data);
|
//ipcRenderer.send("request-update-tnc-state", Data);
|
||||||
tnc_port = arg.port;
|
//tnc_port = arg.port;
|
||||||
tnc_host = arg.adress;
|
//tnc_host = arg.adress;
|
||||||
connectTNC();
|
connectTNC();
|
||||||
});
|
});
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
// https://stackoverflow.com/a/50579690
|
// https://stackoverflow.com/a/50579690
|
||||||
// crc32 calculation
|
// crc32 calculation
|
||||||
|
|
|
@ -9,12 +9,22 @@ export const useStateStore = defineStore('stateStore', () => {
|
||||||
var mode = ref("-")
|
var mode = ref("-")
|
||||||
var bandwidth = ref("-")
|
var bandwidth = ref("-")
|
||||||
var dbfs_level = ref(0)
|
var dbfs_level = ref(0)
|
||||||
|
var ptt_state = ref("False")
|
||||||
|
|
||||||
|
var speed_level = ref(0)
|
||||||
|
var fft = ref()
|
||||||
|
var channel_busy = ref("False")
|
||||||
|
var channel_busy_slot = ref()
|
||||||
|
var scatter = ref()
|
||||||
|
var s_meter_strength_percent = ref(0)
|
||||||
|
var s_meter_strength_raw = ref(0)
|
||||||
|
|
||||||
var tnc_connection = ref("disconnected")
|
var tnc_connection = ref("disconnected")
|
||||||
var tncStartCount = ref(0)
|
var tncStartCount = ref(0)
|
||||||
|
|
||||||
var tnc_running_state = ref(0)
|
var tnc_running_state = ref(0)
|
||||||
|
|
||||||
|
var arq_total_bytes = ref(0)
|
||||||
|
|
||||||
|
|
||||||
function updateTncState(state){
|
function updateTncState(state){
|
||||||
|
|
||||||
|
@ -82,5 +92,5 @@ export const useStateStore = defineStore('stateStore', () => {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
return { busy_state, arq_state, frequency, mode, bandwidth, dbfs_level, updateTncState };
|
return { busy_state, arq_state, frequency, mode, bandwidth, dbfs_level, speed_level, fft, channel_busy, channel_busy_slot, scatter, ptt_state, s_meter_strength_percent, s_meter_strength_raw, arq_total_bytes, updateTncState };
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in a new issue