mirror of
https://github.com/DJ2LS/FreeDATA
synced 2024-05-14 08:04:33 +00:00
gui related renaning TNC -> Modem
This commit is contained in:
parent
0cb16805bd
commit
b11e820ebc
|
@ -142,7 +142,7 @@ function newChat(obj) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function syncWithTNC(){
|
function syncWithModem(){
|
||||||
|
|
||||||
getRxBuffer()
|
getRxBuffer()
|
||||||
}
|
}
|
||||||
|
@ -207,8 +207,8 @@ getRxBuffer()
|
||||||
|
|
||||||
<div class="input-group mb-0 p-0 ">
|
<div class="input-group mb-0 p-0 ">
|
||||||
|
|
||||||
<button type="button" class="btn btn-outline-secondary" @click="syncWithTNC()">
|
<button type="button" class="btn btn-outline-secondary" @click="syncWithModem()">
|
||||||
TNC Sync
|
Modem Sync
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -289,7 +289,7 @@ const speedChartData = computed(() => ({
|
||||||
|
|
||||||
<!-- Emoji Picker Modal -->
|
<!-- Emoji Picker Modal -->
|
||||||
<div class="modal fade" id="emojiPickerModal" tabindex="-1" aria-hidden="true">
|
<div class="modal fade" id="emojiPickerModal" tabindex="-1" aria-hidden="true">
|
||||||
<div class="modal-dialog modal-sm">
|
<div class="modal-dialog modal-dialog-centered modal-sm">
|
||||||
<div class="modal-content">
|
<div class="modal-content">
|
||||||
<div class="modal-body p-0">
|
<div class="modal-body p-0">
|
||||||
<VuemojiPicker @emojiClick="handleEmojiClick" />
|
<VuemojiPicker @emojiClick="handleEmojiClick" />
|
||||||
|
|
|
@ -70,11 +70,11 @@ function openWebExternal(url) {
|
||||||
>
|
>
|
||||||
<a
|
<a
|
||||||
class="list-group-item list-group-item-action active"
|
class="list-group-item list-group-item-action active"
|
||||||
id="list-tnc-list"
|
id="list-modem-list"
|
||||||
data-bs-toggle="list"
|
data-bs-toggle="list"
|
||||||
href="#list-tnc"
|
href="#list-modem"
|
||||||
role="tab"
|
role="tab"
|
||||||
aria-controls="list-tnc"
|
aria-controls="list-modem"
|
||||||
title="Home"
|
title="Home"
|
||||||
><i class="bi bi-house-door-fill h3"></i
|
><i class="bi bi-house-door-fill h3"></i
|
||||||
></a>
|
></a>
|
||||||
|
@ -150,9 +150,9 @@ function openWebExternal(url) {
|
||||||
<div class="tab-content" id="nav-tabContent-settings">
|
<div class="tab-content" id="nav-tabContent-settings">
|
||||||
<div
|
<div
|
||||||
class="tab-pane fade show active"
|
class="tab-pane fade show active"
|
||||||
id="list-tnc"
|
id="list-modem"
|
||||||
role="tabpanel"
|
role="tabpanel"
|
||||||
aria-labelledby="list-tnc-list"
|
aria-labelledby="list-modem-list"
|
||||||
>
|
>
|
||||||
<!-- TOP NAVBAR -->
|
<!-- TOP NAVBAR -->
|
||||||
<main_top_navbar />
|
<main_top_navbar />
|
||||||
|
@ -368,7 +368,7 @@ function openWebExternal(url) {
|
||||||
</h1>
|
</h1>
|
||||||
|
|
||||||
<h4 class="fs-5">
|
<h4 class="fs-5">
|
||||||
tnc version - {{ state.tnc_version }}
|
modem version - {{ state.modem_version }}
|
||||||
</h4>
|
</h4>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -44,7 +44,7 @@ const state = useStateStore(pinia);
|
||||||
'bg-danger': state.busy_state === 'BUSY',
|
'bg-danger': state.busy_state === 'BUSY',
|
||||||
'bg-secondary': state.busy_state === 'IDLE',
|
'bg-secondary': state.busy_state === 'IDLE',
|
||||||
}"
|
}"
|
||||||
title="TNC state"
|
title="Modem state"
|
||||||
disabled
|
disabled
|
||||||
style="pointer-events: auto;"
|
style="pointer-events: auto;"
|
||||||
>
|
>
|
||||||
|
@ -248,3 +248,4 @@ const state = useStateStore(pinia);
|
||||||
</div>
|
</div>
|
||||||
</nav>
|
</nav>
|
||||||
</template>
|
</template>
|
||||||
|
ww
|
|
@ -460,7 +460,7 @@ ChartJS.register(
|
||||||
for="local-remote-switch1"
|
for="local-remote-switch1"
|
||||||
>
|
>
|
||||||
<i class="bi bi-pc-display-horizontal"></i>
|
<i class="bi bi-pc-display-horizontal"></i>
|
||||||
<span class="ms-2 me-2">Local tnc</span>
|
<span class="ms-2 me-2">Local modem</span>
|
||||||
</label>
|
</label>
|
||||||
<input
|
<input
|
||||||
type="radio"
|
type="radio"
|
||||||
|
@ -474,7 +474,7 @@ ChartJS.register(
|
||||||
for="local-remote-switch2"
|
for="local-remote-switch2"
|
||||||
>
|
>
|
||||||
<i class="bi bi-ethernet"></i>
|
<i class="bi bi-ethernet"></i>
|
||||||
<span class="ms-2 me-2">Remote tnc</span>
|
<span class="ms-2 me-2">Remote modem</span>
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
</h5>
|
</h5>
|
||||||
|
@ -489,7 +489,7 @@ ChartJS.register(
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<h5 class="card-title">
|
<h5 class="card-title">
|
||||||
<div class="input-group input-group-sm me-2">
|
<div class="input-group input-group-sm me-2">
|
||||||
<span class="input-group-text">tnc ip</span>
|
<span class="input-group-text">modem ip</span>
|
||||||
<input
|
<input
|
||||||
type="text"
|
type="text"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
|
@ -521,7 +521,7 @@ ChartJS.register(
|
||||||
</div>
|
</div>
|
||||||
</h5>
|
</h5>
|
||||||
<p class="card-text">
|
<p class="card-text">
|
||||||
Remote IP of TNC. Port is port of daemon. The tnc port will
|
Remote IP of TNC. Port is port of daemon. The modem port will
|
||||||
automatically adjusted. ( daemon port - 1 )
|
automatically adjusted. ( daemon port - 1 )
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
@ -564,7 +564,7 @@ ChartJS.register(
|
||||||
disabled
|
disabled
|
||||||
>
|
>
|
||||||
<i class="bi bi-play-fill"></i>
|
<i class="bi bi-play-fill"></i>
|
||||||
<span class="ms-2">Start tnc</span>
|
<span class="ms-2">Start modem</span>
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
|
@ -576,7 +576,7 @@ ChartJS.register(
|
||||||
disabled
|
disabled
|
||||||
>
|
>
|
||||||
<i class="bi bi-stop-fill"></i>
|
<i class="bi bi-stop-fill"></i>
|
||||||
<span class="ms-2">Stop tnc</span>
|
<span class="ms-2">Stop modem</span>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</h5>
|
</h5>
|
||||||
|
|
|
@ -138,7 +138,7 @@ alert("not yet implemented")
|
||||||
aria-labelledby="list-rig-control-none-list"
|
aria-labelledby="list-rig-control-none-list"
|
||||||
>
|
>
|
||||||
<p class="small">
|
<p class="small">
|
||||||
TNC will not utilize rig control and features will be limited. While
|
Modem will not utilize rig control and features will be limited. While
|
||||||
functional; it is recommended to configure hamlib.
|
functional; it is recommended to configure hamlib.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
@ -271,7 +271,7 @@ alert("not yet implemented")
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!--<div class="card-footer text-muted small" id="hamlib_info_field">
|
<!--<div class="card-footer text-muted small" id="hamlib_info_field">
|
||||||
Define TNC rig control mode (none/hamlib)
|
Define Modem rig control mode (none/hamlib)
|
||||||
</div>
|
</div>
|
||||||
-->
|
-->
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -10,21 +10,21 @@ const state = useStateStore(pinia);
|
||||||
import { useSettingsStore } from "../store/settingsStore.js";
|
import { useSettingsStore } from "../store/settingsStore.js";
|
||||||
const settings = useSettingsStore(pinia);
|
const settings = useSettingsStore(pinia);
|
||||||
|
|
||||||
import { startTNC, stopTNC } from "../js/daemon.js";
|
import { startModem, stopModem } from "../js/daemon.js";
|
||||||
|
|
||||||
function startStopTNC() {
|
function startStopModem() {
|
||||||
switch (state.tnc_running_state) {
|
switch (state.modem_running_state) {
|
||||||
case "stopped":
|
case "stopped":
|
||||||
|
|
||||||
settings.rx_audio = (<HTMLInputElement>document.getElementById("audio_input_selectbox")).value;
|
settings.rx_audio = (<HTMLInputElement>document.getElementById("audio_input_selectbox")).value;
|
||||||
settings.tx_audio = (<HTMLInputElement>document.getElementById("audio_output_selectbox")).value;
|
settings.tx_audio = (<HTMLInputElement>document.getElementById("audio_output_selectbox")).value;
|
||||||
|
|
||||||
|
|
||||||
startTNC();
|
startModem();
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case "running":
|
case "running":
|
||||||
stopTNC();
|
stopModem();
|
||||||
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
@ -36,50 +36,50 @@ function startStopTNC() {
|
||||||
<nav class="navbar bg-body-tertiary border-bottom">
|
<nav class="navbar bg-body-tertiary border-bottom">
|
||||||
<div class="mx-auto">
|
<div class="mx-auto">
|
||||||
<span class="badge bg-secondary me-4"
|
<span class="badge bg-secondary me-4"
|
||||||
>TNC location | {{ settings.tnc_host }}</span
|
>Modem location | {{ settings.modem_host }}</span
|
||||||
>
|
>
|
||||||
|
|
||||||
<span class="badge bg-secondary me-4"
|
<span class="badge bg-secondary me-4"
|
||||||
>Service | {{ state.tnc_running_state }}</span
|
>Service | {{ state.modem_running_state }}</span
|
||||||
>
|
>
|
||||||
|
|
||||||
<div class="btn-group" role="group"></div>
|
<div class="btn-group" role="group"></div>
|
||||||
<div class="btn-group me-4" role="group">
|
<div class="btn-group me-4" role="group">
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
id="startTNC"
|
id="startModem"
|
||||||
class="btn btn-sm btn-outline-success"
|
class="btn btn-sm btn-outline-success"
|
||||||
data-bs-toggle="tooltip"
|
data-bs-toggle="tooltip"
|
||||||
data-bs-trigger="hover"
|
data-bs-trigger="hover"
|
||||||
data-bs-html="false"
|
data-bs-html="false"
|
||||||
title="Start the TNC. Please set your audio and radio settings first!"
|
title="Start the Modem. Please set your audio and radio settings first!"
|
||||||
@click="startStopTNC()"
|
@click="startStopModem()"
|
||||||
v-bind:class="{ disabled: state.tnc_running_state === 'running' }"
|
v-bind:class="{ disabled: state.modem_running_state === 'running' }"
|
||||||
>
|
>
|
||||||
<i class="bi bi-play-fill"></i>
|
<i class="bi bi-play-fill"></i>
|
||||||
<span class="ms-2">start tnc</span>
|
<span class="ms-2">start modem</span>
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
id="stopTNC"
|
id="stopModem"
|
||||||
class="btn btn-sm btn-outline-danger"
|
class="btn btn-sm btn-outline-danger"
|
||||||
data-bs-toggle="tooltip"
|
data-bs-toggle="tooltip"
|
||||||
data-bs-trigger="hover"
|
data-bs-trigger="hover"
|
||||||
data-bs-html="false"
|
data-bs-html="false"
|
||||||
title="Stop the TNC."
|
title="Stop the Modem."
|
||||||
@click="startStopTNC()"
|
@click="startStopModem()"
|
||||||
v-bind:class="{ disabled: state.tnc_running_state === 'stopped' }"
|
v-bind:class="{ disabled: state.modem_running_state === 'stopped' }"
|
||||||
>
|
>
|
||||||
<i class="bi bi-stop-fill"></i>
|
<i class="bi bi-stop-fill"></i>
|
||||||
<span class="ms-2">stop tnc</span>
|
<span class="ms-2">stop modem</span>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
id="openHelpModalStartStopTNC"
|
id="openHelpModalStartStopModem"
|
||||||
data-bs-toggle="modal"
|
data-bs-toggle="modal"
|
||||||
data-bs-target="#startStopTNCHelpModal"
|
data-bs-target="#startStopModemHelpModal"
|
||||||
class="btn me-4 p-0 border-0"
|
class="btn me-4 p-0 border-0"
|
||||||
>
|
>
|
||||||
<i class="bi bi-question-circle" style="font-size: 1rem"></i>
|
<i class="bi bi-question-circle" style="font-size: 1rem"></i>
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
import settings_gui from "./settings_gui.vue";
|
import settings_gui from "./settings_gui.vue";
|
||||||
import settings_chat from "./settings_chat.vue";
|
import settings_chat from "./settings_chat.vue";
|
||||||
import settings_hamlib from "./settings_hamlib.vue";
|
import settings_hamlib from "./settings_hamlib.vue";
|
||||||
import settings_tnc from "./settings_tnc.vue";
|
import settings_modem from "./settings_modem.vue";
|
||||||
import settings_web from "./settings_web.vue";
|
import settings_web from "./settings_web.vue";
|
||||||
import settings_exp from "./settings_exp.vue";
|
import settings_exp from "./settings_exp.vue";
|
||||||
</script>
|
</script>
|
||||||
|
@ -15,7 +15,7 @@ import settings_exp from "./settings_exp.vue";
|
||||||
>
|
>
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="badge text-bg-warning ms-3">
|
<div class="badge text-bg-warning ms-3">
|
||||||
<i class="bi bi-exclamation-triangle"></i> Please restart the TNC after
|
<i class="bi bi-exclamation-triangle"></i> Please restart the modem after
|
||||||
changing settings!
|
changing settings!
|
||||||
</div>
|
</div>
|
||||||
<!-- SETTINGS Nav tabs -->
|
<!-- SETTINGS Nav tabs -->
|
||||||
|
@ -65,15 +65,15 @@ import settings_exp from "./settings_exp.vue";
|
||||||
<li class="nav-item" role="presentation">
|
<li class="nav-item" role="presentation">
|
||||||
<button
|
<button
|
||||||
class="nav-link"
|
class="nav-link"
|
||||||
id="tnc-tab"
|
id="modem-tab"
|
||||||
data-bs-toggle="tab"
|
data-bs-toggle="tab"
|
||||||
data-bs-target="#tnc"
|
data-bs-target="#modem"
|
||||||
type="button"
|
type="button"
|
||||||
role="tab"
|
role="tab"
|
||||||
aria-controls="profile"
|
aria-controls="profile"
|
||||||
aria-selected="false"
|
aria-selected="false"
|
||||||
>
|
>
|
||||||
TNC
|
Modem
|
||||||
</button>
|
</button>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-item" role="presentation">
|
<li class="nav-item" role="presentation">
|
||||||
|
@ -140,12 +140,12 @@ import settings_exp from "./settings_exp.vue";
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
class="tab-pane"
|
class="tab-pane"
|
||||||
id="tnc"
|
id="modem"
|
||||||
role="tabpanel"
|
role="tabpanel"
|
||||||
aria-labelledby="tnc-tab"
|
aria-labelledby="modem-tab"
|
||||||
tabindex="0"
|
tabindex="0"
|
||||||
>
|
>
|
||||||
<settings_tnc />
|
<settings_modem />
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
class="tab-pane"
|
class="tab-pane"
|
||||||
|
|
|
@ -131,7 +131,7 @@ function saveSettings() {
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="input-group input-group-sm mb-1">
|
<div class="input-group input-group-sm mb-1">
|
||||||
<label class="input-group-text w-50">Auto-start TNC/rigctld</label>
|
<label class="input-group-text w-50">Auto-start Modem/rigctld</label>
|
||||||
<label class="input-group-text w-50">
|
<label class="input-group-text w-50">
|
||||||
<div class="form-check form-switch form-check-inline">
|
<div class="form-check form-switch form-check-inline">
|
||||||
<input
|
<input
|
||||||
|
|
|
@ -15,7 +15,7 @@ function saveSettings() {
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="input-group input-group-sm mb-1">
|
<div class="input-group input-group-sm mb-1">
|
||||||
<span class="input-group-text" style="width: 180px">TNC port</span>
|
<span class="input-group-text" style="width: 180px">modem port</span>
|
||||||
<input
|
<input
|
||||||
type="text"
|
type="text"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
|
@ -30,7 +30,7 @@ function saveSettings() {
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="input-group input-group-sm mb-1">
|
<div class="input-group input-group-sm mb-1">
|
||||||
<span class="input-group-text" style="width: 180px">TNC host</span>
|
<span class="input-group-text" style="width: 180px">modem host</span>
|
||||||
<input
|
<input
|
||||||
type="text"
|
type="text"
|
||||||
class="form-control"
|
class="form-control"
|
|
@ -686,7 +686,7 @@ function deleteFromDatabaseByCallsign(callsign) {
|
||||||
export function newBeaconReceived(obj) {
|
export function newBeaconReceived(obj) {
|
||||||
/*
|
/*
|
||||||
{
|
{
|
||||||
"freedata": "tnc-message",
|
"freedata": "modem-message",
|
||||||
"beacon": "received",
|
"beacon": "received",
|
||||||
"uuid": "12741312-3dbb-4a53-b0cc-100f6c930ab8",
|
"uuid": "12741312-3dbb-4a53-b0cc-100f6c930ab8",
|
||||||
"timestamp": 1696076869,
|
"timestamp": 1696076869,
|
||||||
|
@ -740,7 +740,7 @@ export function newMessageReceived(message, protocol) {
|
||||||
|
|
||||||
PROTOCOL
|
PROTOCOL
|
||||||
{
|
{
|
||||||
"freedata": "tnc-message",
|
"freedata": "modem-message",
|
||||||
"arq": "transmission",
|
"arq": "transmission",
|
||||||
"status": "received",
|
"status": "received",
|
||||||
"uuid": "5a3caa57-7feb-4436-853d-e341b085350f",
|
"uuid": "5a3caa57-7feb-4436-853d-e341b085350f",
|
||||||
|
|
|
@ -51,7 +51,7 @@ daemon.on("error", function (err) {
|
||||||
if (daemonShowConnectStateError == 1) {
|
if (daemonShowConnectStateError == 1) {
|
||||||
console.log("daemon connection error");
|
console.log("daemon connection error");
|
||||||
console.log("Make sure the daemon is started.");
|
console.log("Make sure the daemon is started.");
|
||||||
console.log('Run "python daemon.py" in the tnc directory.');
|
console.log('Run "python daemon.py" in the modem directory.');
|
||||||
|
|
||||||
daemonShowConnectStateError = 0;
|
daemonShowConnectStateError = 0;
|
||||||
}
|
}
|
||||||
|
@ -65,8 +65,8 @@ daemon.on("error", function (err) {
|
||||||
|
|
||||||
/*
|
/*
|
||||||
client.on('close', function(data) {
|
client.on('close', function(data) {
|
||||||
console.log(' TNC connection closed');
|
console.log(' Modem connection closed');
|
||||||
setTimeout(connectTNC, 2000)
|
setTimeout(connectModem, 2000)
|
||||||
let Data = {
|
let Data = {
|
||||||
daemon_connection: daemon.readyState,
|
daemon_connection: daemon.readyState,
|
||||||
};
|
};
|
||||||
|
@ -156,8 +156,8 @@ daemon.on("data", function (socketdata) {
|
||||||
audioStore.outputDevices = data["output_devices"];
|
audioStore.outputDevices = data["output_devices"];
|
||||||
settings.serial_devices = data["serial_devices"];
|
settings.serial_devices = data["serial_devices"];
|
||||||
state.python_version = data["python_version"]
|
state.python_version = data["python_version"]
|
||||||
state.tnc_version = data["version"]
|
state.modem_version = data["version"]
|
||||||
state.tnc_running_state = data["daemon_state"][0]["status"];
|
state.modem_running_state = data["daemon_state"][0]["status"];
|
||||||
state.rigctld_started = data["rigctld_state"][0]["status"];
|
state.rigctld_started = data["rigctld_state"][0]["status"];
|
||||||
//state.rigctld_process = data["daemon_state"][0]["rigctld_process"];
|
//state.rigctld_process = data["daemon_state"][0]["rigctld_process"];
|
||||||
|
|
||||||
|
@ -193,12 +193,12 @@ function getDaemonState() {
|
||||||
writeDaemonCommand(command);
|
writeDaemonCommand(command);
|
||||||
}
|
}
|
||||||
|
|
||||||
// START TNC
|
// START Modem
|
||||||
// ` `== multi line string
|
// ` `== multi line string
|
||||||
export function startTNC() {
|
export function startModem() {
|
||||||
var json_command = JSON.stringify({
|
var json_command = JSON.stringify({
|
||||||
type: "set",
|
type: "set",
|
||||||
command: "start_tnc",
|
command: "start_modem",
|
||||||
parameter: [
|
parameter: [
|
||||||
{
|
{
|
||||||
mycall: settings.mycall,
|
mycall: settings.mycall,
|
||||||
|
@ -240,10 +240,10 @@ export function startTNC() {
|
||||||
writeDaemonCommand(json_command);
|
writeDaemonCommand(json_command);
|
||||||
}
|
}
|
||||||
|
|
||||||
// STOP TNC
|
// STOP Modem
|
||||||
//exports.stopTNC = function () {
|
//exports.stopModem = function () {
|
||||||
export function stopTNC() {
|
export function stopModem() {
|
||||||
var command = '{"type" : "set", "command": "stop_tnc" , "parameter": "---" }';
|
var command = '{"type" : "set", "command": "stop_modem" , "parameter": "---" }';
|
||||||
writeDaemonCommand(command);
|
writeDaemonCommand(command);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -61,8 +61,8 @@ if (!fs.existsSync(configFolder)) {
|
||||||
// create config file if not exists with defaults
|
// create config file if not exists with defaults
|
||||||
const configDefaultSettings =
|
const configDefaultSettings =
|
||||||
'{\
|
'{\
|
||||||
"tnc_host": "127.0.0.1",\
|
"modem_host": "127.0.0.1",\
|
||||||
"tnc_port": 3000,\
|
"modem_port": 3000,\
|
||||||
"daemon_host": "127.0.0.1",\
|
"daemon_host": "127.0.0.1",\
|
||||||
"daemon_port": 3001,\
|
"daemon_port": 3001,\
|
||||||
"mycall": "AA0AA",\
|
"mycall": "AA0AA",\
|
||||||
|
|
|
@ -39,24 +39,24 @@ var rxBufferLengthGui = 0;
|
||||||
//var rxMsgBufferLengthTnc = 0;
|
//var rxMsgBufferLengthTnc = 0;
|
||||||
//var rxMsgBufferLengthGui = 0;
|
//var rxMsgBufferLengthGui = 0;
|
||||||
|
|
||||||
// global to keep track of TNC connection error emissions
|
// global to keep track of Modem connection error emissions
|
||||||
var tncShowConnectStateError = 1;
|
var modemShowConnectStateError = 1;
|
||||||
|
|
||||||
// network connection Timeout
|
// network connection Timeout
|
||||||
setTimeout(connectTNC, 2000);
|
setTimeout(connectModem, 2000);
|
||||||
|
|
||||||
function connectTNC() {
|
function connectModem() {
|
||||||
//exports.connectTNC = function(){
|
//exports.connectModem = function(){
|
||||||
//console.log('connecting to TNC...')
|
//console.log('connecting to Modem...')
|
||||||
|
|
||||||
//clear message buffer after reconnecting or initial connection
|
//clear message buffer after reconnecting or initial connection
|
||||||
socketchunk = "";
|
socketchunk = "";
|
||||||
|
|
||||||
client.connect(settings.tnc_port, settings.tnc_host);
|
client.connect(settings.modem_port, settings.modem_host);
|
||||||
}
|
}
|
||||||
|
|
||||||
client.on("connect", function (data) {
|
client.on("connect", function (data) {
|
||||||
console.log("TNC connection established");
|
console.log("Modem connection established");
|
||||||
|
|
||||||
stateStore.busy_state = "-";
|
stateStore.busy_state = "-";
|
||||||
stateStore.arq_state = "-";
|
stateStore.arq_state = "-";
|
||||||
|
@ -66,15 +66,15 @@ client.on("connect", function (data) {
|
||||||
stateStore.dbfs_level = 0;
|
stateStore.dbfs_level = 0;
|
||||||
stateStore.updateTncState(client.readyState);
|
stateStore.updateTncState(client.readyState);
|
||||||
|
|
||||||
tncShowConnectStateError = 1;
|
modemShowConnectStateError = 1;
|
||||||
});
|
});
|
||||||
|
|
||||||
client.on("error", function (data) {
|
client.on("error", function (data) {
|
||||||
if (tncShowConnectStateError == 1) {
|
if (modemShowConnectStateError == 1) {
|
||||||
console.log("TNC connection error");
|
console.log("Modem connection error");
|
||||||
tncShowConnectStateError = 0;
|
modemShowConnectStateError = 0;
|
||||||
}
|
}
|
||||||
setTimeout(connectTNC, 500);
|
setTimeout(connectModem, 500);
|
||||||
client.destroy();
|
client.destroy();
|
||||||
stateStore.busy_state = "-";
|
stateStore.busy_state = "-";
|
||||||
stateStore.arq_state = "-";
|
stateStore.arq_state = "-";
|
||||||
|
@ -87,13 +87,13 @@ client.on("error", function (data) {
|
||||||
|
|
||||||
/*
|
/*
|
||||||
client.on('close', function(data) {
|
client.on('close', function(data) {
|
||||||
console.log(' TNC connection closed');
|
console.log(' Modem connection closed');
|
||||||
setTimeout(connectTNC, 2000)
|
setTimeout(connectModem, 2000)
|
||||||
});
|
});
|
||||||
*/
|
*/
|
||||||
|
|
||||||
client.on("end", function (data) {
|
client.on("end", function (data) {
|
||||||
console.log("TNC connection ended");
|
console.log("Modem connection ended");
|
||||||
stateStore.busy_state = "-";
|
stateStore.busy_state = "-";
|
||||||
stateStore.arq_state = "-";
|
stateStore.arq_state = "-";
|
||||||
stateStore.frequency = "-";
|
stateStore.frequency = "-";
|
||||||
|
@ -103,7 +103,7 @@ client.on("end", function (data) {
|
||||||
stateStore.updateTncState(client.readyState);
|
stateStore.updateTncState(client.readyState);
|
||||||
client.destroy();
|
client.destroy();
|
||||||
|
|
||||||
setTimeout(connectTNC, 500);
|
setTimeout(connectModem, 500);
|
||||||
});
|
});
|
||||||
|
|
||||||
function writeTncCommand(command) {
|
function writeTncCommand(command) {
|
||||||
|
@ -116,11 +116,11 @@ function writeTncCommand(command) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (client.readyState == "closed") {
|
if (client.readyState == "closed") {
|
||||||
console.log("TNC SOCKET CONNECTION CLOSED!");
|
console.log("Modem SOCKET CONNECTION CLOSED!");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (client.readyState == "opening") {
|
if (client.readyState == "opening") {
|
||||||
console.log("connecting to TNC...");
|
console.log("connecting to Modem...");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -168,14 +168,14 @@ client.on("data", function (socketdata) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//console.log(data)
|
//console.log(data)
|
||||||
if (data["command"] == "tnc_state") {
|
if (data["command"] == "modem_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.frequency = data["frequency"];
|
||||||
stateStore.busy_state = data["tnc_state"];
|
stateStore.busy_state = data["modem_state"];
|
||||||
stateStore.arq_state = data["arq_state"];
|
stateStore.arq_state = data["arq_state"];
|
||||||
stateStore.mode = data["mode"];
|
stateStore.mode = data["mode"];
|
||||||
stateStore.bandwidth = data["bandwidth"];
|
stateStore.bandwidth = data["bandwidth"];
|
||||||
|
@ -266,12 +266,12 @@ client.on("data", function (socketdata) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ----------- catch tnc messages START -----------
|
// ----------- catch modem messages START -----------
|
||||||
//init message variable
|
//init message variable
|
||||||
var message = "";
|
var message = "";
|
||||||
if (data["freedata"] == "tnc-message") {
|
if (data["freedata"] == "modem-message") {
|
||||||
// break early if we received a dummy callsign
|
// break early if we received a dummy callsign
|
||||||
// thats a kind of hotfix, as long as the tnc isnt handling this better
|
// thats a kind of hotfix, as long as the modem isnt handling this better
|
||||||
if (data["dxcallsign"] == "AA0AA-0" || data["dxcallsign"] == "ZZ9YY-0") {
|
if (data["dxcallsign"] == "AA0AA-0" || data["dxcallsign"] == "ZZ9YY-0") {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -369,7 +369,7 @@ client.on("data", function (socketdata) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ARQ SESSION && freedata == tnc-message
|
// ARQ SESSION && freedata == modem-message
|
||||||
if (data["arq"] == "session") {
|
if (data["arq"] == "session") {
|
||||||
switch (data["status"]) {
|
switch (data["status"]) {
|
||||||
case "connecting":
|
case "connecting":
|
||||||
|
@ -393,7 +393,7 @@ client.on("data", function (socketdata) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// ARQ TRANSMISSION && freedata == tnc-message
|
// ARQ TRANSMISSION && freedata == modem-message
|
||||||
if (data["arq"] == "transmission") {
|
if (data["arq"] == "transmission") {
|
||||||
switch (data["status"]) {
|
switch (data["status"]) {
|
||||||
case "opened":
|
case "opened":
|
||||||
|
@ -499,10 +499,10 @@ function hexToBytes(hex) {
|
||||||
return bytes;
|
return bytes;
|
||||||
}
|
}
|
||||||
|
|
||||||
//Get TNC State
|
//Get Modem State
|
||||||
//exports.getTncState = function () {
|
//exports.getTncState = function () {
|
||||||
function getTncState() {
|
function getTncState() {
|
||||||
var command = '{"type" : "get", "command" : "tnc_state"}';
|
var command = '{"type" : "get", "command" : "modem_state"}';
|
||||||
writeTncCommand(command);
|
writeTncCommand(command);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -636,7 +636,7 @@ let data_with_attachment =
|
||||||
data_with_attachment,
|
data_with_attachment,
|
||||||
);
|
);
|
||||||
|
|
||||||
// TODO: REMOVE mode and frames from TNC!
|
// TODO: REMOVE mode and frames from Modem!
|
||||||
var mode = 255;
|
var mode = 255;
|
||||||
var frames = 5;
|
var frames = 5;
|
||||||
|
|
||||||
|
|
|
@ -16,6 +16,8 @@ import 'bootstrap-icons/font/bootstrap-icons.css'
|
||||||
// Import our custom CSS
|
// Import our custom CSS
|
||||||
//import './scss/styles.scss'
|
//import './scss/styles.scss'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
import App from './App.vue'
|
import App from './App.vue'
|
||||||
const app = createApp(App)
|
const app = createApp(App)
|
||||||
//.mount('#app').$nextTick(() => postMessage({ payload: 'removeLoading' }, '*'))
|
//.mount('#app').$nextTick(() => postMessage({ payload: 'removeLoading' }, '*'))
|
||||||
|
|
|
@ -1,3 +1,2 @@
|
||||||
// Import all of Bootstrap's CSS
|
// Import all of Bootstrap's CSS
|
||||||
@import "bootstrap/scss/bootstrap";
|
@import "bootstrap/scss/bootstrap";
|
||||||
|
|
|
@ -7,10 +7,10 @@ export const useSettingsStore = defineStore("settingsStore", () => {
|
||||||
var rx_audio = ref()
|
var rx_audio = ref()
|
||||||
|
|
||||||
// network
|
// network
|
||||||
var tnc_host = ref("127.0.0.1");
|
var modem_host = ref("127.0.0.1");
|
||||||
var tnc_port = ref(3000);
|
var modem_port = ref(3000);
|
||||||
var daemon_host = ref(tnc_host.value);
|
var daemon_host = ref(modem_host.value);
|
||||||
var daemon_port = ref(tnc_port.value + 1);
|
var daemon_port = ref(modem_port.value + 1);
|
||||||
|
|
||||||
// app
|
// app
|
||||||
var screen_height = ref(430);
|
var screen_height = ref(430);
|
||||||
|
@ -56,7 +56,7 @@ export const useSettingsStore = defineStore("settingsStore", () => {
|
||||||
var tci_ip = ref("127.0.0.1");
|
var tci_ip = ref("127.0.0.1");
|
||||||
var tci_port = ref(50001);
|
var tci_port = ref(50001);
|
||||||
|
|
||||||
//tnc
|
//modem
|
||||||
var spectrum = ref("waterfall");
|
var spectrum = ref("waterfall");
|
||||||
var enable_scatter = ref("False");
|
var enable_scatter = ref("False");
|
||||||
var enable_fft = ref("False");
|
var enable_fft = ref("False");
|
||||||
|
@ -88,10 +88,10 @@ export const useSettingsStore = defineStore("settingsStore", () => {
|
||||||
|
|
||||||
function getJSON() {
|
function getJSON() {
|
||||||
var config_export = {
|
var config_export = {
|
||||||
tnc_host: tnc_host.value,
|
modem_host: modem_host.value,
|
||||||
tnc_port: tnc_port.value,
|
modem_port: modem_port.value,
|
||||||
daemon_host: tnc_host.value,
|
daemon_host: modem_host.value,
|
||||||
daemon_port: (parseInt(tnc_port.value) + 1).toString(),
|
daemon_port: (parseInt(modem_port.value) + 1).toString(),
|
||||||
mycall: mycall.value,
|
mycall: mycall.value,
|
||||||
myssid: myssid.value,
|
myssid: myssid.value,
|
||||||
mygrid: mygrid.value,
|
mygrid: mygrid.value,
|
||||||
|
@ -152,8 +152,8 @@ export const useSettingsStore = defineStore("settingsStore", () => {
|
||||||
}
|
}
|
||||||
|
|
||||||
return {
|
return {
|
||||||
tnc_host,
|
modem_host,
|
||||||
tnc_port,
|
modem_port,
|
||||||
daemon_host,
|
daemon_host,
|
||||||
daemon_port,
|
daemon_port,
|
||||||
screen_height,
|
screen_height,
|
||||||
|
|
|
@ -23,9 +23,9 @@ export const useStateStore = defineStore("stateStore", () => {
|
||||||
var s_meter_strength_percent = ref(0);
|
var s_meter_strength_percent = ref(0);
|
||||||
var s_meter_strength_raw = ref(0);
|
var s_meter_strength_raw = ref(0);
|
||||||
|
|
||||||
var tnc_connection = ref("disconnected");
|
var modem_connection = ref("disconnected");
|
||||||
var tncStartCount = ref(0);
|
var modemStartCount = ref(0);
|
||||||
var tnc_running_state = ref("--------");
|
var modem_running_state = ref("--------");
|
||||||
|
|
||||||
var arq_total_bytes = ref(0);
|
var arq_total_bytes = ref(0);
|
||||||
var arq_transmission_percent = ref(0);
|
var arq_transmission_percent = ref(0);
|
||||||
|
@ -57,7 +57,7 @@ export const useStateStore = defineStore("stateStore", () => {
|
||||||
var rigctld_process = ref();
|
var rigctld_process = ref();
|
||||||
|
|
||||||
var python_version = ref();
|
var python_version = ref();
|
||||||
var tnc_version = ref();
|
var modem_version = ref();
|
||||||
|
|
||||||
|
|
||||||
function getChannelBusySlotState(slot){
|
function getChannelBusySlotState(slot){
|
||||||
|
@ -79,9 +79,9 @@ function getChannelBusySlotState(slot){
|
||||||
|
|
||||||
|
|
||||||
function updateTncState(state) {
|
function updateTncState(state) {
|
||||||
tnc_connection.value = state;
|
modem_connection.value = state;
|
||||||
|
|
||||||
if (tnc_connection.value == "open") {
|
if (modem_connection.value == "open") {
|
||||||
// collapse settings screen
|
// collapse settings screen
|
||||||
var collapseFirstRow = new bootstrap.Collapse(
|
var collapseFirstRow = new bootstrap.Collapse(
|
||||||
document.getElementById("collapseFirstRow"),
|
document.getElementById("collapseFirstRow"),
|
||||||
|
@ -108,7 +108,7 @@ function getChannelBusySlotState(slot){
|
||||||
//set_CPU_mode();
|
//set_CPU_mode();
|
||||||
|
|
||||||
//GUI will auto connect to TNC if already running, if that is the case increment start count if 0
|
//GUI will auto connect to TNC if already running, if that is the case increment start count if 0
|
||||||
if (tncStartCount.value == 0) tncStartCount.value++;
|
if (modemStartCount.value == 0) modemStartCount.value++;
|
||||||
} else {
|
} else {
|
||||||
// collapse settings screen
|
// collapse settings screen
|
||||||
var collapseFirstRow = new bootstrap.Collapse(
|
var collapseFirstRow = new bootstrap.Collapse(
|
||||||
|
@ -166,7 +166,7 @@ function getChannelBusySlotState(slot){
|
||||||
arq_seconds_until_finish,
|
arq_seconds_until_finish,
|
||||||
arq_seconds_until_timeout,
|
arq_seconds_until_timeout,
|
||||||
arq_seconds_until_timeout_percent,
|
arq_seconds_until_timeout_percent,
|
||||||
tnc_running_state,
|
modem_running_state,
|
||||||
arq_session_state,
|
arq_session_state,
|
||||||
is_codec2_traffic,
|
is_codec2_traffic,
|
||||||
rf_level,
|
rf_level,
|
||||||
|
@ -175,6 +175,6 @@ function getChannelBusySlotState(slot){
|
||||||
rigctld_started,
|
rigctld_started,
|
||||||
rigctld_process,
|
rigctld_process,
|
||||||
python_version,
|
python_version,
|
||||||
tnc_version
|
modem_version
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
|
@ -110,3 +110,8 @@ https://stackoverflow.com/a/9622873
|
||||||
.modal-backdrop {
|
.modal-backdrop {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.modal-backdrop.in {
|
||||||
|
filter: alpha(opacity=10);
|
||||||
|
opacity: .1
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue